Use-Case-Diagramm: Anwendungsfälle und Akteure darstellen
Kurz: Ein Use-Case-Diagramm zeigt, welche Akteure ein System nutzen und welche Funktionen es ihnen bietet; es ist ein einfacher, verständlicher Überblick für Anforderungen.
Genauer: Das Anwendungsfalldiagramm (Use-Case-Diagramm) der UML beantwortet: Wer nutzt das System wofür? Es zeigt keine Abläufe und keine Technik, sondern den Funktionsumfang aus Nutzersicht. Daher eignet es sich gut für Lastenheft, Gespräche mit Kunden und IHK-Dokumentation.
Im Detail
Bausteine
- Akteur (Strichmännchen): Rolle außerhalb des Systems (Kunde, Admin, Zahlungsdienst, anderes System).
- Anwendungsfall (Ellipse): eine Leistung für einen Akteur („Bestellung aufgeben“, „Konto sperren“), als Verb + Objekt benannt.
- Systemgrenze (Rechteck): Was gehört zum System, was nicht.
- Assoziation (Linie): Akteur nutzt Anwendungsfall.
- «include»: ein Anwendungsfall enthält immer einen anderen („Bestellung“ → „Anmelden“).
- «extend»: optionale Erweiterung („Bestellung“ ← „Gutschein einlösen“).
- Generalisierung: Spezialfall (Premiumkunde ist ein Kunde).
Beispiel (Online-Shop)
Kunde ──── Artikel suchen
Kunde ──── Bestellung aufgeben ──«include»→ Anmelden
←«extend»── Gutschein einlösen
Admin ──── Artikel pflegen
Zahlungsdienst ── Zahlung abwickeln
Die Akteure stehen außerhalb, die Anwendungsfälle innerhalb der Systemgrenze.
Schreiben und Prüfen
- Pro Anwendungsfall eine kurze Beschreibung: Auslöser, Vorbedingung, Ablauf (Hauptszenario), Alternativ- und Fehlerfälle, Ergebnis, Nachbedingung. Daraus werden User Stories, Testfälle und Aktivitäts-/Sequenzdiagramme.
- Benennung aus Nutzersicht, nicht technisch („Passwort zurücksetzen“ statt „Datenbankeintrag ändern“).
- Nicht zu detailliert: ein Diagramm mit 5 bis 15 Anwendungsfällen genügt für den Überblick.
- Alle Akteure und Anwendungsfälle mit dem Kunden prüfen.
Grenzen und Werkzeuge
Use-Case-Diagramme zeigen keine Reihenfolge, keine Daten, keine Qualitätsanforderungen (Leistung, Sicherheit); diese kommen in Text, Aktivitätsdiagramme, Datenmodell, Nichtfunktionale Anforderungen. Werkzeuge: draw.io, PlantUML, Mermaid, StarUML, Lucidchart. Textbasiert (PlantUML) lässt sich im Repository versionieren.
Siehe auch: UML-Klassen- und Sequenzdiagramm, Modellierung (UML, EPK, BPMN), Lastenheft und Pflichtenheft, User Stories