Technische
Universität München, Institut für Informatik |
Mit der Bidirectional Object-oriented Transformation Language (BOTL) existiert eine auf einem Formalismus basierende Sprache zur Transformation von Objektmodellen. Mit Hilfe von BOTL ist es sehr leicht möglich die Transformation von Objektgeflechten mit Hilfe einer graphischen, an die UML angelehnten Sprache zu definieren. So lassen sich graphisch eine Reihe von Regeln definieren in denen festgelegt wird, wie einzelne Auschnitte von Objektmodellen zu transformiert sind. Auf Basis dieser Regeln und dem Ursprungs- und Zielmetamodell lassen sich bereits Aussagen für beliebige Ursprungsmodelle machen: Ist eine Transformation von Modellen mit dem gegebenen Regelsatz generell möglich? Erzeugt die Transformation immer Modelle die konform zum Zielmetamodell sind? Lassen sich mit einem Regelsatz Modelle bijektiv ineinander überführen? Erweist sich ein Regelsatz als anwendbar, so läßt sich hieraus der Code für einen passenden Modelltransformator generieren.
Im Rahmen dieser Arbeit soll ein bestehenes UML-Modellierungswerkzeug (ArgoUML oder Together/J) um die Möglichkeit erweitert werden BOTL-Tranformationen zu spezifizieren. Hierzu ist eine Konzeption zu erstellen wie sich BOTL-Regeln auf Basis von UML-Objektdiagrammen in dem gewählten Werkzeug darstellen lassen. Ggf. muss das Werkzeug mit Hilfe vorhandener Erweiterungsmöglichkeiten angepasst werden. Beim modellieren von BOTL-Regeln wird durch das Werkzeug bereits die syntaktische Korrektheit der Modelle überprüft. Die Verifzierung der Regeln im Bezug auf Anwendbarkeit, Metamodellkonformität und Bijektivität ist nicht Teil der Aufgabenstellung, sondern wird in einem zusätzlichen SEP realisiert.
Darüber hinaus ist das Modellierungswerkzeug mit einer XML-Schnittstelle zu versehen, die es erlaubt, BOTL-Regelwerke (inklusive der verwendeten Metamodelle) zu exportieren und importieren. Die so erzeugten XML-Dokumente dienen als Eingabe für einen Codegenerator zur Erzeugung von Modelltransformatoren, welcher im Rahmen einer Diplomarbeit erstellt wird.
Peter Braun, Frank Marschall, Juli 2002