4. Vorlesung: Use Case Diagramme Fallbeispiel Akteure ermitteln Use Cases ermitteln: Über Aufgaben der Akteure Über Ereignisliste Über Ziele und Aufgabenbeschreibungen Beschreibungen Sonderfälle Zerlegung komplexer Use Cases Generalisierungen Gesamt-Use Case-Diagramm Hans-Jürgen Steffens Systemanalyse SS 04
Akteure ermitteln Aus Interview mit Auftraggeber / Pflichtenheft: Verkäufer Kunde Fahrer Manager Hans-Jürgen Steffens Systemanalyse SS 04
Aufgaben der Akteure: Verkäufer Bestellungen aufnehmen i.d.R. telefonisch Menü fertigstellen Menü bereit zur Auslieferung melden Rechnung und Anfahrthinweise ausdrucken Über Bestellstatus informieren Wenn Kunde anruft und fragt, wo seine Pizza bleibt Arbeitsbeginn erfassen Arbeitsende erfassen Hans-Jürgen Steffens Systemanalyse SS 04
Aufgaben der Akteure: Kunde Bestellung aufgeben Über Internet Über Bestellstatus informieren Hans-Jürgen Steffens Systemanalyse SS 04
Aufgaben der Akteure: Fahrer Menü als in Auslieferung melden Bei Abfahrt Tour zurückmelden Arbeitsbeginn erfassen Arbeitsende erfassen Hans-Jürgen Steffens Systemanalyse SS 04
Aufgaben der Akteure: Manager Tageseinnahmen der Fahrer abrechnen Personaleinsatz planen Auswertungen erstellen Hans-Jürgen Steffens Systemanalyse SS 04
Ermittlung von Use Cases über Ereignis-Liste Kunde will telefonisch bestellen Kunde will telefonisch Auskunft über Bestellung Kunde will über Internet bestellen Kunde will über Internet Auskunft über Bestellung Menü ist fertig Menü wird vom Fahrer übernommen Fahrer meldet sich von Tour zurück Arbeitsbeginn Fahrer / Verkäufer Arbeitsende Fahrer / Verkäufer Zeitpunkt für wöchentl. Personalplanung Manager will Auswertung erstellen Aufgabe: Ordnen Sie die vorher ermittelten Aufgaben den Ereignissen zu! Hans-Jürgen Steffens Systemanalyse SS 04
Ermittlung von UC über Ziele / Aufgabenbeschr. Ziele (aus Pflichtenheft): Bestellaufnahme und -abwicklung Abrechnung Bestellung über Internet Arbeitszeiterfassung Statistische Auswertungen Erfassen und Information über Bestellstatus Personalplanung Ermittlung Auslieferungszeit Routenoptimierung Aus diesen Zielen lassen sich die vorher beschriebenen Aufgaben ableiten Für die letzten beiden Ziele ist zu untersuchen, ob eigene Use Cases gebildet oder ob diese im Rahmen anderer Use Cases (welcher?) berücksichtigt werden sollten. Hans-Jürgen Steffens Systemanalyse SS 04
Fazit bzgl. Ermittlung von Use Cases Die drei Möglichkeiten zur Ermittlung von Use Cases (über Akteure, Ereignisliste und Ziele) hängen eng miteinander zusammen. In der Regel wird man mit einer Betrachtungsart beginnen und bei der Ausarbeitung der Use Cases die anderen Fragestellungen mit einbeziehen. Hans-Jürgen Steffens Systemanalyse SS 04
Erster Entwurf Use Case Diagramm (1) Hans-Jürgen Steffens Systemanalyse SS 04
Use Case Bestellung aufnehmen Hans-Jürgen Steffens Systemanalyse SS 04
Use Case Menü fertig stellen Hans-Jürgen Steffens Systemanalyse SS 04
Use Case Tour als in Auslieferung melden Hans-Jürgen Steffens Systemanalyse SS 04
Use Case Tour zurück melden Hans-Jürgen Steffens Systemanalyse SS 04
Use Case Über Bestellstatus informieren Hans-Jürgen Steffens Systemanalyse SS 04
Erster Entwurf Use Case Diagramm (2) Hans-Jürgen Steffens Systemanalyse SS 04
Sonderfälle Zu UC Bestellung aufnehmen: Speise ist ausgegangen Kunde wohnt außerhalb des Liefergebiets Neukunde, Kundendaten müssen erst erfasst werden Zu UC Lieferung fertig stellen: Menü ist verzögert / kann nicht fertig gestellt werden Zu UC Tour zurückmelden: Menü konnte nicht zugestellt werden Allgemein: Kunde möchte Bestellung stornieren oder ändern (telefonisch oder über Internet) Tour wird nicht rechtzeitig als in Auslieferung gemeldet (Fahrer kam zu spät zurück, Essen wird kalt) Hans-Jürgen Steffens Systemanalyse SS 04
Behandlung v. Sonderfällen und komplexen UCs Bei Sonderfällen ist zu entscheiden, ob diese in Form von eigenen Use Cases modelliert werden sollten (z. B. eigene Abläufe). Ebenso bei der Aufteilung eines UC über include Beispiel: Bestellung aufnehmen Neukunde anlegen «extend» Speise suchen «include» «extend» Bestellung Ersatz für ausgegange aufnehmen Speise vorschlagen «include» Dauer ermitteln Hans-Jürgen Steffens Systemanalyse SS 04
Use Case Dauer ermitteln Hans-Jürgen Steffens Systemanalyse SS 04
Weitere UCs für Sonderfälle Für die allgemeinen Sonderfälle sind eigene Use Cases notwendig Kunde möchte Bestellung stornieren oder ändern Tour wird nicht rechtzeitig als in Auslieferung gemeldet Hans-Jürgen Steffens Systemanalyse SS 04
Use Case Verzögerung bearbeiten Hans-Jürgen Steffens Systemanalyse SS 04
Weitere erforderliche Use Cases Untersuchung der Use Cases unter der Fragestellung „wo kommt die jeweilige Information her?“ Wie wird definiert, dass eine Speise ausgegangen ist? Wo kommt die Speisekarte her? Weitere Use Cases Hans-Jürgen Steffens Systemanalyse SS 04
Generalisierungen Ebenso: Über Bestellstatus informieren Bestellung ändern / stornieren Hans-Jürgen Steffens Systemanalyse SS 04
Beschreibung bei Generalisierung Hans-Jürgen Steffens Systemanalyse SS 04
Beschreibung der Spezialisierungen Nur Änderungen gegenüber Generalisierung beschreiben: Hans-Jürgen Steffens Systemanalyse SS 04
Gesamt-Use Case-Diagramm (Teil 1) Neukunde anlegen «extend» Bestellung Bestellung über Bestellen aufnehmen Internet aufgeben «include» «include» «extend» Ersatz für ausgegange Speise suchen Dauer ermitteln Speise vorschlagen Verkäufer Kunde «extend» «include» «include» «include» Bestellung über Bestellung direkt Internet stornieren/ändern stornieren/ändern Bestellung stornieren/ändern Direkt über Über Bestellstatus Im Internet über Bestellstatus informieren informieren Bestellstatus informieren Hans-Jürgen Steffens Systemanalyse SS 04
Gesamt-Use Case-Diagramm (Teil 2) Hans-Jürgen Steffens Systemanalyse SS 04
Zusammenfassung Es wurde anhand der Beispielanwendung gezeigt, wie Use Cases gefunden, strukturiert und beschrieben werden können Die drei Möglichkeiten zur Ermittlung von Use Cases (über Akteure, Ereignisliste und Ziele) hängen eng miteinander zusammen und ergänzen sich Bei Sonderfällen und komplexen Use Cases muss entschieden werden, ob eigene Use Cases gebildet und über extend bzw. include eingebunden werden Weitere erforderliche Use Cases findet man, indem man fragt, wo erforderliche Informationen erfasst werden. Use Cases mit sehr vielen Gemeinsamkeiten können generalisiert werden. In der Beschreibung der Spezialisierungen sind dann nur noch die Abweichungen vom generalisierten Use Case erforderlich. Hans-Jürgen Steffens Systemanalyse SS 04
Übungsfragen Erarbeiten Sie eine oder mehrere der fehlenden Use Case-Beschreibungen Hans-Jürgen Steffens Systemanalyse SS 04