Generalisierungsbeziehungen

In der UML-Modellierung ist eine Generalisierungsbeziehung eine Beziehung, bei der ein Modellelement (untergeordnetes Element) auf einem anderen Modellelement (übergeordnetes Element) basiert. Generalisierungsbeziehungen werden in Klassen-, Komponenten- und Anwendungsfalldiagrammen verwendet.

Damit sie der UML-Semantik entsprechen, müssen die Modellelemente in einer Generalisierungsbeziehung demselben Typ angehören. Beispielsweise können Generalisierungsbeziehungen zwischen Actors oder zwischen Anwendungsfällen bestehen, sie können jedoch nicht zwischen einem Actor und einem Anwendungsfall bestehen.

Sie können Generalisierungsbeziehungen hinzufügen, um Attribute, Operationen und Beziehungen in einem übergeordneten Modellelement zu erfassen und anschließend in mindestens einem untergeordneten Modellelement erneut zu verwenden. Da die untergeordneten Modellelemente in Generalisierungen die Attribute, Operationen und Beziehungen des übergeordneten Elements übernehmen, brauchen Sie für das untergeordnete Element nur diejenigen Attribute, Operationen oder Beziehungen neu zu definieren, die sich von denen des übergeordneten Elements unterscheiden.

Das übergeordnete Modellelement kann ein oder mehrere untergeordnete Modellelemente haben und jedes untergeordnete Modellelement kann ein oder mehrere übergeordnete Elemente haben. Am häufigsten kommt jedoch vor, dass ein übergeordnetes Modellelement mehrere untergeordnete Modellelemente hat.

Generalisierungsbeziehungen haben keine Namen.

Wie die folgende Abbildung zeigt, wird eine Generalisierungsbeziehung im Diagrammeditor als durchgezogene Linie mit nicht gefüllter Pfeilspitze dargestellt, die vom untergeordneten Modellelement zum übergeordneten Modellelement zeigt.

Ein übergeordnetes Element mit einem untergeordneten Element

Ein übergeordnetes Element mit mehreren untergeordneten Elementen

Eine Klassenform enthält den Namen 'Parent' (übergeordnetes Element) und eine Klassenform enthält den Namen 'Child' (untergeordnetes Element). Eine durchgezogene Linie mit nicht gefüllter Pfeilspitze zeigt von der untergeordneten Klasse zur übergeordneten Klasse. Zwei Klassenformen mit den Namen 'Child1' und 'Child2' sind jeweils mit der Klassenform namens 'Parent' verbunden. Jeder Connector ist eine durchgezogene Linie mit nicht gefüllter Pfeilspitze, die von der untergeordneten Klasse zur übergeordneten Klasse zeigt.

Beispiel

Die folgende Abbildung zeigt eine E-Commerce-Anwendung für eine Website, auf der eine Vielfalt von Waren angeboten wird. Die Anwendung verfügt über eine Klasse 'InventoryItem', die eine übergeordnete Klasse ist (auch als Superklasse bezeichnet). Diese Klasse enthält die Attribute (z. B. Preis) und Operationen (z. B. PreisFestlegen), die von allen angebotenen Waren verwendet werden.

Nach dem Definieren der übergeordneten Klasse wird für jeden Warentyp (z. B. Bücher und DVDs) eine untergeordnete Klasse (auch als Unterklasse bezeichnet) erstellt. Die Buchklasse verwendet die Attribute und Operationen der Bestandsklasse (Inventory) und fügt weitere Attribute (z. B. Autor) und Operationen (z. B. AutorFestlegen) hinzu. Die DVD-Klasse verwendet ebenfalls die Attribute und Operationen der Bestandsklasse, aber sie fügt andere Attribute (z. B. Hersteller) und andere Operationen (z. B. HerstellerFestlegen) hinzu als die Buchklasse.

Dies ist eine Darstellung des im vorherigen Abschnitt beschriebenen Beispiels.
Zugehörige Tasks
Beziehungen zu Diagrammen hinzufügen
Nutzungsbedingungen | Feedback
(C) Copyright IBM Corporation 2004, 2005. Alle Rechte vorbehalten.