Ein Klassendiagramm ist ein Strukturdiagramm der Unified Modeling Language (UML) zur grafischen Darstellung (Modellierung) von Klassen, Schnittstellen sowie deren Beziehungen.
Das Symbol zeigt ein Diagramm mit einer symbolischen Klasse.
Klassendiagramme sind der zentrale Diagrammtyp der UML. Sie beschreiben die Klassen eines Systems, ihre Eigenschaften, Operationen und die Beziehungen zwischen den Klassen. Klassendiagramme werden in allen Phasen der Softwareentwicklung eingesetzt.
Die modellierten Inhalte und das verwendete Vokabular müssen sich an dem Know-how der beteiligten Personengruppen orientieren. Ein Klassendiagramm modelliert einen Teilausschnitt der realen Welt. Es werden nur die Klassen und Eigenschaften berücksichtigt, die zur Beschreibung des Problembereichs benötigt werden. Bei der Modellierung von Klassendiagrammen wird in der Regel zwischen dem Analysemodell und dem Designmodell unterschieden:
Analysemodell
Klassendiagramme in der Sichtweise der Analyse stellen dar, was das System aus Anwendersicht leisten soll. Sie bilden die Klassen, Attribute, Operationen und ihre Beziehungen ab, die das spätere Softwaresystems aus der Sicht des fachlichen Bereiches, den es abdecken soll, enthalten muss.
Designmodell
Im Designmodell wird das Analysemodell auf die Implementierungstechnologie abgebildet. Klassendiagramme in der Sichtweise Design stellen dar, wie das System technisch aufgebaut sein muss, damit es die in der Analyse geforderten Eigenschaften realisieren kann. Die in der Systemanalyse erkannten und dokumentierten Strukturen werden um die Informationen, die nötig sind um das fachliche Modell zu implementieren, erweitert.
Die folgenden Modellelemente können als Knoten und Kanten in Klassendiagrammen dargestellt werden:
| Symbol | Element | Beschreibung |
|---|---|---|
|
Paket | Ein Paket fasst eine Menge von Modellelementen zu einer Gruppe zusammen und bildet einen Namensraum für sie. Pakete können andere Pakete als Unterpakete enthalten. |
|
Komponente | Eine Komponente definiert einen modularen Teil eines Systems, der seinen Inhalt kapselt und eine definierte Funktionalität anbietet. |
|
Klasse | Eine Klasse enthält die Beschreibung und die Struktur von Objekten, die mit ihrer Hilfe erzeugt werden können (Schablone für Objekte). Eine Klasse wird durch ihre Attribute und Operationen definiert. |
|
Schnittstelle | Eine Schnittstelle realisiert die Feature-Benutzung zwischen Nutzer und Anbieter. |
|
Datentyp | Ein Datentyp fasst konkrete Wertebereiche und darauf definierte Operationen zu einer Einheit zusammen. |
|
Aufzählungstyp | Ein Aufzählungstyp ist ein Datentyp mit einem endlichen Wertebereich. |
|
Primitiver Typ | Ein Primitivtyp bezieht sich auf Algebren und Operationen, die außerhalb des Modells definiert sind, z. B. durch Programmiersprachen oder die Mathematik. |
|
Attribut | Ein Attribut ist ein Element, das in jedem Objekt einer Klasse identisch vorkommt. Sein Typ dient der Beschränkung des Wertebereichs eines Attributs. |
|
Operation | Operationen realisieren das Verhalten von Klassen und definieren, von welcher Art die Werte sind, die ausgetauscht werden (Parameter). |
|
Aufgezählter Wert | Aufgezählte Werte definieren durch die Deklaration des Typs mit Namen alle Werte des Aufzählungstyps. Dabei wird auch eine Reihenfolge festgelegt. |
|
Generalisierung | Generalisierungen, Assoziationen, Abhängigkeiten, Verwendungen, Abstraktionen, Realisierungen usw. drücken unterschiedliche Arten von Beziehungen zwischen den Klassen aus und beschreiben dadurch die Struktur der Klassen. |
|
Assoziation | |
|
Abhängigkeit | |
|
Verwendung | |
|
Abstraktion | |
|
Realisierung |
Innovator X Generation 11 R4 - Copyright © 2011-2012 - MID GmbH Nürnberg - DIN EN 9001 zertifiziert - Alle Rechte vorbehalten.