Hans-Jürgen Steffens Systemanalyse SS 04 1
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 2
Akteure ermitteln
Aus Interview mit Auftraggeber / Pflichtenheft:
• Verkäufer
• Kunde
• Fahrer
• Manager
Hans-Jürgen Steffens Systemanalyse SS 04 3
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 4
Aufgaben der Akteure: Kunde
Bestellung aufgeben
• Über Internet Über Bestellstatus informieren
• Über Internet
Hans-Jürgen Steffens Systemanalyse SS 04 5
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 6
Aufgaben der Akteure: Manager
Tageseinnahmen der Fahrer abrechnen Personaleinsatz planen Auswertungen erstellen
Hans-Jürgen Steffens Systemanalyse SS 04 7
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 8
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 9
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 10
Erster Entwurf Use Case Diagramm (1)
Verkäufer
Fahrer
Bestellungaufnehmen
Menü fertig stellen
Über Bestellstatusinformieren
Arbeitsbeginnerfassen
Arbeitsendeerfassen
Tour als inAuslieferung melden
Tour zurückmelden
Informations-System Pizza-Service
Hans-Jürgen Steffens Systemanalyse SS 04 11
Use Case Bestellung aufnehmen
Name: Bestellung aufnehmen
Vorbedingung: -
Nachbed. Erfolg: Bestellung aufgenommen und bestätigt
Nachb. Misserf.: Bestellung nicht aufgenommen
Akteure: Verkäufer
Ausl. Ereignis: Anruf Kunde
Ablauf: 1. Aufgrund des Kundennamens und ggf. Vorname, Straße, Hausnr. wählt der Verkäufer den Kunden aus der Kundenliste im System aus. Er fragt den Kunden, ob die Daten stimmen. Ggf. korrigiert er die Daten.
2. Der Verkäufer nimmt die Bestellung des Kunden entgegen, indem er im System aus einer elektronischen Speisekarte die Speisen auswählt und jeweils die Menge einträgt.
3. Das System ermittelt den Preis und – aufgrund der vorliegenden Bestellungen, der geplanten Fahrten und der Entfernung zum Zielort – die voraussichtliche Dauer.
4. Der Verkäufer bestätigt – nach Rückfrage beim Kunden – die Bestellung und druckt einen Auftrag für die Küche aus.
Alternativen 1a) Falls es sich um einen Neukunden handelt, erfasst der Verkäufer die Kundendaten. In diesem Fall prüft das System, ob die Adresse innerhalb des Liefergebiets liegt. Falls nicht, wird die Bestellannahme beendet.
2a) Falls eine Speise ausgegangen ist, wird ihm dies bei der Auswahl angezeigt, und er kann die Speise nicht in die Bestellung aufnehmen. Stattdessen wird ein Ersatzgericht vorgeschlagen, das er dem Kunden anbieten kann.
5.
Hans-Jürgen Steffens Systemanalyse SS 04 12
Use Case Menü fertig stellen
Name: Menü fertig stellen
Vorbedingung: Speisen sind gekocht
Nachbed. Erfolg: Menü ist fertig gemeldet und zur Auslieferung bereit
Nachb. Misserf.: Menü konnte nicht fertig gemeldet werden (Verzögerung, Speise ausgegangen)
Akteure: Verkäufer
Ausl. Ereignis: Speisen sind gekocht
Ablauf: 1. Verkäufer wählt fertig zu stellendes Menü aus Liste aus 2. Er bestätigt die Fertigstellung 3. Das System druckt die Rechnung für den Fahrer aus
Alternativen: 1a) Falls es ein Problem gibt, ändert/storniert der Verkäufer die Bestellung entsprechend (ggf. nach Rückfrage beim Kunden)
1.
Hans-Jürgen Steffens Systemanalyse SS 04 13
Use Case Tour als in Auslieferung melden
Name: Tour als in Auslieferung melden
Vorbedingung: Menüs zur Tour sind fertig gemeldet
Nachbed. Erfolg: Tour ist als in Auslieferung gemeldet
Nachb. Misserf.: Tour nicht (vollständig) als in Auslieferung gemeldet
Akteure: Fahrer
Ausl. Ereignis: Aktion des Fahrers
Ablauf: 1. Fahrer wählt Tour aus Liste aus 2. Er bestätigt, dass die Tour in Auslieferung ist
Alternativen: 2a) Im Falle eines Problems (z. B. ein Menü ist nicht fertig) ändert er ggf. die Tour (z. B. Entfernung des nicht fertigen Menüs), weiter mit 2.
3.
Hans-Jürgen Steffens Systemanalyse SS 04 14
Use Case Tour zurück melden
Name: Tour zurück melden
Vorbedingung: Tour ist als in Auslieferung gemeldet
Nachbed. Erfolg: Tour zurück gemeldet
Nachb. Misserf.: Tour nicht (vollständig) zurück gemeldet
Akteure: Fahrer
Ausl. Ereignis: Aktion des Fahrers
Ablauf: 1. Fahrer wählt Tour aus Liste aus 2. Er bestätigt, dass die Tour vollständig ausgeliefert wurde
Alternativen: 2a) Im Falle eines Problems (z. B. ein Menü konnte nicht ausgeliefert werden), kann er einzelne Menüs zurück melden oder nicht zurück melden
3.
Hans-Jürgen Steffens Systemanalyse SS 04 15
Use Case Über Bestellstatus informieren
Name: Über Bestellstatus informieren
Vorbedingung:
Nachbed. Erfolg: Bestellstatus und voraussichtliche Dauer ermittelt
Nachb. Misserf.: -
Akteure:
Ausl. Ereignis: Nachfrage des Kunden
Ablauf: 1. Auswahl aus Liste der Bestellungen 2. System zeigt Bestellstatus (erfasst, fertig gestellt, in Auslieferung, ausgeliefert)
an 3. System ermittelt die aufgrund der aktuellen Daten voraussichtliche Dauer
Alternativen:
4.
Hans-Jürgen Steffens Systemanalyse SS 04 16
Erster Entwurf Use Case Diagramm (2)
ManagerKunde
Im Internet überBestellstatus informieren
Bestellung überInternet aufgeben
TageseinnahmenFahrer abrechnen
Personaleinsatzplanen
Auswertungenerstellen
Informations-System Pizza-Service
Hans-Jürgen Steffens Systemanalyse SS 04 17
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 18
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
Bestellungaufnehmen
Neukunde anlegen
Ersatz für ausgegangeSpeise vorschlagen
«extend»
«extend»
Dauer ermitteln
Speise suchen
«include»
«include»
Hans-Jürgen Steffens Systemanalyse SS 04 19
Use Case Dauer ermitteln
Name: Dauer ermitteln
Vorbedingung:
Nachbed. Erfolg: Menü zu Tour zugeordnet und Dauer ermittelt
Nachb. Misserf.: -
Akteure:
Ausl. Ereignis: Bestell- und Kundendaten erfasst
Ablauf: 1. Aufgrund vorliegender Bestellungen, voraussichtlicher Rückkunft der Fahrer, Entfernung des Ortes wird das Menü ggf. mit einem anderen zu einer gemeinsamen Tour zusammengefasst und die voraussichtliche Dauer berechnet.
Alternativen:
2.
Hans-Jürgen Steffens Systemanalyse SS 04 20
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
Bestellungstornieren/ändern
Verzögerungbearbeiten
Verkäufer
Bestellung überInternet stornieren/ändern
Kunde
Hans-Jürgen Steffens Systemanalyse SS 04 21
Use Case Verzögerung bearbeiten
Name: Verzögerung bearbeiten
Vorbedingung: Bestellung liegt vor
Nachbed. Erfolg: Bestellstatus und voraussichtliche Dauer ermittelt
Nachb. Misserf.: -
Akteure: Verkäufer
Ausl. Ereignis: System ermittelt, dass Verspätung vorliegt (z. B. Menü nicht rechtzeitig fertig gemeldet, nicht rechtzeitig in Auslieferung gemeldet)
Ablauf: 1. Verkäufer wird über Verspätung und Art der Verspätung informiert.
Alternativen:
2.
Hans-Jürgen Steffens Systemanalyse SS 04 22
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
Speise ausgegangenmelden
Speise wiederverfügbar melden
Speisekarte pflegen
Verkäufer
Manager
Hans-Jürgen Steffens Systemanalyse SS 04 23
Generalisierungen
Ebenso:
• Über Bestellstatus informieren
• Bestellung ändern / stornieren
Bestellungaufnehmen
Bestellen
Bestellung überInternet aufgeben
KundeVerkäufer
Hans-Jürgen Steffens Systemanalyse SS 04 24
Beschreibung bei Generalisierung
Name: Bestellen
Nachbed. Erfolg: Bestellung aufgenommen und bestätigt
Nachb. Misserf.: Bestellung nicht aufgenommen
Ausl. Ereignis: Bestellwunsch
Ablauf: 1. Auswahl Kundendaten, ggf. ändern 2. UC Speise suchen 3. Speisen auswählen. 4. System ermittelt Preis. 5. UC Dauer ermitteln. 6. Actor schließt Bestellung ab. 7. Auftrag für Küche wird ausgedruckt
Alternativen 1a) Falls es sich um einen Neukunden handelt - UC Neukunde anlegen
3a) Falls Speise ausgegangen, kann sie nicht gewählt werden – UC Ersatz für ausgegangene Speise vorschlagen
8.
Hans-Jürgen Steffens Systemanalyse SS 04 25
Beschreibung der Spezialisierungen
Nur Änderungen gegenüber Generalisierung beschreiben:
Name: Bestellung aufnehmen (Spezialisierung von Bestellen)
Nachbed. Erfolg: Bestellung aufgenommen und bestätigt
Nachb. Misserf.: Bestellung nicht aufgenommen
Akteure: Verkäufer
Ausl. Ereignis: Kunde ruft an
Ablauf: Änderung gegenüber UC Bestellen 1a) Verkäufer wählt Kundendaten aus Liste aus
Name: Bestellung über Internet aufgeben (Spezialisierung von Bestellen)
Nachbed. Erfolg: Bestellung aufgenommen und bestätigt
Nachb. Misserf.: Bestellung nicht aufgenommen
Akteure: Kunde
Ausl. Ereignis: Aufruf Bestellseite im Internet
Ablauf: Änderung gegenüber UC Bestellen: 1a) Einloggen des Kunden mit Kunden-Nr., ggf. Ändern Kundendaten
Hans-Jürgen Steffens Systemanalyse SS 04 26
Gesamt-Use Case-Diagramm (Teil 1)
Bestellungaufnehmen
Bestellung überInternet aufgeben
KundeVerkäufer
Bestellen
Neukunde anlegen
Ersatz für ausgegangeSpeise vorschlagen
«extend»
«extend»
Dauer ermittelnSpeise suchen
«include» «include»
Bestellungstornieren/ändern
Bestellung überInternet stornieren/ändernBestellung direkt
stornieren/ändern
«extend»«include» «include»
Über Bestellstatusinformieren
Im Internet überBestellstatus informieren
Direkt überBestellstatus informieren
«include»
Hans-Jürgen Steffens Systemanalyse SS 04 27
Gesamt-Use Case-Diagramm (Teil 2)
Tour als inAuslieferung melden
Verkäufer
Fahrer
Arbeitsbeginnerfassen
Arbeitsendeerfassen
Tour zurückmelden
Menü fertig stellen Verzögerungbearbeiten Speise ausgegangen
melden Speise wiederverfügbar melden
Speisekarte pflegen
Manager
TageseinnahmenFahrer abrechnen
Personaleinsatzplanen
Auswertungenerstellen
Hans-Jürgen Steffens Systemanalyse SS 04 28
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 29
Übungsfragen
Erarbeiten Sie eine oder mehrere der fehlenden Use Case-Beschreibungen
Top Related