Modellierung mit UML - Teil 1

Klassendiagramme

Wir benutzen Klassendiagramme, um die Struktur des Systems zu beschreiben. Klassen sind Abstraktionen, die die allgemeine Struktur und das Verhalten eines Satzes von Objekten spezifizieren. Objekte sind Instanzen von Klassen, die während der Systemausführung erzeugt, bearbeitet und gelöscht werden. Ein Objekt hat einen Zustand, der die Werte seiner Attribute und seine Verbindungen zu anderen Objekten beinhaltet. Klassendiagramme beschreiben das System nach Objekten, Klassen, Attributen und ihren Assoziationen. So zeigt Bild 2ein Klassendiagramm, das die Elemente der Klasse EinfacheUhr beschreibt.

Die Klasse EinfacheUhr hat Assoziationen zu der Taste-Klasse, der Anzeigefeld-Klasse, der Zeit-Klasse und der Batterie-Klasse. Die Zahlen am Ende der Assoziationen geben die Kardinalität an, die ein Objekt der Klasse EinfacheUhr mit Objekten der assoziierten Klassen haben kann. Eine Instanz der Klasse EinfacheUhr hat also genau zwei Objekte der Klasse Taste, ein Objekt der Klasse Anzeigefeld, zwei Objekte der Klasse Batterie und ein Objekt der Klasse Zeit. In ähnlicher Weise sind alle Taste-, Anzeigefeld-, Zeit-, und Batterie-Objekte immer nur genau einem EinfacheUhr-Objekt zugeordnet. Auf der Analyse-Ebene stellen Assoziationen existierende Beziehungen dar. Zum Beispiel verlangt EinfacheUhr die korrekte Anzahl von Tasten, Anzeigefeld, Batterie und Zeit. In unserem Beispiel ist die Assoziation symmetrisch: Die Klasse Taste kann ihre Funktion nicht ohne die Klasse EinfacheUhr ausführen. UML erlaubt auch nur in eine Richtung zeigende Assoziationen, dazu später mehr. Auf der Implementierungsebene werden Assoziationen als Referenzen (beispielsweise Zeiger) auf Objekte verwirklicht.