In der UML-Modellierung ist eine Abhängigkeitsbeziehung eine Beziehung, in der Änderungen an einem Modellelement (Lieferant) sich auf ein anderes Element (Client) auswirken. Abhängigkeitsbeziehungen können Sie in Klassendiagrammen, Komponentendiagrammen, Implementierungsdiagrammen und Anwendungsfalldiagrammen verwenden.
Mit einer Abhängigkeitsbeziehung können Sie außerdem Vorrangstellungen darstellen, wenn ein Modellelement Vorrang vor einem anderen haben muss.
Normalerweise haben Abhängigkeitsbeziehungen keine Namen.
Wie die folgende Abbildung zeigt, wird eine Abhängigkeit im Diagrammeditor als gestrichelte Linie mit offenem Pfeil dargestellt, der vom Clientmodellelement zum Lieferantenmodellelement zeigt.
Da eine Abhängigkeitsbeziehung mehrere verschiedene Beziehungstypen darstellen kann, geben Schlüsselwörter und Stereotype an, welche Art von Abhängigkeit jeweils vorliegt.
Abhängigkeitstyp | Schlüsselwort oder Stereotyp | Beschreibung |
---|---|---|
Abstraktion | «abstraction», «derive», «refine» oder «trace» | Verbindet zwei Modellelemente oder Gruppen von Modellelementen, die dasselbe Konzept auf verschiedenen Abstraktionsebenen oder aus verschiedenen Blickpunkten darstellen. |
Bindung | «bind» | Verbindet Schablonenargumente mit Schablonenparametern, um anhand von Schablonen Modellelemente zu erstellen. |
Realisierung | «realize» | Zeigt an, dass das Clientmodellelement eine Implementierung des Lieferantenmodellelements ist (das Lieferantenmodellelement ist die Spezifikation). |
Ersetzung | «substitute» | Zeigt an, dass das Clientmodellelement den Platz des Lieferanten einnimmt. Das Clientmodellelement muss mit der Vereinbarung oder Schnittstelle übereinstimmen, die vom Lieferantenmodellelement eingerichtet wird. |
Verwendung | «use», «call», «create», «instantiate» oder «send» | Zeigt an, dass ein Modellelement zur vollständigen Implementierung oder Ausführung ein anderes Modellelement benötigt. |
Sie können Ihrem Modell Abhängigkeitsbeziehungen hinzufügen, um die folgenden Ziele zu erreichen:
In einer E-Commerce-Anwendung ist eine Klasse 'Cart' (Warenkorb) von einer Klasse 'Product' (Produkt) abhängig, weil die Klasse 'Cart' die Klasse 'Product' als Parameter für eine Hinzufügungsoperation verwendet. In einem Klassendiagramm zeigt eine Abhängigkeitsbeziehung von der Klasse 'Cart' zur Klasse 'Product'. Die Klasse 'Cart' ist daher das Clientmodellelement und die Klasse 'Product' das Lieferantenmodellelement. Diese Beziehung zeigt an, dass eine Änderung an der Klasse 'Product' möglicherweise eine Änderung an der Klasse 'Cart' erforderlich macht.