Zweck |
Zeigt Klassen und deren Beziehungen. |
Verwendung |
● Analyseklassendiagramm ● Datenmodell |
Beispiel |
|
Hinweise |
Entspricht in etwa dem bisherigen Entity-Relationship-Diagramm, enthält aber aussagekräftigere Beziehungen. Zudem können nebst Feldern auch Methoden angegeben werden. ● Eine Assoziation
beschreibt eine Verbindung/Beziehung zwischen zwei Klassen. Die Multiplizität
gibt an, mit wie vielen Objekten der gegenüberliegenden Klasse ein Objekt
assoziiert werden kann. Beispiel: Eine Rechnungsposition bezieht sich auf
genau auf einen Artikel. ● Eine Aggregation
() bildet ein
Ganzes/Teile-Konstrukt ab. Ein Teil kann gleichzeitig zu mehreren Aggregaten
gehören. Beispiel: Ein Mitarbeiter ist Bestandteil einer Abteilung (aber eine
Abteilung kann auch ohne Mitarbeiter existieren). ● Die Komposition
() ist ein Spezialfall der
Aggregation mit folgenden 2 Zusätzen: (a) das Teil kann nur mit dem Ganzen
existieren (eine Rechnungsposition kann nur existieren, sofern es eine
Rechnung gibt) und (b) ein Teil kann nie zu mehreren Ganzen gehören. ● Die Spezialisierung
/ Generalisierung () bildet
eine Beziehung zwischen einer generellen Klasse (z.B. Person) sowie einer
oder mehreren spezialisierten Klassen (z.B. Kunde, Mitarbeiter) ab. |
Technische Hinweise |
● Bei der Aggregation & Komposition führen die Klassen keine gleichberechtigte Beziehung, sondern einer Klasse (dem Aggregat) kommt eine besondere Rolle zu: das Aggregat kann z.B. Methoden enthalten, welche nicht auf die Felder im Aggregat selbst zugreifen, sondern Methoden der Teile-Klasse verwenden (Propagieren von Operationen). ● Spezialisierung / Generalisierung entspricht der klassischen Vererbung. ● Crows-Foot („Krähenfüsse) ist eine Darstellungsnotation für die Darstellung von Entity-Relationship-Diagramme. |