UML (Unified Modeling Language)
Dieser Beitrag ist eine Begriffserklärung zu UML – inklusive Prüfungsfragen, Kernkomponenten und Tags.
In a Nutshell
UML ist eine standardisierte visuelle Sprache zur Modellierung von Software und Systemen. Sie hilft, Anforderungen, Entwurf und Kommunikation konsistent zu dokumentieren.
Kompakte Fachbeschreibung
UML trennt Struktur und Verhalten:
- Strukturdiagramme (z.B. Klassendiagramm, Paketdiagramm, Komponentendiagramm)
- Verhaltensdiagramme (z.B. Aktivitätsdiagramm, Sequenzdiagramm, Zustandsdiagramm)
Beziehungen:
- Assoziation
- Aggregation
- Komposition
- Generalisierung
Kardinalitäten (Multiplikitäten) beschreiben Beziehungen (z.B. 1, 0..1, 0..*). Mit OCL lassen sich Nebenbedingungen formal formulieren (Invarianten, Vor-/Nachbedingungen) – daraus können Tests abgeleitet werden.
Prüfungsrelevante Stichpunkte
- Strukturdiagramme vs Verhaltensdiagramme
- Beziehungen korrekt: Assoziation/Aggregation/Komposition/Generalisierung
- Kardinalitäten sind IHK-typischer Prüfpunkt
- OCL für präzise Bedingungen → Tests ableiten
- Zustände mit Guards modellieren
- Modelle versionieren/reviewen/abnehmen
Kernkomponenten
- Klasse/Attribut/Operation + Sichtbarkeit
- Beziehungen (Assoziation, Aggregation, Komposition)
- Multiplikitäten + Rollen
- Pakete/Namenräume
- Komponenten/Schnittstellen
- Aktivität (Entscheidung, Parallelität)
- Sequenz (Lifeline, Nachricht)
- Zustandsautomat (Guard, Entry/Exit)
- Stereotype/Profile
- OCL + Testableitung
Praxisbeispiel (Bibliothek)
Klassendiagramm:
Leser 1..* Ausleihe
Medium 1..* Ausleihe
Ausleihe: startdatum, enddatum
OCL Invariante:
enddatum > startdatum
Vorteile und Nachteile
Vorteile
- Gemeinsame Sprache für Fachbereich/Technik
- Frühere Fehlerentdeckung
- Bessere Testableitung
- Klare Dokumentation
Nachteile
- Einarbeitungsaufwand
- Gefahr überbordender Modelle
- Ohne Pflege verliert es Wert
Typische Prüfungsfragen (mit Kurzantwort)
- Hauptkategorien von UML-Diagrammen? Strukturdiagramme und Verhaltensdiagramme.
- Aggregation vs Komposition? Aggregation schwach; Komposition bindet Lebenszyklus.
- Wofür nutzt man OCL? Formale Nebenbedingungen → Tests.
Freie Antwort
Für die Prüfung gilt: lieber wenige Diagramme, dafür korrekt und konsistent. Kardinalitäten und Beziehungen müssen zu Geschäftsregeln passen. Modelle gehören versioniert und mit Anforderungen/Testfällen verknüpft.
Lernstrategie
- Klassendiagramm aus einem kleinen Projekt rekonstruieren.
- Für einen Use Case Aktivitäts- und Sequenzdiagramm erstellen.
- Kardinalitäten üben und begründen.
- Einheitliche Benennung/Kardinalitäten konsequent.