UML-Klassendiagramm und Sequenzdiagramm lesen und zeichnen
Kurz: Das Klassendiagramm zeigt den statischen Aufbau eines Programms (Klassen und Beziehungen), das Sequenzdiagramm den zeitlichen Ablauf der Nachrichten zwischen Objekten.
Genauer: Die UML (Unified Modeling Language) ist eine Zeichensprache für Software-Entwürfe. In IHK-Prüfungen und Projektdokumentationen kommen vor allem diese beiden Diagramme vor. Sie helfen, Ideen im Team vor dem Programmieren abzustimmen.
Im Detail
Klassendiagramm
Eine Klasse ist ein Kasten mit drei Teilen: Name, Attribute, Methoden.
+--------------------+
| Kunde |
+--------------------+
| - name: String |
| - kundennr: int |
+--------------------+
| + bestellen(): void|
+--------------------+
Sichtbarkeit: + öffentlich, - privat, # geschützt. Beziehungen:
- Assoziation (Linie): „kennt“, mit Multiplizität (
1,0..*,1..*). - Vererbung (Pfeil mit leerem Dreieck): „ist ein“.
- Aggregation (leerer Rhombus) und Komposition (gefüllter Rhombus): „besteht aus“, bei Komposition hängt die Lebensdauer des Teils am Ganzen.
- Abhängigkeit (gestrichelter Pfeil).
Abstrakte Klassen und Interfaces werden kursiv bzw. mit
<<interface>>markiert.
Sequenzdiagramm
Zeigt, wer wann wem welche Nachricht schickt. Oben stehen die Lebenslinien (senkrecht gestrichelt) der Beteiligten, die Zeit läuft nach unten. Pfeile sind Aufrufe, gestrichelte Pfeile Antworten.
Benutzer -> Shop: bestellen(warenkorb)
Shop -> Zahlung: zahlen(betrag)
Zahlung --> Shop: ok
Shop --> Benutzer: Bestätigung
Mit Fragmenten werden Alternativen (alt), Schleifen (loop) und Optionen (opt) dargestellt.
Wann welches Diagramm?
- Klassendiagramm: Datenstruktur und Verantwortlichkeiten.
- Sequenzdiagramm: Ablauf einer Funktion über mehrere Klassen/Systeme (zum Beispiel Login, Bestellung).
- Anwendungsfalldiagramm (Use Case): Wer nutzt das System wofür?
- Aktivitätsdiagramm: Ablauf mit Verzweigungen, ähnlich einem Flussdiagramm.
- Zustandsdiagramm: Zustände und Übergänge (Bestellung: neu → bezahlt → versandt).
Tipps
Zeichne nur das Nötige, benenne Elemente wie im Code, halte die Richtung der Pfeile konsistent und beschrifte Multiplizitäten. Werkzeuge: draw.io, PlantUML, Mermaid, StarUML, Lucidchart. Textbasierte Werkzeuge (PlantUML, Mermaid) lassen sich versionieren und im Wiki einbetten.
Siehe auch: UML, Modellierung (UML, EPK, BPMN), IHK-Projektdokumentation