UML Association vs. Aggregation vs. Zusammensetzung [BEISPIEL]
Beziehungen im UML-Diagramm werden verwendet, um eine Verbindung zwischen verschiedenen Dingen darzustellen. Eine Beziehung ist eine Verbindung zwischen Dingen wie strukturellen, verhaltensbezogenen oder gruppierenden Dingen in der einheitlichen Modellierungssprache.
Im Folgenden sind die verschiedenen Typen von Standardbeziehungen in UML aufgefรผhrt.
- Verein
- Abhรคngigkeit
- Verallgemeinerung
- Realisierung
Darรผber hinaus erlaubt UML die Verwendung von Aggregation und einer Kompositionsbeziehung.
UML-Vereinigung
Es handelt sich um eine strukturelle Beziehung, die Objekte darstellt, die mit einem anderen Objekt innerhalb des Systems verbunden oder verknรผpft werden kรถnnen. Die folgenden Einschrรคnkungen kรถnnen auf die UML-Assoziationsbeziehung angewendet werden.
- {implizit} โ Implizite Einschrรคnkungen geben an, dass die Beziehung nicht manifest ist; es basiert auf einem Konzept.
- {bestellt} โ Geordnete Einschrรคnkungen geben an, dass die Menge der Objekte an einem Ende einer Assoziation auf eine bestimmte Weise angeordnet ist.
- {verรคnderbar} โ Die verรคnderbare Einschrรคnkung gibt an, dass die Verbindung zwischen verschiedenen Objekten im System je nach Anforderung hinzugefรผgt, entfernt und geรคndert werden kann.
- {addOnly} โ Es gibt an, dass die neuen Verbindungen von einem Objekt hinzugefรผgt werden kรถnnen, das sich am anderen Ende einer Assoziation befindet.
- {gefroren} โ Es gibt an, dass beim Einfรผgen eines Links zwischen zwei Objekten dieser nicht geรคndert werden kann, solange die eingefrorene Einschrรคnkung fรผr den angegebenen Link oder eine Verbindung aktiv ist.
Wir kรถnnen auch eine Klasse erstellen, die รผber UML-Assoziationseigenschaften verfรผgt; Sie wird als Assoziationsklasse bezeichnet.
Reflexive Assoziation
Die reflexive Assoziation ist eine Unterart der Assoziationsbeziehung in UML. In einer reflexiven Assoziation kรถnnen die Instanzen derselben Klasse miteinander in Beziehung gesetzt werden. Eine Instanz einer Klasse wird auch als Objekt bezeichnet.
Reflexive Assoziation besagt, dass innerhalb der Objekte derselben Klasse ein Link oder eine Verbindung vorhanden sein kann.
Beispiel:
Betrachten wir ein Beispiel einer Klassenfrucht.
Die Obstklasse hat zwei Instanzen, z. B. Mango und Apfel. Die reflexive Assoziation besagt, dass eine Verbindung zwischen Mango und Apfel bestehen kann, da es sich um Instanzen derselben Klasse, beispielsweise Obst, handelt.

