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

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

ebene stattfinden, indem beispielsweise ein Modell in eine <strong>and</strong>ere Modellierungssprache<br />

übertragen wird. Die Übertragung von AutoFocus-Modellen in die Modellierungssprache<br />

Promela, zum Zwecke des Model-Checking mit SPIN (vgl.<br />

[Str05]), ist hierfür ein Beispiel.<br />

Auch die Transformationssprache XSLT ([W3C99]) bringt eine Variante für<br />

Modelltransformationen. Sie definiert eine Sprache zur Umsetzung von XML Dokumenten<br />

in <strong>and</strong>ers strukturierte XML Dokumente. In diesem Zusammenhang<br />

kann man auch von einer Transformation in ein <strong>and</strong>eres Metamodell sprechen.<br />

Metamodelle beschreiben die Struktur von Modellen oder Datenmengen.<br />

Da der Begriff Modelltransformation sehr unterschiedlich interpretiert wird,<br />

wollen wir hier die folgende Festlegung für diese Arbeit treffen. Eine Modelltransformation<br />

ist eine Beschreibung einer modellverändernden Berechnung,<br />

wobei sich diese auf eine Instanz, also ein Modell, für ein festgelegtes Metamodell<br />

bezieht. Sie stellt gewissermaßen eine Relation zwischen Modellen dieses<br />

Metamodells dar. Wir sprechen also weder von der Umsetzung eines Modells<br />

zwischen verschiedenen Abstraktionsebene noch von der Übertragung des Modells<br />

in <strong>and</strong>ere Metamodelle. Somit stellt für uns bereits die Umbenennung eines<br />

Modellelements eine Modelltransformation dar. Allerdings gilt unser Interesse<br />

hier wesentlich komplexeren Transformationen, die sich aus verschiedenen primitiven<br />

Einzelveränderungen des Modells zusammensetzen und eine Vielzahl<br />

von Modellelementen gleichzeitig verändern, sowie neue Elemente erzeugen und<br />

in das Modell einfügen.<br />

2.2 Das Modellierungswerkzeug AutoFocus 2<br />

AutoFocus 2 ist der Prototyp eines Modellierungswerkzeuges zur Entwicklung<br />

und Simulation eingebetteter Systeme, das am Lehrstuhl für <strong>Software</strong> & <strong>Systems</strong><br />

<strong>Engineering</strong> entwickelt und zu Wissenschaftszwecken eingesetzt wird. Es<br />

stellt eine Weiterentwicklung des AutoFocus-Werkzeugs ([<strong>TUM</strong>02]) dar. Wie<br />

die meisten modernen CASE-Werkzeuge 1 bietet es zur Modellierung graphische<br />

Editoren und verschiedene Sichten auf das modellierte System an.<br />

Wir werden zunächst einen Blick auf die für das später folgende Beispiel<br />

relevanten Modellierungssichten werfen und im zweiten Schritt das AutoFocus 2<br />

Metamodell (Beschreibung der Struktur von Modellen) beleuchten, da dieses<br />

besondere Bedeutung für die Transformationssprache ODL hat.<br />

2.2.1 Sichten und Editoren<br />

Die Modellierungssichten von AutoFocus 2 sind für die weitere Arbeit wichtig,<br />

da wir unsere Erläuterungen immer wieder an deren Aufteilung orientieren<br />

werden. Die konkreten Editoren und deren Benutzung sind dagegen kaum von<br />

Interesse. Der Leser sei hier auf die Dokumentation von AutoFocus und AutoFocus<br />

2 verwiesen ([<strong>TUM</strong>02], [<strong>TUM</strong>05]).<br />

Struktursicht<br />

Die Struktursicht beschreibt den Aufbau von eingebetteten Systemen in AutoFocus<br />

2. Systeme bestehen aus einzelnen Komponenten, die eigenständige<br />

1 CASE: computer-aided software engineering, computer-unterstützte <strong>Software</strong>entwicklung<br />

7

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!