Use-Case
Aus 4webmaster.de
Ein Use-Case ("Anwendungsfall") ist ein Arbeitsgang, mit dem der User (oder ein maschineller Akteur) ein bestimmtes, einzelnes Ziel erreichen kann.
Damit kapselt ein Use-Case ein bestimmtes, nach außen wahrnehmbares und vollständiges Verhalten, inklusive Fehlerbehandlung und Sonderverhalten bei Spezialfällen.
Jede Einheit, die Verhalten realisieren und nach außen anbieten kann, kann auch Use-Cases haben: Systeme, Subsysteme und Komponenten, aber auch Klassen und Schnittstellen . In UML werden solche Einheiten als Classifier bezeichnet.
Zusammenhängende Use-Cases können in einem Use-Case-Diagramm dargestellt werden. Das Innere der Use-Cases bleibt dort verborgen:
Im Use-Case-Diagramm ist es irrelevant bzw. störend zu wissen, wie ein bestimmtes Verhalten erzielt wird. Es interessiert nur: WAS für ein Verhalten zeigt das System nach außen.
Ein Use-Case ist wie eine Klasse eine allgemeine Schablone für Verhalten. Die Reihenfolge der einzelnen Aktionen ist dabei nicht exakt festgelegt. Erst wenn der Use-Case von einer Akteur-Instanz instanziiert wird, wird der Handlungsablauf zu einem konkreten Szenario. Ein Szenario ist eine Instanz eines Use-Case.
Use-Case-Spezifikation
Die Beschreibung des Use-Case sollte das System als Black Box betrachten. Es wird nur das nach außen sichtbare Verhalten dargestellt. Alle internen Abläufe werden weggelassen. Denn die inneren Strukturen können sich ändern, die Beschreibung der Use-Cases soll unabhängig davon sein.
| Element | Beispiel | Beschreibung |
|---|---|---|
| Identifier | Change MainAddress | eindeutiger Identifier für den Use-Case. Die Namen sollten sprechend sein (Change MainAddress statt CMA o.ä.). Sinnvoll ist auch eine einheitliche Systematik bei den Namen, z.B. nach dem Schema Verb-Substantiv oder auch Subjekt-Prädikat-Objekt. Zusätzlich kann ein Nummerierungssystem ähnliche Use-Cases unterscheiden. |
| Akteure |
| Welche Akteure nehmen an diesem Use-Case teil? |
| Vorbedingungen & Auslöser |
| Welche Bedingungen müssen vor dem Ablauf des Use-Case erfüllt sein? Wie wird der Use-Case ausgelöst? Welcher Akteur initiiert ihn und instanziiert den Use-Case damit? |
| Handlungsablauf | * neue Adresse eingeben (einmalig) | Welche Aktionen werden ausgeführt? Grobe Skizze des Hauptpfades aus Usersicht, entscheidend ist die Interaktion zwischen Akteur und System. Interne Abläufe, die der Akteur nicht sehen kann, werden weggelassen. |
| Fehlerbehandlung |
| Was sind die wichtigsten Fehler, die auftreten können, und wie wird damit umgegangen? |
| Sonderfälle & Alternativen |
| Gibt es Sonderfälle, die berücksichtigt werden müssen? Alternative Handlungsabläufe? Interne Abläufe, die der Akteur nicht erfahren kann, werden wieder weggelassen. Der letzte Punkt des Beispiels ("alte Adresse auch sperren") widerspricht dieser Regel übrigens nicht, denn ganz unabhängig davon ob dem User die Sperrung direkt mitgeteilt wird oder nicht, hat sie doch zur Folge, dass der User sich in Zukunft nicht mehr einloggen kann. |
| Ergebnis |
| Welches Ergebnis hat der Use-Case aus Sicht des Aktors? D.h.
|
| Nachbedingungen |
| Wie sind die Zustände nach dem Ablauf des Use-Case? |