13.07.2015 Aufrufe

Diplomarbeit Modellgetriebene Software-Entwicklung: Vergleich von ...

Diplomarbeit Modellgetriebene Software-Entwicklung: Vergleich von ...

Diplomarbeit Modellgetriebene Software-Entwicklung: Vergleich von ...

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.

das PIM und PSM relative Konzepte sind. So kann das erste generierte PSM spezifisch für einePlattform sein, aber immer noch unabhängig <strong>von</strong> einer weiteren, die noch durch weitereTransformation hinzugefügt werden soll. Erst in der letzten Transformation wird aus dem PSMProgrammcode generiert, dieser Platform Specific Implementation (PSI) genannteProgrammcode wird aus sogenannten Templates bzw. Cartridges erzeugt. Diese Templatessind in Template-Sprachen, neuerdings auch in QVT, geschrieben und enthalten Codemusterder Anwendung, welche so allgemein gehalten sind, dass sie auf alle möglichenTeilanwendungen zutreffen. Aus diesen Templates wird Programmcode als Ausgabe generiert,der einem Schema entspricht und in die passenden Dateien geschrieben wird. Um denkorrekten Ablauf kümmert sich ein Generator-Framework, das auf die eigenen Bedürfnissekonfiguriert wurde. Abschließend wird der generierte schematische Programmcode derAnwendung bzw. der Teilanwendungen per Hand um den individuellen Code ergänzt, um dieAnwendung komplett lauffähig zu machen. Übersetzen des Codes und Testen der Anwendungsei hier nur kurz erwähnt, da es sowieso in jeden <strong>Software</strong>-<strong>Entwicklung</strong>sprozess gehört.Zu Beginn meiner studentischen Tätigkeit im Jahre 2006 gab es noch keine frei verfügbarenGeneratoren, die MDA vollends mit all seinen Standards unterstützten. Mittlerweile soll oAWauch Modell zu Modell (M2M) Transformationen durchführen können, wobei die Modelle überUML-Tools auch MOF konform sein können ([Piotrek et al. 07], S.192). Ob man nun aber dengesamten MDA Prozess mit allen Standards der OMG in der Praxis durchführen kann, gilt es zuüberprüfen. Trotz allen Schwierigkeiten bei der Verwirklichung <strong>von</strong> MDA-Projekten, bietet derAnsatz laut vieler hier zitierter Literatur einen guten Einstieg in die modellgetriebene <strong>Software</strong>-<strong>Entwicklung</strong>, so dass alle in der Praxis verwendeten Ansätze MDA als Basis haben. Desweiteren wird behauptet das MDA eine Standardisierungsinitiative der OMG zum Thema MDSDsei (nach [Stahl/Völter 05], S.5).2.3 MDA-LightMDA-Light ist eine vereinfachte Version <strong>von</strong> MDA. Diese ist durch die Skepsis der Branchegegenüber den verfügbaren Werkzeugen entstanden. Die Skepsis der Branche bezog sichauf die Nutzbarkeit eines PSM in der Praxis (nach [Bohlen/Starke 03], S.52 f). Aus diesemGrund wurde in der Praxis auf Werkzeuge gesetzt, die direkt aus einem ModellProgrammcode generierten. Diese Vereinfachung des methodischen Ansatzes auspragmatischen Gründen ist nicht neu und wird Early Adaptors Phänomen genannt. Auf dieseWeise entstehen durchaus brauchbare Technologien.AndroMDA spielt bei der Entstehung <strong>von</strong> MDA-Light eine wichtige Rolle. In ([Bohlen/Starke03], S.56) und ([Richly et al. 05], Abschnitt 2) wird die Art und Weise wie AndroMDAProgrammcode erzeugt als MDA-Light bezeichnet. Hierzu sollte jedoch erwähnt werden dasMDA-Light kein Standart ist. AndroMDA ist ein Nachfolgeprojekt <strong>von</strong> UML2EJB, indem Java-Code aus UML-Modellen generiert wurde. Die Beschränkung auf EJB gilt für AndroMDAkeinesfalls, es sind alle Zielplattformen aus UML-Modellen generierbar. Das Weglassen <strong>von</strong>PSM ist aber nicht der einzige Unterschied zu MDA.: die OMG sieht in der Erstellung einerDSL einen Erfolgsfaktor für die Modellierung und Generierung <strong>von</strong> Anwendungen.[Bohlen/Starke 03] und [Richly et al. 05] schreiben nichts <strong>von</strong> der Erstellung einer DSL inihren Zusammenfassungen zu MDA-Light. Das Anreichern des Anwendungsmodells istdennoch zu vergleichen mit der Erstellung einer DSL. Man spricht in diesem Zusammenhangauch <strong>von</strong> leichtgewichtiger und schwergewichtiger Metamodellierung ([Petrasch/Meimberg06], S.73 ff). Bei MDA-Light wird das PIM um Informationen angereichert, welche dieTransformationen steuern sollen. Dabei handelt es sich um Stereotypen und TaggedValues,die im UML-Profile definiert werden. Stereotypen können UML-Modellelementen bestimmteBedeutungen geben und TaggedValues können ihnen zusätzliche Eigenschaften verleihen.Ein solch angereichertes PIM wird marked PIM genannt, obwohl es ein PIM ist, das teilweise13

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!