Suchen

Das Potenzial von Model-driven Software Development (MDSD) ausschöpfen Modellgetriebene Entwicklung beschleunigt agile Software-Projekte

Autor / Redakteur: Bernd Linowski * / Florian Karlstetter

Software-Projekte sollen möglichst schnell und effizient ablaufen. Erreichen lässt sich das, wenn die Prinzipien der "Lean Production" aus der Fertigungsindustrie zum Zuge kommen. Diese Grundsätze lassen sich auch bei "Model-driven Software Development" verwenden. Dadurch lässt sich MDSD in der agilen Software-Entwicklung einsetzen.

Firmen zum Thema

Bernd Linowski, Architekturberater bei Tata Consultancy Services (TCS).
Bernd Linowski, Architekturberater bei Tata Consultancy Services (TCS).

Schlanke Produktionsprozesse ("Lean Production") haben ihren Ursprung im Toyota Production System. Statt große Mengen von Fahrzeugen auf Halde zu produzieren, stellt Toyota nur so viele Autos her, wie nachgefragt werden ("Just-in-Time"). Um die Kosten niedrig zu halten, reduziert der Hersteller zudem Abfall jeder Art, und eine durchgängig hohe Qualität verringert den Ausschuss. Außerdem hält Toyota seine Mitarbeiter dazu an, ständig zur Verbesserung des Produktionsprozesses beizutragen.

Lean Production lässt sich auch auf die Software-Entwicklung übertragen, auch auf Model-driven Software Development (MDSD). Allerdings gibt es Unterschiede zwischen industrieller Produktion und Software-Entwicklung: Letztere ist ein Designprozess, der Informationen produziert, die nahezu ohne weitere Kosten repliziert werden können. Dies verschiebt den Fokus vom Produktionsprozess hin zu einem Produktdesignprozess. Allerdings hat MDSD eine Sonderstellung: Es legt höheres Gewicht auf Produktionsprozesse und das damit verbundene Prozessdesign.

Bildergalerie

So sind Sprach- oder Metamodell-Design und das Entwickeln von Transformationen, welche die Artefakte aus den entsprechenden Modellen generieren, ein wichtiger Bestandteil von MDSD. Gleiches gilt für das Erstellen von Workflows, mit denen sich Artefakte erzeugen und in einen Build-Prozess einbinden lassen. MDSD ähnelt somit industriellen Produktionsprozessen. Dadurch können auch die negativen Eigenschaften solcher Prozesse auftreten, etwa hohe Anfangsinvestitionen und die Tatsache, dass sich Prozesse im Nachhinein schwer ändern lassen.

Model-driven Software Development agil betreiben

Prinzipien der "Lean Production" werden bereits in der Software-Entwicklung angewendet, etwa bei agilen Entwicklungsmethoden wie Scrum oder XP. MDSD gilt im Vergleich dazu als schwerfällig. Um der wachsenden Nachfrage nach agiler Entwicklung gerecht zu werden, muss MDSD daher selbst agil betrieben werden.

Im Folgenden werden folgende Prinzipen von Lean Production auf ihre Tauglichkeit für MDSD untersucht:

  • Vermeidung von Abfall
  • schnelle Entwicklung
  • inhärente Qualität
  • Gewinnen von Wissen
  • Optimierung

weiter mit den Prinzipien von Lean Production und ihre Tauglichkeit für MDSD

(ID:31342380)