Unterschied Assoziation und Aggregation in UML?

1 Antwort

Eine Assoziation bedeutet einfach, dass ein Objekt ein anderes Objekt "kennt".

Eine Komposition ist also eine spezielle Assoziation.
Eine Aggregation ist auch eine spezielle Assoziation.

Die Frage ist also, was ist der Unterschied zwischen Komposition und Aggregation...

Der Unterschied liegt darin, dass bei einer Aggregation die Teilobjekte unabhängig existieren können. Sie "treffen" also zusammen , um gemeinsam eine Aufgabe zu lösen.

Bei einer Komposition sind die Objekte in einer existenzabhängigen Verknüpfung zueinander. Bestimmte Objekte würden ohne andere Objekte gar nicht existieren.

Beispiel Komposition: Ohne Vater wird der Sohn nicht entstanden sein.

Beispiel Aggregation: Eine Autobremse kann unabhängig vom Fahrzeug entstanden sein. Im Gesamtverbund übernimmt sie eine spezielle Aufgabe.