1) Phase 1: Konzeption (Anfordeung->Analyse->Design->Implementierung->Test)
Use Cases Modellierung:
Vorgehen: -Finde eine mögliche Systemsgrenze
-Finde Akteure
-Finde Anwendungsfälle
-Wiederhole bis ein stabiler Zustand erreicht ist
Systemgrenze:
1) zentrale Frage: Was gehört zu meinem system?
Was liegt ausserhalb?
2) definiert durch: Wer oder was benutzt das system?
⇒Akteure, die ausserhalb des Systems stehen
Was bietet das System den Nutzern?
⇒ Anwendungsfälle, die den Inhalt des Systems definieren
Akteure:
Ein Akteur ist eine Rolle, die eine externe Entität bei direkter Interaktion mit dem System spielt.
Akteure sind immer außerhalb der Systemgrenze.
Akteure finden
Fragen
Wer oder was benutzt das System?
Welche Rollen können die Benutzer spielen?
Wer installiert das System?
Wer oder was startet und beendet das System?
Wer wartet das System?
Welche Systeme interagieren mit diesem System?
Wer oder was erhält bzw. liefert Informationen?
Gibt es Dinge, die zu festen Zeiten passieren?
Anwendungsfälle
Definition nach UML Reference Manual:
Eine Abfolge von Aktionen, inkl. Alternativen und Fehlerbehandlungen, die
ein System, Untersystem oder Klasse bei Interaktion mit externen Aktoren
ausführen kann.
Kurz: Etwas, was das System für einen Akteur tun soll
Anwendungsfälle werden immer von einem Akteur gestartet
Anwendungsfälle werden immer aus Sicht der Akteure beschrieben
Normalerweise werden Anwendungsfälle auf Systemebene spezifiziert, die
Methode kann aber auch auf Teilsysteme oder sogar Klassen angewandt
werden
Anwendungsfälle finden
Fragen
Welche Funktionen erwartet ein bestimmter Akteur von dem
System?
Liste der Akteure durchgehen
Speichert und Liefert das System Informationen?
Welcher Akteur löst dieses Verhalten aus?
Was passiert, wenn das System den Zustand ändert (z.B. Starten
und Beenden)?
Werden Akteure benachrichtigt?
Wird das System durch externe Ereignisse beeinflusst?
Wer teilt dem System das mit?
Interagiert das System mit externen Systemen?
Erzeugt das System Berichte?
2) Phase 2: Entwurf (Anforderung->Analyse->Design->Implementierung->Test)
Ziel:
a) Analyse der Architektur
Use Cases mit Auswirkungen auf die Architektur genauer
betrachten
Hierarchische Gliederung in Subsysteme: Paket-Diagramme
Benötigte Basis-Mechanismen: Kollaborations-Diagramme
b) Analyse der Klassen
Verfeinerung und Präzisierung
c) ⇒ Statisches Modell
d) Analyse der Use Cases
Welche Analyseklassen interagieren, um diesen
Anwendungsfall umzusetzen?
Welche Nachrichten werden ausgetauscht?
Interaktions-Diagramme, Sequenz-Diagramme,
Kommunikations-Diagramme, Zeit-Diagramme
Verhalten spezifizieren: Aktivitäts-Diagramme
Fluss innerhalb eines Use Cases
Fluss zwischen Use Cases
e) ⇒ Dynamisches Modell