OMT Object model

Darstellung von Instanzen

Im Rahmen objektorientierter Modellierung ist es normalerweise üblich, Objekte auf Typebene (d. h. Klassenebene) zu dokumentieren. Trotzdem kann es sinnvoll sein, auch einzelne Instanzen zu modellieren. ARIS bietet dafür mit dem blauen, abgerundeten Rechteck ein eigenes Symbol an.

Instanzen

Darstellung von Klassen

Klassen repräsentieren die wesentlichen Strukturen des zu modellierenden Anwendungsgebietes. Sie werden in ARIS durch ein blaues Rechteck (mit horizontalen Linien) dargestellt.

Klassen

Zuordnung von Instanzen zu Klassen

Wenn die Darstellung von Instanzen für nötig gehalten wird, wird es möglich, die Zuordnung zu den zugehörigen Klassen deutlich zu machen. Die entsprechende Kante hat die Semantik is instance of wie folgende Abbildung zeigt.

Verbindung von Instanzen zu Klassen

Zuordnung von Attributen zu Klassen

Die Eigenschaften von Klassen werden über Attribute beschrieben. Bei der Modellierung in ARIS sind dies eigene Objekte (und damit auch eigene Symbole), die über Kanten (mit der Semantik has attribute) mit den dazugehörigen Klassen verbunden werden (vgl. folgende Abbildung). Diese Trennung in zwei unterschiedliche Objekttypen (Klassen und Attribute) ist nötig, um alle Vorteile von ARIS bzgl. der Erstellung von Reporten und Navigation zu nutzen.

Bei jedem Attribut kann vermerkt werden, ob es sich dabei um ein Klassen- (Wert ist für alle Instanzen der Klasse relevant) oder Instanzenattribut handelt.

Zuordnung von Attributen zu Klassen

Zuordnung von Operationen zu Klassen

Die Klassen zugeordnete Funktionalität wird über die Definition von Operationen (Methoden) beschrieben. Auch hierfür wurde ein eigener Objekttyp definiert, der mit Klassen in Beziehung (mit der Semantik has operation) gesetzt werden kann (vgl. folgende Abbildung).

Zuordnung von Operationen zu Klassen

Assoziationen zwischen Instanzen

Zwischen einzelnen Instanzen können Verknüpfungen bestehen. Diese werden in ARIS durch eine ungerichtete Kante vom Typ is linked to dargestellt.

Assoziationen zwischen Instanzen

Assoziationen zwischen Klassen

Auch zwischen Klassen können Verknüpfungen (Assoziationen) bestehen, wie sie auch aus einem Entity-Relationship-Modell schon bekannt sind. Zu deren Darstellung wird ein eigenes Symbol (gelbe Raute) verwendet, um in gleicher Art und Weise auch mehrstellige Beziehungen darzustellen (siehe unten). Die Kanten werden dabei jeweils vom Klassensymbol zum Rautensymbol gezogen und können mit Komplexitätsgraden belegt werden, wozu das Attribut Multiplicity der Kante verwendet wird. Folgende Einträge für Multiplicity sind möglich und führen teilweise auch zu einer entsprechenden grafischen Darstellung der Kante:

Assoziationen zwischen Klassen

Mehrstellige Assoziationen zwischen Klassen

Dreistellige (oder auch n-stellige) Assoziationen zwischen Klassen werden dargestellt, indem auch noch eine dritte Klasse oder noch mehr Klassen mit der die Verknüpfung definierenden Raute verbunden wird.

Ternäre Beziehung zwischen Klassen

Modellieren einer Assoziation als Klasse

Eine Assoziation kann wiederum als selbständiges Objekt verstanden und als Klasse interpretiert werden. Dies kann dargestellt werden, indem eine gerichtete Kante von dem Rautensymbol zu einem Klassensymbol gezogen wird, wo dann alle Attribute und Operationen aufgelistet werden können (vgl. nächste Abbildung). Diese „uminterpretierte“ Klasse kann dann natürlich wiederum Assoziationen zu anderen Klassen eingehen.

Modellieren einer Assoziation als Klasse

Darstellung einer qualifizierten Assoziation

Eine qualifizierte Assoziation ergänzt eine normale Assoziation um eine Qualifikationsangabe, die als ausgezeichnetes Attribut die Kardinalität einer Assoziation reduziert. Sinn macht dies für 1:m und n:m-Assoziationen, da damit die Objekte auf der m-Seite einer Assoziation unterschieden werden.

Die Darstellung einer qualifizierenden Assoziation erfolgt, indem an der Kante die Qualifikationsangabe vermerkt wird. Dazu ist ein eigenes Attribut Qualifier vorgesehen, das natürlich (wie alle Attribute) auch in die Grafik eingeblendet werden kann.

Darstellung einer qualifizierten Assoziation

Darstellung von Ordnungen bei Assoziationen

Falls die Objekte auf der n-Seite einer Assoziation eine Ordnung haben, kann dies explizit in der Grafik vermerkt werden. Hierfür existiert ein eigenes Attribut an der Kante zwischen Class und Assoziations-Symbol.

Darstellung von Ordnungen bei Assoziationen

Aggregation zwischen Klassen

Eine Aggregation stellt eine Teil-Ganzes-Beziehung dar und kann als Spezialfall einer Assoziation angesehen werden. Diese Beziehung wird als gerichtete Beziehung zwischen Klassen modelliert (der Kantentyp ist dabei aggregates), wobei dann in der Grafik eine weiße Raute die Klasse, die das „Ganze“ repräsentiert (Komponentengruppe), angezeigt wird.

Aggregation zwischen Klassen

Generalisierung und Vererbung

Ein grundlegendes Konstrukt objektorientierter Modellierung ist die Definition von Hierarchien zwischen Klassen, womit auch eine Vererbung von Attributen und Operationen von der Ober- zu den Unterklassen verbunden ist. In ARIS gibt es hierfür einen eigenen Objekttyp (grünes Dreieck), der mit den beteiligten Klassen verbunden wird (vgl. nächste Abbildung). Auch Mehrfachvererbung ist damit darzustellen.

Bei dem Generalisierungsoperator kann als Attribut vermerkt werden, welcher Aspekt bei der Generalisierung/Spezialisierung verwendet wird und ob die Spezialisierung disjunkt oder nicht disjunkt ist.

Generalisierungs-/Spezialisierungs-Beziehung

Einschränkungen (Constraints) bei Klassen, Attributen und Assoziationen

Einschränkungen (Constraints) sind funktionale Beziehungen zwischen den Klassen, Attributen und Assoziationen eines OMT Object Model. In ARIS sind eigene Objekttypen (Punkt) für Constraints auf Attributen definiert. Dies zeigt das folgende Beispiel, das ausdrückt, dass sich das Verhältnis von Höhe zu Breite bei Fenstern zwischen 0,7 und 1,7 bewegt.

Constraints auf Attribute

Auch zwischen Assoziationen können Einschränkungen definiert werden. Die folgende Abbildung zeigt ein Beispiel, wo ausgedrückt werden soll, dass die Personenmenge, die den Vorsitz eines Ausschusses ausmacht, natürlich eine Teilmenge der gesamten Mitgliedschaft darstellt. Hierzu kann eine gerichtete Kante zwischen den Assoziationssymbolen gezogen werden.

Constraints bei Assoziationen

Beispiel eines OMT Object Model

Die nächste Abbildung zeigt ein typisches Beispiel eines OMT Object Model mit den wesentlichen Modellierungskonstrukten.

OMT Object Model