Einsatz von MetaMeta-Modellen zur Transformationen von Meta-Modellen (Projektbeispiel)

Der Einsatz modellbasierter Technologien ermöglicht weitreichende Optimierungsprotentiale.
Zwischenzeitlich haben modellbasierte System unr Metatechnologien Einzug in die IT-Welt gehalten und UML als Beschreibungssprache hat sich zwischenzeitlich zu einem Standard entwickelt.
Dass die Potentiale modellbasierter Entwicklungen bei weitem noch nicht ausgeschöpft werden sollder nachfolgende Artikel aufzeigen.

Die konsequente Weiterentwicklung in diesem Umfeld sind sicherlich MetaMeta-Modelle. Nur was ist das eigentlich?
Zugegebenermassen ist dies ein Kunstwort, aber prinzipiell sind MetaMeta-Modell einfach eine weitere Abstraktionsebene die auf Meta-Modellen aufsetzen. Einfacher gesagt ... ein MetaMeta-Modell ist das abstrakte Modell eines Metamodelles. Es stellt sich dabei natürlich die Frage was die Einsatzbereiche solcher MetaMeta-Modelle sind.
Ein Beispiel sagt meist mehr als 1000 Worte und ein reales Beispiel um so mehr. Ich möchte Ihnen hier ein interessantes Projekt vorstellen, bei dem durch einen innovativen Ansatz und dem Einsatz von MetaMeta-Modellierung die Projektrisiken fast vollständig vermieden werden konnten und gleichzeitig die Aufwendungen um mehr als 80% reduziert werden konnten.


Das Projekt

Gegeben (IST)
Eine große Gesellschaft im Finanzbereich erstellte ihre Softwarekomponenten auf Basis eines Metamodelles (UML) in Paradigm Plus. Der Aufwand für die Entwicklung der Business-Modelle betrug bereits mehrere zig-Mannjahre und auch die aus den Modellen generierten Java-Codes hatten einen Umfang von weit mehr als 100MB.
Hinweis: Paradigm Plus war zu diesem Zeitpunkt quasi das defacto Standard Modellierungswerkzeug mit bis zu 80% Weltmarktanteil.

Anforderung
Aus strategischen Gründen sollte zukünftig Rational Rose statt Paradigm Plus eingesetzt werden. D.h. die komplette Entwicklungsplattform sollte gewechselt werden, wobei selbstverständlich die bereits durchgeführten Entwicklung (Modelle, Quellcodes, ...) übernommen und weiter gepflegt bzw. erweitert werden sollten.


Erster geplanter Lösungsansatz
Die Umsetzung sollte nach den gängigen Verfahren (Remodellierung auf dem Zielsystem, Anpassung der Java-Quellcodes, Testing) erfolgen. Um die Konsistenz der Programme zu sichern sollten sämtliche UML-Modelle aus Paradigm Plus nach Rational Rose konvertiert werden. Die aus den Modellen generierten Java-Quellcodes mussten funktional mit den ursprünglichen Programmen übereinstimmen.

Die Aufwände für die Transformation und Migration wurde mit mindestens 2 Mannjahren angesetzt, wobei der Testaufwand nahezu unkalkulierbar gewesen wäre. Zudem wäre die Entwicklungsabteilung während der Migration für mind. 2 Wochen blockiert gewesen.


Neuer Lösungsansatz, u.a. mit MetaMeta-Modellen
Nach einer vorläufigen Analyse wurde ein alternativer Lösungsweg vorgeschlagen, welcher geringere Projektrisiken, effizienter Umsetzung und maximaler Qualität ermöglichte.

Problematik
Erweiterte Anforderungen
Um die Konsistenz der Programme zu sichern mussten sämtliche UML-Modelle aus Paradigm Plus nach Rational so konvertiert werden, dass der aus den Modellen generierte Java-Quellcode 100% kompatibel zu dem Paradigm Plus Java-Quellcode sein musste. Dies schloss sowohl generierte Kommentare als auch Quellcodeformatierungen ein.

Erwartete Ergebnisse

Realisierung

Ergebnisse

Wirtschaftlichkeit



Schlussbemerkung

Falls Sie auch ein Interesse daran haben wie sie ihre Projekte möglicherweise sehr viel effizienter Umsetzen könnten, dann setzen Sie sich einfach mit mir in Verbindung.

Roland Graber (Ingenieurbüro Graber)
Neudorfstr. 57a
76316 Malsch
Tel.: 07246-4125
eMail: info@graber.de
Url: www.graber.de