16.12.2012 Aufrufe

Architekturzentrierte Modellgetriebene Softwareentwicklung

Architekturzentrierte Modellgetriebene Softwareentwicklung

Architekturzentrierte Modellgetriebene Softwareentwicklung

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

1 Einleitung<br />

In den vergangenen zwei Jahrzehnten hat Software eine immer stärkere Be-<br />

deutung in zahlreichen Geschäftsprozessen und alltäglichen Informationsflüssen<br />

erlangt. Sie stellt gewissermaßen, das Fundament für diese Abläufe dar. Software<br />

ist somit zu einem bedeutenden Bestandteil vieler Unternehmen geworden.<br />

Dem gegenüber steht eine Vielzahl an Projekten bei denen sowohl die Budgets<br />

überschritten als auch die Designziele verfehlt werden. Viele Hersteller sind<br />

so mit ständig wechselnden Implementierungstechnologien beschäftigt, dass<br />

keine Zeit für Produktivitätsüberlegungen und Risikominimierung bleibt. Weder<br />

schwergewichtige dokumentenlastige Entwicklungsprozesse noch CASE-Tools 1<br />

können/konnten Abhilfe schaffen.<br />

In den letzten Jahren rückten aus diesen Gründen sowohl agile Entwicklungs-<br />

prozesse als auch die Bedeutung von Modellen für das Software Engineering<br />

vermehrt ins Zentrum des Interesses. Die steigende Bedeutung von Modellen ist<br />

nicht zuletzt auf die Definition und Verbreitung der Unified Modeling Language<br />

kurz UML zurückzuführen. Es gibt mittlerweile eine Vielzahl an Modellierungs-<br />

tools, die in der Lage sind aus dem Modell einer Anwendung Teile der späteren<br />

Implementierung zu generieren. Problematisch in diesem Zusammenhang ist<br />

der Umstand, dass die Domäne in der die Anwendung angesiedelt ist, keinerlei<br />

Auswirkung auf den generierten Sourcecode hat. Es wird auf Basis eines ” One-<br />

Size-Fits-All!“-Ansatzes gearbeitet. Der generierte Code muss somit für alle<br />

Eventualitäten und Einsatzbereiche geeignet sein. Das führt leider oft zu einer<br />

Unzulänglichkeit des Generats und erfordert viel manuelle Zusatzarbeit um die<br />

Lücke zwischen Generat und Zielplattform zu schließen. Zudem sind die meisten<br />

dieser Tools nicht in der Lage Designänderungen iterativ auf einen bestehenden<br />

Quellcode zu übertragen. Letzten Endes nehmen die Modelle hier nur den Status<br />

einer Dokumentation ein und fallen auf Grund der rein gedanklichen Verbindung<br />

zwischen Modell und Sourcecode oftmals dem Zeitdruck zum Opfer.<br />

Einen anderen Weg gehen modellgetriebene Ansätze wie Model Driven Software<br />

Development kurz MDSD oder Model Driven Architecture kurz MDA. Hier<br />

1 Computer Aided Software Engineering-Tools unterstützen Softwareentwickler bei Planung<br />

Design und Umsetzung einer Anwendung (siehe auch [cas06]).<br />

3

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!