Spezifikationsmodule - Software and Systems Engineering - TUM
Spezifikationsmodule - Software and Systems Engineering - TUM
Spezifikationsmodule - Software and Systems Engineering - TUM
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Anhang A<br />
ODL Programm der<br />
Spezifikationsvereinigung<br />
A.1 Anmerkungen zum Programm<br />
A.1.1<br />
Erweiterte Abhängigkeiten<br />
In diesem Anhang stellen wir die ODL-Umsetzung der Spezifikationsunifikation<br />
vor. Wir verwenden hierzu ein erweitertes Abhängigkeitsnetz, wie in Abbildung<br />
A.1 gezeigt. Neben den aus Kapitel 4 bekannten Modellelementklassen und<br />
Abhängigkeiten (letztere wieder als durchgezogene Pfeile dargestellt), finden sich<br />
nun auch die Modellelemente für lokale Variablen (LocVariable) und deren Repräsentation<br />
in Termen (LocVariableConst) , Funktionsapplikation (Appl), Selektoren,<br />
Terme und konstante Ausdrücke (Const), Transitionsverbindungspunkte<br />
(InterfacePoint), sowie Aktionen (Action) und Vorbedingungen (Condition).<br />
Desweiteren zeigt die Abbildung die Klassenhierachie des Metamodells für Terme<br />
und konstante Ausdrücke.<br />
Das bisher noch nicht beachtete Modellierungselement LocVariable für lokale<br />
Variablen unterscheidet sich nicht von den Elementen für Port. Beide haben<br />
als Attribute einen Namen und einen definierten Typ und sind mit einer n:1-<br />
Beziehung an Component geknüpft. Die Assoziation zwischen LocVariable und<br />
LocVariableConst ist eine 1:1-Beziehung, d.h. mit jeder lokalen Variablen ist ein<br />
eindeutiges Repräsentationsobjekt für die ihre Verwendung als Term vorh<strong>and</strong>en.<br />
Die gekennzeichnete Vererbungshierarchie von Term und Const bedarf einer<br />
besonderen Beh<strong>and</strong>lung. Alle Abhängigkeiten, die auf Oberklassen verweisen,<br />
müssen die Unterklassen mitberücksichtigen, d.h. die Abhängigkeit ist erfüllt,<br />
wenn es in einer der Unifikationrelationen der Unterklassenelemente ein entsprechend<br />
vereinigtes Elementtupel gibt. Der in Kapitel 4 eingeführte Formalismus<br />
zur Beschreibung einer Unifikationsrelation muss für Klassenhierarchien folgendermaßen<br />
angepasst werden:<br />
62