Multiplizität und Komposition UML

schiese

Erfahrenes Mitglied
Hallo,
ich habe eine allgemeine Frage zu dem oben genannten Thema. Mir ist nicht ganz klar, was für eine Aussage die Multiplizität im UML-Diagramm hat. In dem angehängten Diagramm habe ich mal ein einfaches UML-Diagramm angehängt.
Es handelt sich ja bei der Beziehung um eine Assoziation. Besagt die Multiplizität jetzt, dass dem Manager-Objekt unendlich viele Mitarbeiter-Objekte zugeordnet sein können, aber den Mitarbeiter-Objekten nur ein Manager-Objekt? Wie kann ich das verstehen, wenn ich das in JAVA programmieren möchte?

Ist eine Komposition ein Spezialfall der Assoziation? Spricht man von einer Komposition, wenn die Existenz eines Objekts an die Existenz eines übergeordneten Objekts geknüpft ist?

Gruß schiese
 

Anhänge

  • UML.JPG
    UML.JPG
    4,5 KB · Aufrufe: 167
Hallo,

Das UML-Diagramm ist so zu interpretieren, dass ein Manager 0 bis unendlich Mitarbeiter verwalten (ich nehm mal verwalten an, sollte eigentlich was auf dem Strich stehen) kann.
Ein Mitarbeiter kann jedoch nur von einem Manager verwaltet werden.

In Java ist das so zu verstehen, dass du beispielsweise in einer Manager-Klasse ein Mitarbeiter-Array hast mit allen Mitarbeitern, die dieser Manager verwaltet.
In der Mitarbeiter-Klasse wäre dann aber nur ein Manager-Attribut, von dem der Mitarbeiter verwaltet wird.


Zu deiner zweiten Frage kann ich dir leider nicht helfen.

Gruß,
Martin
 
Zur zweiten Frage:
Folgenden Link hatte ich noch in meinen Lesezeichen: http://www.torsten-horn.de/techdocs/uml.htm#UML-Notationen

Aggregationen und Kompositionen sind spezielle Assoziationen, die "Teile/Ganzes"-Beziehungen und "Hat-eine"-Beziehungen darstellen. Bei der Aggregation können die "Teile" des "Ganzen" auch einzeln existieren, bei der Komposition nur, wenn auch das "Ganze" existiert (z.B. Rechnungspositionen auf einer Rechnung). Die Verbindungslinie erhält auf der Seite des "Ganzen" eine Raute, die bei der Aggregation ungefüllt und bei der Komposition gefüllt ist. Bei automatischer Codeerzeugung werden Aggregationen und Kompositionen allerdings bei manchen Tools nicht anders als normale Assoziationen behandelt.

Also ist deine Aussage im Prinzip richtig. Lediglich das "die Existenz eines übergeordneten Objekts geknüpft ist" ist nicht 100% richtig. Das andere Objekt muss nich übergeordnet sein. Es können ja auch zwei gleichberechtigte Objekte zur Existenz des Ganzen benötigt werden (Motor und Reifen sind für ein Auto nötig, sind aber beide auf der gleichen Ebene).
 

Neue Beiträge

Zurück