Geleitete Vereinigung
Wie der Name schon sagt, hรคngt die gerichtete Assoziation mit der Flussrichtung innerhalb der Assoziationsklassen zusammen.
Bei einer gerichteten Assoziation ist der Fluss gerichtet. Die Assoziation von einer Klasse zu einer anderen Klasse erfolgt nur in eine Richtung.
Es wird durch eine durchgezogene Linie mit einer Pfeilspitze gekennzeichnet.
Beispiel einer UML-Assoziation:
Man kann sagen, dass zwischen einem Server und einem Client eine gerichtete Assoziationsbeziehung besteht.
Ein Server kann die Anfragen eines Clients verarbeiten. Dieser Fluss ist unidirektional, d. h. er flieรt nur vom Server zum Client. Somit kann eine gerichtete Assoziationsbeziehung zwischen Servern und Clients eines Systems bestehen.
UML-Komposition
Es ist kein Standard UML-Beziehung, wird aber immer noch in verschiedenen Anwendungen verwendet.
Die zusammengesetzte Aggregation ist ein Untertyp der Aggregationsbeziehung mit folgenden Merkmalen:
- Es handelt sich um eine wechselseitige Assoziation zwischen den Objekten.
- Es handelt sich um eine Ganz/Teil-Beziehung.
- Wenn ein Verbund gelรถscht wird, werden alle anderen damit verbundenen Teile gelรถscht.
Die zusammengesetzte Aggregation wird als binรคre Assoziation beschrieben, die am Aggregatende (gesamten Ende) mit einer gefรผllten schwarzen Raute verziert ist.
Der Ordner kรถnnte viele Dateien enthalten, wobei jede Datei genau einen รผbergeordneten Ordner hat. Wird ein Ordner gelรถscht, werden auch alle darin enthaltenen Dateien entfernt.
In einer zusammengesetzten Aggregation kann ein Objekt jeweils nur Teil eines Verbunds sein.
Beispiel fรผr eine UML-Komposition:
Beispielsweise gehรถrt in einem Fenstersystem ein Frame genau zu einem Fenster. In einer zusammengesetzten Aggregation ist das gesamte System fรผr die Anordnung seiner Teile verantwortlich, was bedeutet, dass das Verbundsystem die Erstellung und Zerstรถrung seiner Teile verwalten muss.
UML-Aggregation
Eine Aggregation ist ein Untertyp einer Assoziationsbeziehung in UML. Aggregation und Zusammensetzung sind beide Arten von Assoziationsbeziehungen in UML. Eine Aggregationsbeziehung kann mit einfachen Worten beschrieben werden als โein Objekt einer Klasse kann die Objekte einer anderen Klasse besitzen oder darauf zugreifen.โ
In einer Aggregationsbeziehung bleibt das abhรคngige Objekt im Gรผltigkeitsbereich einer Beziehung, auch wenn das Quellobjekt zerstรถrt wird.
Beispiel fรผr UML-Aggregation:
Betrachten wir ein Beispiel fรผr ein Auto und ein Rad.
Ein Auto braucht ein Rad, um richtig zu funktionieren, aber ein Rad braucht nicht immer ein Auto. Es kann auch mit dem Fahrrad, Fahrrad oder anderen Fahrzeugen verwendet werden, jedoch nicht mit einem bestimmten Auto. Hier ist das Radobjekt auch ohne das Autoobjekt sinnvoll. Eine solche Art von Beziehung wird als UML-Aggregationsbeziehung bezeichnet.
Verband vs. Aggregation vs. Komposition
| Verein | Anhรคufung | Zusammensetzung |
|---|---|---|
| Assoziationsbeziehungen werden durch einen Pfeil gekennzeichnet. | Die Aggregationsbeziehung wird durch eine gerade Linie mit einer leeren Pfeilspitze an einem Ende dargestellt. | Die Zusammensetzungsbeziehung wird durch eine gerade Linie mit einer gefรผllten Pfeilspitze an einem der Enden gekennzeichnet. |
| In UML kann eine Assoziation zwischen zwei oder mehr Klassen bestehen. | Aggregation ist Teil einer Assoziationsbeziehung. | Die Komposition ist Teil einer Assoziationsbeziehung. |
| Zwischen den Assoziationsklassen kann eine Eins-Eins-, Eins-Viele-, Viele-Eins- und Viele-Viele-Assoziation vorhanden sein. | Aggregation gilt als schwache Art der Assoziation. | Die Komposition gilt als eine starke Assoziationsform. |
| In einer Assoziationsbeziehung kรถnnen ein oder mehrere Objekte miteinander verknรผpft sein. | In einer Aggregationsbeziehung kรถnnen miteinander verknรผpfte Objekte ohne einander im Geltungsbereich eines Systems verbleiben. | In einer Kompositionsbeziehung kรถnnen miteinander verknรผpfte Objekte nicht ohne einander im Gรผltigkeitsbereich verbleiben. |
| Objekte sind miteinander verknรผpft. | Verknรผpfte Objekte sind nicht vom anderen Objekt abhรคngig. | Objekte sind stark voneinander abhรคngig. |
| In der UML-Assoziation kann sich das Lรถschen eines Elements auf ein anderes zugeordnetes Element auswirken oder auch nicht. | Bei der UML-Aggregation hat das Lรถschen eines Elements keine Auswirkungen auf ein anderes zugeordnetes Element. | In UML Composition wirkt sich das Lรถschen eines Elements auf ein anderes zugeordnetes Element aus. |
| Ejemplo: Ein Lehrer ist mehreren Schรผlern zugeordnet. Or Ein Lehrer gibt den Schรผlern Anweisungen. |
Ejemplo: Ein Auto braucht ein Rad, aber es braucht nicht immer das gleiche Rad. Ein Auto kann auch mit einem anderen Rad ausreichend funktionieren. |
Ejemplo: Eine Datei wird im Ordner abgelegt. Wenn man den Ordner lรถscht, wird auch die mit diesem Ordner verknรผpfte Datei gelรถscht. |
Zusammenfassung
- Eine Beziehung ist eine Verbindung zwischen Dingen.
- Assoziation, Abhรคngigkeit, Verallgemeinerung und Realisierung sind vielfรคltig Beziehungen, die von UML bereitgestellt werden.
- Neben Standardbeziehungen werden innerhalb der UML auch Komposition und Aggregation verwendet.
- Aggregation und Zusammensetzung sind beide Arten von Assoziationsbeziehungen in UML.
- Die UML-Komposition ist eine bidirektionale Beziehung, die auch als binรคre Beziehung bezeichnet wird.
Lesen Sie unseren Artikel zu den besten UML-Tools: - Mehr Info

