Chapter 7. Externe Typen im Metamodell

Mit dem Metamodellelement MExternal ist ein Konzept im GeneSEZ-Metamodell vorhanden, welches in dieser Form nicht zur UML gehört. Als externe Typen werden in diesem Zusammenhang im Modell verwendete Typen (Klassen, Interfaces, Enumerations) bezeichnet, die selbst nicht im Modell vorhanden sind. Sie befinden sich stattdessen z.B. in Standard-Bibliotheken der Programmiersprache oder in anderen Bibliotheken, die verwendet werden sollen.

7.1. Definition im UML-Modell

Im zugrunde liegenden UML-Modell werden externe Typen als Klassen (bzw. Interfaces oder Enumerations) definiert und speziell gekennzeichnet. Dazu gibt es mehrere Möglichkeiten:

* Verwendung eines Stereotypes

* Verwendung eines separaten Packages

* Ablage des Typs direkt im Modell (der Typ hat eine Containment-Beziehung zum Modell-Element und befindet sich nicht in einem Package)

Die verschiedenen Möglichkeiten haben spezifische Vor- und Nachteile. Die Annotation der einzelnen Klassen mit einem Stereotyp ist jedoch allgemein zu bevorzugen, da hier in den Modellen und verschiedenen Diagrammen die Semantik einer externen Klasse am deutlichsten zum Ausdruck kommt. Beispiele dazu sind weiter unten zu finden.