Definition eines Klassendiagramms (UML 1.5)
Nach oben zu UML 1.5-Klassendiagramm
Klassendiagramme sind die häufigsten Diagramme in objektorientierten Modellierungssystemen.
Inhaltsverzeichnis
Definition
Ein Klassendiagramm liefert einen Überblick über die verschiedenen Klassen, Schnittstellen und Kollaborationen eines Systems und ihre Beziehungen untereinander. Klassendiagramme sind statisch: sie zeigen lediglich an, welche Elemente interagieren, aber nicht was dabei geschieht.
In der UML-Notation wird eine Klasse als in mehrere Teile gegliedertes Rechteck dargestellt: Klassenname, Attribute (Felder), Operationen (Methoden) usw.:
In der Modellierung ist das Klassenrechteck weiter in einzelne Abschnitte für Felder, innere Klassen, Eigenschaften, Operationen usw. unterteilt:
Namen von abstrakten Klassen und Schnittstellen werden kursiv angezeigt.
Beziehungen zwischen Klassen in Klassendiagrammen - Generalisierung (Implementierung), Abhängigkeit und Assoziation (einfache Assoziation, Aggregation, Komposition) - werden als Verbindungslinien dargestellt. Diese Beziehungen werden im Thema Beziehungen zwischen Elementen von Klassendiagrammen erläutert.
Klassendiagramme in Design- und Implementierungsprojekten
Sie können mit dem Modellierungstool sprachneutrale (UML) Klassendiagramme in Designprojekten oder sprachspezifische (Delphi oder C++) Klassendiagramme in Implementierungsprojekten erstellen. Beachten Sie bitte, dass unterschiedliche Elementgruppen für Klassendiagramme in UML-, Delphi- und C++-Projekten zur Verfügung stehen. Die Liste der verfügbaren Elemente finden Sie in Elemente für Klassendiagramme.
Bei Implementierungsprojekten werden sämtliche Diagrammelemente für Klassendiagramme sofort mit dem Quelltext synchronisiert.
Klassendiagrammtypen
In der Modellierung gibt es zwei Arten von Klassendiagrammen:
- Package-Diagramme (Namespace-Diagramme). Ein Diagramm mit diesem Typ repräsentiert den Inhalt eines Package (Namespace). In Designprojekten wird der Begriff Package-Diagramm, in Implementierungsprojekten der Begriff Namespace-Diagramm verwendet. Sie werden als XML-Dateien mit der Erweiterung
.txvpck
in dem UnterordnerModelSupport_%PROJEKTNAME%
der Projektgruppe gespeichert. - Logische Klassendiagramme. Ein Diagramm mit diesem Typ repräsentiert Klassen, die Beziehungen zwischen ihnen und die Member dieser Klassen. Diese Diagramme werden als XML-Dateien mit der Erweiterung
.txvcls
in dem UnterordnerModelSupport_%PROJEKTNAME%
der Projektgruppe gespeichert.
Das Modellierungstool erstellt automatisch ein Package-(Namespace-)Standarddiagramm für das Projekt und für jedes Unterverzeichnis im Projektverzeichnis. Das Package-(Namespace-)Standarddiagramm für das Projekt hat den Namen Vorgabe
. Andere automatisch erzeugte Namespace-(Package-)Standarddiagramme werden nach den jeweiligen Namespaces (Packages) benannt.
Sie erstellen logische Klassendiagramme manuell über das Kontextmenü der Diagramm- oder Modellansicht mit dem Befehl Hinzufügen > Klassendiagramm oder Hinzufügen > Anderes Diagramm.
Beispielklassendiagramm
Das folgende Klassendiagramm modelliert die Bestellung eines Kunden in einem Katalog. Die zentrale Klasse ist Order
. Mit ihr verknüpft sind Customer
, die die Bestellung vornimmt, und Payment
(Bezahlung). Es gibt drei Zahlungsarten: Cash
, Check
und Credit
. Die Bestellung enthält OrderDetails
(Posten) mit jeweils einer Item-Komponente (Artikel).
In diesem Beispiel werden drei Arten von Beziehungen verwendet:
- Assoziation: Beispielsweise repräsentiert
OrderDetail
einen Posten in jederOrder
-Komponente. - Aggregation (Assoziation): Im Beispieldiagramm hat
Order
eine Sammlung vonOrderDetails
. - Implementierung (Generalisierung):
Payment
ist eine Schnittstelle fürCash
,Check
undCredit
.