Hier entsteht eine
neue Internetpräsenz
Zukünftig finden Sie hier Informationen
über Metamodellierungstechniken, sowie Anbieter von Modellierungswerkzeugen und
Anbietern von Metatechnologien. Ebenso finden Sie hier Erfahrungsberichte von
Entwicklern.
Transformation von
Meta-Modellen anhand eines realen Projektes
Ist-Zustand
Eine große Gesellschaft erstellte ihre Softwarekomponenten auf Basis eines
Metamodelles (UML) in Paradigm Plus. Der Aufwand für die Entwicklung der
Modelle betrug bereits mehrere zig-Mannjahre.
Anforderung
Aus strategischen Gründen sollte zukünftig RationalRose anstatt Paradigm
Plus eingesetzt werden. Um die Konsistenz der Programme zu sichern
mussten daher sämtliche UML-Modelle aus Paradigm Plus nach Rational so
konvertiert werden, dass der aus den Modellen generierte Quellcode 100%
kompatibel zu dem ursprünglichen Quellcode sein musste. Dies schloss
sowohl generierte Kommentare als auch Quellcodeformatierungen ein. Mit dieser
Vorgabe konnte eine einfache Validierung der generierten Codes durch einen
einfachen Dateivergleich erfolgen.
Problematik
Paradigm Plus verfügte in der Version nicht über eine vollständige Objektschnittstelle, sondern lediglich über eine interne Scriptsprache.
Die UML-Modelle von Paradigm Plus waren nicht 100% kompatibel zu denen von RationalRose.
Nicht abgefangene Inkonsistenzen zwischen grafischem und logischem Modell in Paradigm Plus
Paradigm Plus unterstützt auch noch andere Modelle
Lösung
Um die Modellunterschiede zu beschreiben wurden zuerst die Metamodelle von
Paradigm und von Rational extrahiert. In Paradigm konnte hierzu die interne
Scriptsprache verwendet werden. In RationalRose konnte die Objektschnittstelle
zumindest rudimentär verwendet werden.
Mit Hilfe des ausgelesenen Metamodelles wiederum konnte die Daten aus Paradigm extrahiert und in einer Datenbank abgelegt werden.
Prinzipiell wäre es jetzt möglich gewesen, anhand der generierten Datenbanken einzelne Funktionen zu implementieren, welches aus der Datenbank heraus die RationalRose-Modelle generiert.
Es wurde jedoch ein anderer innovativer Ansatz gewählt.
Mit Hilfe Hilfe des MetaMeta-Modellierungswerkzeug MissingLink der Firma Merlin GmbH war es möglich die Metamodelle von Pardigm Plus und RationalRose quasi vollautomatisch in einem MetaMeta-Modell zu modellieren
Danach wurde die Transformationsmechanismen modelliert, welche beliebige Paradigm-UML-Modelle in RationalRose-UML-Modelle transformieren.
Aus der extrahierten Datenbank wurde die Daten der Paradigm-UML-Modell eingelesen und über die Transformationsmechanismen direkt in RationalRose-Modelle umgewandelt.
Ergebnis
Die Beschreibung der Transformation konnte somit auf
einer höheren Meta-Ebene durchgeführt werden, wodurch sowohl die Aufwände für die
Transformationen, als auch die Fehlermöglichkeiten erheblichst reduziert
werden konnten.
Als "Nebenprodukt"
fiel nebenbei ein allgemeiner Konverter für UML-Modelle von Paradigm
Plus nach Rational Rose ab!!!
Die Modellierung, Erstellung der Verfahren, Werkzeuge und Testumgebungen, konnte innerhalb von 12 Wochen (etwa 20 Mannwochen) abgeschlossen werden. Die eigentliche Konvertierung aller Modelle nahm etwa 10 Minuten in Anspruch. Die Forderung nach 100% Sourcecode-Kompatiblität wurde erfüllt.
Kontakt
Falls Sie selbst Unterstützung bei Modellierung und
Softwareentwicklung benötigen, dann setzen Sie sich bitte mit uns in
Verbindung.
Ingenieurbüro Graber
Neudorfstr. 57a
76316 Malsch
Tel.: 07246-4125
eMail: info@graber.de
Url: www.graber.de
Wenn auch Sie auf dieser Seite verzeichnet sein möchten oder eventuell die Domain selbst erwerben möchten, dann setzen Sie sich mit in Verbindung.