Die folgenden Bausteine konnten mit freundlicher Unterstützung von SIGS-DATACOM GmbH zur Verfügung gestellt werden. Der Artikel "Prozessauswirkungen von MDSD" erschien in der Ausgabe 1/2004 der Zeitschrift OBJEKTspektrum.
Im Vergleich zu herkömmlicher Softwareentwicklung stellt sich das Model-Driven Software Development (MDSD) auf den ersten Blick als grundlegend neues Paradigma dar. Bei näherem Hinsehen handelt es sich allerdings eher um eine neue Bewertung von Prioritäten. Ganz wie beim Übergang von Assemblern zu Kompilern liegt das Hauptakzeptanzproblem oft nicht auf der technologischen, sondern vielmehr auf der kulturellen Seite. Es ist also nicht verwunderlich, dass sich modellgetriebene Verfahren nicht über Nacht auf breiter Front durchsetzen. Veränderungen an Softwareentwicklungsprozessen müssen sorgfältig eingeführt werden, da das weitere Umfeld aller an der Softwareentwicklung Beteiligten betroffen ist und es nicht einfach um das Erlernen von neuen APIs oder einer neuen Sprachsyntax geht. Die folgenden Bausteine beschreiben, wie sich modellgetriebene Softwareentwicklung von traditioneller iterativer Softwareentwicklung unterscheidet.
Frameworks sind in MDSD von zentraler Bedeutung, weshalb es sich lohnt, erst einmal die Benutzung und Entwicklung von Frameworks zu untersuchen. Hier gilt die Lektion Small is Beautiful auch für modellgetriebene Ansätze.
In MDSD besteht der Grundansatz in der manuellen Entwicklung einer konkreten Referenzimplementierung, welche alle architektonischen Schichten umfasst und sehr schmal gehalten werden kann. Eine solche Referenzimplementierung sollte bereits die Anbindung an geeignete kommerzielle oder Opensource-Frameworks enthalten. Dann kann der notwendige Frameworkanbindungscode abstrahiert und in Form von Codetemplates festgehalten werden. Dieser Schritt erhöht die Referenzimplementierungskosten gegenüber normalem Proof Of Concept-Prototyping nur um etwa 15%-25%. Wenn man sich zum Beispiel überlegt, wie viel Quellcode in typischen J2EE-Anwendungen aus repetitivem Frameworkanbindungscode besteht, dann sieht man schnell, warum der Einsatz von MDSD viel lästige Arbeit ersparen kann.