UML-Klassendiagramm (Sichtbarkeiten, Aggregation vs. Komposition), Sequenzdiagramm & Use Cases.
Die Unified Modeling Language (UML) ist das universelle Dokumentations- und Modellierungswerkzeug in allen IHK-Abschlussprüfungen für Anwendungsentwickler.
| Symbol | Sichtbarkeit / Beziehung | Bedeutung & Beispiel |
|---|---|---|
+ | public | Von überall im System zugänglich. |
- | private | Nur innerhalb der eigenen Klasse sichtbar (Kapselung!). |
# | protected | Nur in eigener Klasse und abgeleiteten Unterklassen sichtbar. |
~ | package | Nur innerhalb des selben Pakets/Namespaces sichtbar. |
| $\longrightarrow$ | Assoziation | Verbindung/Beziehung ("nutzt ein"). Multiplizitäten: 1..*, 0..1. |
| $\diamondsuit\hspace{-4pt}-$ | Aggregation (weiße Raute) | Teil-Ganzes-Beziehung ("hat ein"). Teile können unabhängig vom Ganzen existieren (z. B. Abteilung $\diamondsuit$ Mitarbeiter). |
| $lacklozenge\hspace{-4pt}-$ | Komposition (schwarze Raute) | Existenzabhängige Teil-Ganzes-Beziehung. Stirbt das Ganze, sterben auch alle Teile (z. B. Rechnung $lacklozenge$ Rechnungspositionen). |
| $ riangle\hspace{-4pt}-$ | Generalisierung / Vererbung | Unterklasse erbt von Basisklasse ("ist ein", z. B. Manager $ riangle$ Mitarbeiter). |
Stellt den zeitlichen Ablauf von Methodenaufrufen dar:
- Lebenslinie (Lifeline): Gestrichelte vertikale Linie eines Objekts.
- Aktivierungsbalken: Schmaler Balken auf der Lebenslinie zeigt, wann das Objekt aktiv Code ausführt.
- Synchrone Nachricht: Durchgezogener Pfeil mit gefüllter Spitze $
ightarrow$ (Aufrufer blockiert und wartet).
- Asynchrone Nachricht: Durchgezogener Pfeil mit offener Spitze $
ightharpoonup$ (Aufrufer läuft sofort weiter).
- Antwortnachricht: Gestrichelter Pfeil $<--$.
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
Stellen Sie die Klasse als UML-Klassendiagramm nach DIN/OMG-Standard dar und beachten Sie die korrekten Sichtbarkeitssymbole.
Unterscheiden Sie Aggregation und Komposition anhand von grafischer Darstellung und Lebensdauer-Abhängigkeit und ordnen Sie die Beziehungen der Klassen begründet zu.
Erläutern Sie die Elemente eines UML-Sequenzdiagramms (Lebenslinie, Aktivierungsbalken, synchrone Nachricht, asynchrone Nachricht, Antwortnachricht).
Vergleichen Sie die Modellierung von Kontrollstrukturen im UML-Aktivitätsdiagramm (Entscheidungsknoten / Raute, Guards) mit strukturiertem Pseudocode (WENN-DANN-SONST) und erläutern Sie die Funktion von Fork- und Join-Knoten (Synchronisationsbalken) bei parallelen Abläufen.