03.02.2014 Aufrufe

Spezifikationsmodule - Software and Systems Engineering - TUM

Spezifikationsmodule - Software and Systems Engineering - TUM

Spezifikationsmodule - Software and Systems Engineering - TUM

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

nisch umsetzbar, da die bisherigen Arbeiten an der Implementierung eine klare<br />

Schnittstelle zum verwendeten Metamodell nutzen. Die Hauptarbeit zur Anpassung<br />

von ODL an weitere Entwicklungswerkzeuge betrifft diese Schnittstelle.<br />

Wir werden die Portierung anh<strong>and</strong> der Unified Modeling Language (UML)<br />

motivieren.<br />

Wie wir gesehen haben, ist ODL als Transformationssprache für Modelle mit<br />

diesen über das Metamodell verbunden. ODL ist im Falle von AutoFocus 2 über<br />

eine generische Schnittstelle mit dem AutoFocus 2-Metamodell gekoppelt, d.h.<br />

die durch das Metamodell vorgegebenen Assoziationen zwischen Modellelementen<br />

werden zur Laufzeit ermittelt. Sie sind also nicht fester Best<strong>and</strong>teil des ODL-<br />

Moduls. Diese lose Bindung zwischen ODL und dem Metamodell ermöglicht eine<br />

leichte Adaption der Transformationssprache für <strong>and</strong>ere Modellierungssprachen.<br />

In [HS05] wird neben der hier vorgestellten Modelltransformation für AutoFocus<br />

2, auch ein Beispiel für eine Modelltransformation für UML-Modelle<br />

gegebenen. Sowohl die AutoFocus 2-Modellierungssprache als auch die UML<br />

(vgl. [OMG03a]) sind mit Hilfe eines Metamodells beschrieben. Beide Metamodelle<br />

können dabei als Instanzen eines Meta-Metamodells angesehen werden, wie<br />

es die MetaData Architektur in der MetaObject Facility Specification [OMG04]<br />

definiert. Diese Ähnlichkeit der Metamodelle ermöglicht es, dass ODL auch als<br />

Transformationssprache in UML-Werkzeuge integriert werden kann, wenn die<br />

entsprechende ODL-Metamodell-Schnittstelle angepasst wird.<br />

Die Integration von ODL in UML-Werkzeuge könnte dabei ohne große Zusatzarbeiten<br />

durchgeführt werden, weil in einem Systementwicklungsprojekt am<br />

Lehrstuhl eine einheitliche Schnittstelle zu mehreren UML-Werkzeugen (Rational<br />

Rose Enterprise 2003, argoUML 0.16.1, . . . ) geschaffen wurde (vgl. [Dun05]).<br />

Dennis Dungs hat hierbei für seine Schnittstelle eine Implementierung des<br />

UML Metamodells geschaffen. Diese ist im Gegensatz zum AutoFocus 2-Metamodell<br />

allerdings nicht zur Laufzeit als Instanz des Meta-Metamodells vorh<strong>and</strong>en.<br />

Die Kopplung von ODL über diese generische Schnittstelle sollte aber<br />

möglich sein und daher einer genaueren Betrachtung, möglicherweise in Form<br />

eines Systementwicklungsprojekts, unterzogen werden.<br />

Nach einer ersten Analyse zeigten sich folgende Arbeitspakete:<br />

• Spezifikation und Implementierung der Schnittstelle zwischen ODL und<br />

dem UML Metamodell, wobei die analytischen Fähigkeiten von Java (Reflection-API)<br />

Anwendung finden könnten um die fehlende Beschreibung<br />

der Meta-Metamodell-Instanz zu ersetzen. Alternativ kann das Metamodell<br />

möglicherweise auch mit ArgoUML reverse-engineered werden, um<br />

dann mit dem in AutoFocus 2 verwendeten MMGen-Verfahren eine Laufzeitinstanz<br />

des Metamodells zu erhalten, was die Kopplung von ODL erheblich<br />

vereinfachen würde.<br />

• Nutzung der UML Schnittstelle zur Integration des ODL Editors in die<br />

UML Werkzeuge. Besonderes Augenmerk richtet sich hier auf die Integration<br />

in den GUI des jeweiligen UML-Werkzeugs.<br />

• Nachweis der Funktionsfähigkeit durch Umsetzung der in [HS05] beschriebenen<br />

Modelltransformation für UML Modelle (MoveUpFeature-Transformation).<br />

60

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!