Hasso-Plattner-Institut
Hasso-Plattner-Institut
  
Login
 

Regina Hebig

Evolution of Model-Driven Engineering Settings in Practice

Um die steigende Komplexitat von Softwaresystemen beherrschen zu konnen, werden heutzutage unterschiedlichste Techniken gemeinsam eingesetzt. Beispiele sind, Design Pattern, Serviceorientierte Architekturen, Softwareentwicklungsprozesse oder modellgetriebene Entwicklung (MDE). Ziel dabei ist die Erhöhung der Produktivitat, so dass Entwicklungsdauer und Qualität stabil bleiben können. Während hoch entwickelte Softwareentwicklungsprozesse heute schon standardmäßig genutzt werden, fangen Firmen gerade erst an MDE einzusetzen.

Jedoch zeigen Studien, dass der erho ffte Erfolg von MDE nicht jedes Mal eintritt. So scheint es, dass noch kein ausreichendes Verständnis dafür existiert, inwiefern MDE auch Nachteile fur die Produktivität bergen kann. Zusätzlich ist bei der Kombination von unterschiedlichen Techniken damit zu rechnen, dass die erreichten E ffekte sich gegenseitig negieren anstatt sich zu ergänzen. Hier entsteht die Frage wie MDE und andere Techniken, wie Softwareentwicklungsprozesse, zusammenwirken. Beide Aspekte, der direkte Einfluss auf Produktivität und die Wechselwirkung mit anderen Techniken, müssen aber verstanden werden, um den Risiken fur den Produktivitatseinfluss von MDE zu identifi zieren. Außerdem, muss auch die Generalisierbarkeit dieser Aspekte untersucht werden. Das betriff t die Fragen, ob der Produktivitatseinfluss bei jedem Einsatz von MDE gleich ist und ob der Produktivitatseinfluss über die Zeit stabil bleibt. Beide Fragen sind entscheidend, will man geeignete Risikobehandlung ermöglichen oder künftige Studien zum Erfolg von MDE planen.

Diese Dissertation widmet sich der genannten Fragen. Dafür wird zuerst der Begri ff "MDE Setting" eingeführt, um eine di fferenzierte Betrachtung von MDE-Verwendungen zu ermoglichen. Ein MDE Setting ist dabei der technische Aufbau, inklusive manueller und automatischer Aktivitäten, Artefakten, Sprachen und Werkzeugen. Welche Produktivitatseinflüusse von MDE Settings möglich sind, wird in der Dissertation mit Fokus auf Änderbarkeit und die Wechselwirkung mit Softwareentwicklungsprozessen betrachtet. Dafür wird einerseits eine Taxonomie von "Changeability Concerns" (potentiell betroff ene Aspekte von Änderbarkeit) vorgestellt. Zusätzlich werden drei "MDE Traits" (Charakteristika von MDE Settings, die unterschiedlich ausgeprägt sein können) identifi ziert. Es wird untersucht welche Ausprägungen dieser MDE Traits Einfluss auf Softwareentwicklungsprozesse haben können. Um die Erfassung und Bewertung dieser Einflüsse zu ermöglichen, wird die Software Manufaktur Modell Sprache eingeführt. Diese Prozessmodellierungssprache ermoglicht eine Beschreibung der Veränderungen von Artefaktbeziehungen während der Anwendung von Aktivitaten (z.B. Codegenerierung). Weiter werden auf Basis dieser Modelle Analysetechniken eingeführt. Diese Analysetechniken erlauben es, Risiken für bestimmte Changeability Concerns aufzudecken sowie die Ausprägung von MDE Traits zu erfassen (und damit den Einfluss auf Softwareentwicklungsprozesse).

Um die Generalisierbarkeit der Ergebnisse zu studieren, wurden im Rahmen der Arbeit mehrere MDE Settings aus der Praxis sowie teilweise deren Evolutionshistorien erhoben. Daran wird gezeigt, dass MDE Settings sich in einem breiten Spektrum von Einflüssen auf Änderbarkeit und Prozesse bewegen. So ist es weder selten, dass ein MDE Setting neutral fur Prozesse ist, noch, dass ein MDE Setting Einschränkungen für einen Prozess impliziert. Ähnlich breit gestreut ist der Einfluss auf die Änderbarkeit. Zusätzlich, wird diskutiert, inwiefern unterschiedliche Evolutionstypen den Einfluss eines MDE Settings auf Änderbarkeit und Prozesse verändern konnen. Diese Diskussion führt zur Identifikation der "strukturellen Evolution", die sich stark auf die genannten Charakteristika eines MDE Settings auswirken kann. Mithilfe der erfassten MDE Settings wird gezeigt, dass strukturelle Evolution in der Praxis üblich ist. Schließlich werden Beispiele aufgedeckt, bei denen strukturelle Evolutionsschritte tatsächlich zu einer Charakteristik des betreff enden MDE Settings geführt haben. Einerseits bestärkt die ermittelte Vielfalt den Bedarf nach Analysetechniken, wie sie in dieser Dissertation eingeführt werden. Zum Anderen erscheint es nun, dass Evolution zumindest zum Teil die unterschiedlichen Ausprägungen von MDE Settings erklärt.

Zusammenfassend wird studiert, wie MDE Settings und deren Evolution in der Praxis ausgeprägt sind. Als Ergebnis werden Techniken zur Identifikation von Risiken fur Produktivitatseinflüsse bereitgestellt, um den Einsatz von MDE Settings zu unterstützen.