Steigern Sie die Produktivität um das 10-fache!
Der
größte Produktivitätssprung, den Softwareentwickler jemals erlebt haben, war
der Schritt von Assembler zu Programmiersprachen der dritten Generation vor
einigen Jahrzehnten. Seit damals hatten neuere Programmiersprachen nur noch
wenig Auswirkungen auf die Produktivität, da sich das Abstraktionsniveau nicht
mehr signifikant erhöht hat. So ist beispielsweise die durchschnittliche
Produktivität in Java nur 20% besser als in BASIC (Quelle: Software
Productivity Research).
Auch herkömmliche Modellierungssprachen, wie z. B. die UML, haben an dieser Situation nicht wirklich etwas geändert, da sich die zentralen Modelle im Wesentlichen auf demselben Abstraktionsniveau bewegen wie die unterstützten Programmiersprachen. Die Vorteile der visuellen Modellierung werden wieder durch die Ressourcen aufgehoben, die man verbraucht, um - bei nur halb-automatischer Unterstützung - alle Modelle und den Code synchron zu halten. In der Praxis werden Teile des Codes in den statischen Modellen dupliziert und der Rest des Designs - Benutzersichten, dynamisches Verhalten, Interaktionen usw. - und des Codes werden von Hand gepflegt.
Domänenspezifische Methoden erhöhen den Abstraktionsgrad ganz wesentlich und engen gleichzeitig den Design-Space ein: oft auf eine Produktreihe für ein einzelnes Unternehmen. Mit einer domänenspezifischen Sprache muss ein Problem nur einmal gelöst werden, indem die Lösung unter Verwendung bekannter Domänenkonzepte visuell modelliert wird. Mit domänenspezifischen Generatoren werden aus diesen High-Level-Spezifikationen die Endprodukte automatisch erzeugt. Es müssen keine fehleranfälligen Abbildungen mehr von Domänen- auf Design- und auf Programmiersprachen-Konzepte vorgenommen werden. Erfahrungen haben gezeigt, dass dieser Ansatz fünf bis zehn Mal schneller ist als traditionelle Vorgehensweisen. Nachdem sich über Jahrzehnte nicht viel getan hat, ist jetzt erneut ein echter Produktivitätssprung möglich!
