15.17. Containment

Kritiken, die sich auf das Containment in ArgoUML beziehen. D.h., wo ein Modellelement den Komponententeil eines anderen bildet.

Die aktuelle Version von ArgoUML hat die folgenden Kritiken in dieser Kategorie.

15.17.1. Entferne zirkuläre Komposition

Hinweis, das es eine Reihe von Kompositionen (Assoziationen mit einem schwarzen Diamanten) gibt, die einen Zirkelbezug bilden, was nicht erlaubt ist.

15.17.2. Duplizieren Sie den Parameternamen

Hinweis, dass eine Parameterliste einer Operation oder eines Ereignisses zwei oder mehr Parameter mit dem gleichen Namen aufweist, was nicht erlaubt ist.

15.17.3. Zwei Aggregatenden (Rollen) in binärer Assoziation

Nur ein Ende (Rolle) einer binären Assoziation kann Aggregat oder Komposition sein. Dies ist eine wohlgeformte Regel des UML 1.4- Standards.

Aggregation und Komposition werden verwendet, um Ganzes-Teil- Beziehungen darzustellen und der „Teil“ kann per Definition kein Aggregat(Zusammenfassung) sein.

Um dies zu lösen, identifizieren Sie das „Teil“-Ende der Assoziation und verwenden Sie im Kritikassistenten die Schaltfläche Weiter >, setzen seine Aggregation manuell mit Hilfe des Taste 2-Popup-Menüs oder des Eigenschaftsregisters auf none.

Eine Komposition (korrekter verbundene Aggregation genannt) wird verwendet, wenn es eine Ganzes-Teil-Beziehung gibt, die eins-zu-eins oder eins-zu-viele sind und die Lebensdauer des Teils unauflösbar von der Lebensdauer des Ganzen abhängt. Instanzen des Ganzen sind für das Erzeugen und Löschen der Instanzen der verknpften Teile verantwortlich. Das bedeutet auch, dass eine Klasse nur Teil einer verbundenen Aggregation sein kann.

Ein Beispiel einer verbundenen Aggregation könnte eine Datenbank von Autos mit deren Reifen sein. Dies ist eine eins-zu-vier- Beziehung und der Datenbankeintrag für einen Reifen ist mit seinem Auto verknüpft. Wenn ein Auto in der Datenbank aufhört zu existieren, dann trifft dies auch auf seine Reifen zu.

Die Aggregation (korrekter aufgeteilte Aggregation genannt) wird verwendet, wenn es eine Ganzes-Teil-Beziehung gibt, die nicht den Kriterien für eine verbunden Aggregation übereinstimmt. Ein Beispiel könnte eine Datenbank von Universitätskursen und den Studenten sein, die diese belegen. Es gibt eine Ganzes-Teil-Beziehung zwischen den Kursen und den Studenten. Jedoch gibt es keine Lebensdauerbeziehung zwischen den Studenten und den Kursen (ein Student existiert weiter, nachdem er den Kurs absolviert hat) und die Beziehung lautet viele-zu-viele.

15.17.4. Aggregatende (Rolle) in 3-Wege (oder mehr) Assoziation

Drei-Wege- (oder mehr) Assoziationen können keine Aggregatenden (Rollen) haben. Dies ist eine wohlgeformte Regel des UML 1.4- Standards.

Aggregation und Komposition werden verwendet, um Ganzes-Teile- Beziehungen darzustellen. Diese können per Definition nur auf binäre Assoziationen zwischen Modellelementen angewendet werden.

Um dies zu lösen, markieren Sie die Assoziation manuell und setzen Sie jedes Ende (Rolle) dieser Aggregation mit Hilfe des Taste 2- Popup-Menüs oder dem Eigenschaftsregister auf none.

15.17.5. Verbergen Sie den Datentyp

Diese Kritik wird unter einer früheren Designkategorie diskutiert (siehe Abschnitt 15.3.1, „ Datentyp verbergen).