Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Hans-Jürgen Steffens Systemanalyse SS 041 9. Vorlesung: Fortsetzung Klassendiagramm für Fallbeispiel Entwicklung des Klassendiagramms aus Use Cases Fortsetzung.

Ähnliche Präsentationen


Präsentation zum Thema: "Hans-Jürgen Steffens Systemanalyse SS 041 9. Vorlesung: Fortsetzung Klassendiagramm für Fallbeispiel Entwicklung des Klassendiagramms aus Use Cases Fortsetzung."—  Präsentation transkript:

1 Hans-Jürgen Steffens Systemanalyse SS Vorlesung: Fortsetzung Klassendiagramm für Fallbeispiel Entwicklung des Klassendiagramms aus Use Cases Fortsetzung der 8. Vorlesung Komplettierung des Klassendiagramms Bildung von Packages

2 Hans-Jürgen Steffens Systemanalyse SS 042 Use Case Dauer ermitteln Operation dauerErmitteln() bei Klasse Bestellung Wovon hängt die voraussichtliche Dauer ab? Zubereitungszeit der Speisen –Es wird von einem Durchschnittswert ausgegangen, so dass diese Zeiten nicht gesondert hinterlegt werden müssen Wartezeit, bis Speisen zubereitet werden –Diese hängt von anderen Bestellungen ab (Kapazität der Küche sei konstant) Verfügbarkeit der Fahrer –Hängt ebenfalls von den anderen Bestellungen und voraussichtlichen Rückkunftzeit der entsprechenden Touren ab –Außerdem von der Zahl der anwesenden Fahrer (Es wird davon ausgegangen, dass die Zahl pro Schicht konstant ist) Entfernung zur Lieferadresse –Adressen werden Entfernungsbereichen (z. B. 5 min., 10 min.,...) zugeordnet Zusammenfassung von Speisen zu Touren (der genaue Algorithmus wird hier nicht betrachtet)

3 Hans-Jürgen Steffens Systemanalyse SS 043 Erweiterungen Klassendiagramm

4 Hans-Jürgen Steffens Systemanalyse SS 044 Weitere Use Cases UC Speise ausgegangen melden / Speise wieder verfügbar melden Entsprechende Operations der Klasse Speise UC Tour als in Auslieferung melden / Rückkunft melden Entsprechende Operations der Klasse Tour UC Über Bestellstatus informieren Operation status() der Klasse Bestellung. Ermittelt den Status aus UhrzeitFertigstellung und durch Aufruf der Operation status () der Klasse Tour, welche wiederum die Uhrzeiten auswertet. UC Arbeitsbeginn / Arbeitsende erfassen Klasse Mitarbeiter als Generalisierung der Klasse Fahrer Für jede geleistete Schicht wird eine Arbeitszeitmeldung mit Beginn und Ende (Jeweils volles Datum und Uhrzeit) angelegt.

5 Hans-Jürgen Steffens Systemanalyse SS 045 Arbeitszeitmeldungen

6 Hans-Jürgen Steffens Systemanalyse SS 046 Weitere Use Cases UC Personaleinsatz planen Operation mitarbeiterZuordnen ( ) der Klasse Schicht- Durchführung UC Speisekarte pflegen Nicht explizit modelliert (Nutzung der in der Analyse als gegeben vorausgesetzten get- und set-Operations zur Veränderung von Attributwerten bei der Klasse Speise und Kategorie).

7 Hans-Jürgen Steffens Systemanalyse SS 047 Use Case Tageseinnahmen Fahrer abrechnen Operation tageseinnahmenAbrechnen ( ) Diese sucht alle Touren des Fahrers heraus, die noch nicht abgerechnet sind und summiert deren Summen auf (Operation berechne Summe, die wiederum die entsprechende Operation bei Bestellung aufruft). Anschließend werden die Touren mittels des booleschen Attributs als abgerechnet gekennzeichnet berechneSumme() aufnehmen() kundeZuordnen() speisenZuordnen() dauerErmitteln() auftragfürKüchedrucken() fertigMelden() rechnungDrucken() tourAnlegen() bestehendeTourZuordnen() status() Nr Datum Uhrzeit Bemerkung UhrzeitFertigmeldung Bestellung inAuslieferungMelden() rückkunftMelden() voraussichtlicheRückkunftberechnen() status() berechneSumme() UhrzeitAbfahrt UhrzeitRückkunft abgerechnet Tour 11..* tageseinnahmenAbrechnen() Fahrer 1 *

8 Hans-Jürgen Steffens Systemanalyse SS 048 Use Case Auswertungen erstellen Hier kommt es in der Analysephase weniger darauf an, entsprechende Operationen hinzuzufügen, sondern die gewünschten Arten von Auswertungen zu analysieren, ob sie mit Hilfe des Klassendiagramms realisierbar sind Beispiele: Auswertung Umsatz pro Monat –Über Datum der Bestellung lassen sich die Bestellungen eines Monats identifizieren und die Summen aufaddieren Auswertung Durchschnittliche Dauer von der Bestellung bis zur Auslieferung –Uhrzeit der Zustellung wird nicht erfasst, da keine mobile Erfassung vorgesehen ist. Es lassen sich daher nur die Dauern zwischen Bestellung und Abfahrt oder zwischen Bestellung und Rückkunft der Fahrer auswerten (Mittelwert könnte als Annäherung an die gewünschte Größe gewertet werden) Auswertung Bestellungen pro Verkäufer –Erweiterung des Modells erforderlich: Assoziation zwischen Verkäufer und Bestellung

9 Hans-Jürgen Steffens Systemanalyse SS 049 Zuordnung Verkäufer zu Bestellung Untergrenze 0, da auch Internet- Bestellungen möglich sind

10 Hans-Jürgen Steffens Systemanalyse SS 0410 UC, die über Internet abgewickelt werden UC Bestellung über Internet aufgeben Prinzipiell der gleiche Ablauf wie bei Bestellaufnahme durch Verkäufer Unterschiede liegen im Detail: –Kunde darf seine Daten nicht über Auswahl aus Liste auswählen (er darf die anderen Kundendaten nicht sehen), sondern muss einige Mindestfelder (z. B. Name, Vorname, Telefonnr.) eingeben, bevor restliche Angaben angezeigt werden und ggf. korrigiert werden können. –Bestellung kann einigen Beschränkungen (z. B. Höchstbestellwert) unterliegen –Bestellung wird anschließend dem Verkäufer zur Freigabe weitergeleitet. UC im Internet über Bestellstatus informieren Eigene Class Operation definiert, die die Bestellung über anonyme Eingabe der Bestellnummer auswählt, die Statusabfrage durchführt und die Antwort zurück liefert.

11 Hans-Jürgen Steffens Systemanalyse SS 0411 Erweiterungen für Internet-UCs berechneSumme() aufnehmen() kundeZuordnen() speisenZuordnen() dauerErmitteln() auftragfürKüchedrucken() fertigMelden() rechnungDrucken() tourAnlegen() bestehendeTourZuordnen() status() überInternetAufgeben() internetBestellungGenehmigen() statusAbfrageInternet() Nr Datum Uhrzeit Bemerkung UhrzeitFertigmeldung Bestellung * 1 auswählen() anlegen() ändern() adresseZuordnen() adresse() fahrtdauer() überInternetEingabeAuswählen() Kundennr Name Vorname Hausnr Telefonnr Kunde

12 Hans-Jürgen Steffens Systemanalyse SS 0412 Use Case Bestellung stornieren / ändern Problematik bei Stornierung / Änderung: Da die Aufträge sofort nach der Bestellung in die Küche gegeben werden, ist dem System nicht bekannt, ob diese bereits in Arbeit sind, oder noch problemlos umgeändert werden können. Lösungsmöglichkeiten: a)Der Verkäufer geht in die Küche und überprüft, ob Änderung noch problemlos möglich b)Die Küche erhält ihre Aufträge nicht auf Papier, sondern ebenfalls elektronisch und bestätigt den Beginn der Bearbeitung. Vorher kann noch problemlos storniert werden. c)Es wird prinzipiell so vor gegangen, dass Änderungen und Stornierungen bis zur Fertigmeldung möglich sind, danach nicht mehr.

13 Hans-Jürgen Steffens Systemanalyse SS 0413 Use Case Bestellung stornieren / ändern Beispielhaft wird die Stornierung einer Bestellung betrachtet: Operation stornieren ( ) der Klasse Bestellung: –Diese überprüft zunächst den Status (ob noch nicht fertig gemeldet) –Es wird eine Storno-Meldung für die Küche ausgedruckt, damit diese ggf. die Zubereitung der Speisen stoppen kann. –Die Tour, der die Bestellung zugeordnet ist, erhält eine Operation bestellungEntfernen( ), die an dieser Stelle aufgerufen wird. –Die Bestellung wird gelöscht (und damit wg. der Komposition automatisch auch alle zugehörigen Bestellpositionen) Operation bestellungEntfernen ( ) der Klasse Tour: –Diese überprüft, ob noch weitere Bestellungen enthalten sind. –Falls nicht, wird die Tour ebenfalls gelöscht.

14 Hans-Jürgen Steffens Systemanalyse SS 0414 Erweiterungen für Stornierung berechneSumme() aufnehmen() kundeZuordnen() speisenZuordnen() dauerErmitteln() auftragfürKüchedrucken() fertigMelden() rechnungDrucken() tourAnlegen() bestehendeTourZuordnen() status() überInternetAufgeben() internetBestellungGenehmigen() statusAbfrageInternet() stornieren() stornoMeldungDrucken() Nr Datum Uhrzeit Bemerkung UhrzeitFertigmeldung Bestellung inAuslieferungMelden() rückkunftMelden() voraussichtlicheRückkunftberechnen() status() berechneSumme() bestellungEntfernen() UhrzeitAbfahrt UhrzeitRückkunft abgerechnet Tour 11..*

15 Hans-Jürgen Steffens Systemanalyse SS 0415 Weitere Fragestellungen Aus Gründen des Modellumfangs hier nicht berücksichtigt: Änderungen (z. B. von Einzelpositionen) Korrektur von Fehlern / Problemen –Z. B. Kunde nimmt einen Teil der Lieferung nicht ab, weil er telefonisch etwas anderes bestellt hat (und zahlt dann natürlich auch weniger) –Lieferung konnte nicht zugestellt werden.

16 Hans-Jürgen Steffens Systemanalyse SS 0416 Gesamt-Klassendiagramm Übersicht

17

18 Hans-Jürgen Steffens Systemanalyse SS 0418 Bildung von Packages Zeitplanung und -erfassung Mitarbeiter Kunden Bestellung und Lieferung Speisekarte Ist abhängig von

19 Hans-Jürgen Steffens Systemanalyse SS 0419 Detaildiagramm für Package Kunden auswählen() anlegen() ändern() adresseZuordnen() adresse() fahrtdauer() überInternetEingabeAuswählen() Kundennr Name Vorname Hausnr Telefonnr Kunde PLZ Ortsname Ort adresseAuswählen() adresse() fahrtdauer() Straßenname Straße * * Fahrtdauer Entfernungsbereich *1 berechneSumme() aufnehmen() kundeZuordnen() speisenZuordnen() dauerErmitteln() auftragfürKüchedrucken() fertigMelden() rechnungDrucken() tourAnlegen() bestehendeTourZuordnen() status() überInternetAufgeben() internetBestellungGenehmigen() statusAbfrageInternet() stornieren() stornoMeldungDrucken() Nr Datum Uhrzeit Bemerkung UhrzeitFertigmeldung Bestellung und Lieferung::Bestellung *1 Klasse aus anderem Package

20 Hans-Jürgen Steffens Systemanalyse SS 0420 Zusammenfassung Das Klassendiagramm aus der vorangehenden Vorlesung wurde mit Hilfe der weiteren Use Case-Beschreibungen vervollständigt Für die Erstellung von Auswertungen ist zu untersuchen, ob die gewünschten Auswertungen mit Hilfe der modellierten Lösung möglich sind, bzw. ob sie ergänzt werden muss Bestellungen über das Internet laufen fachlich genauso wie die direkt am System, gewisse Funktionalitäten, z. B. Auswahl der Kundendaten müssen im Detail geändert werden Für Stornierungen und Änderungen von Aufträgen ist deren Bearbeitungsstatus von Bedeutung, der allerdings erst einmal erfasst sein muss Es wurde gezeigt, wie sich ein umfangreiches Modell mit Hilfe von Packages übersichtlicher strukturieren lässt

21 Hans-Jürgen Steffens Systemanalyse SS 0421 Übungsfragen Versuchen Sie, die gezeigten Erweiterungen des Klassendiagramms selbst nachzuvollziehen Erläutern Sie mit Hilfe des Klassendiagramms, wie eine Bestellung abläuft Welche Operations sind beteiligt, was tun diese jeweils, welche Attributwerte werden genutzt / verändert? Überlegen Sie sich für die zur Änderungs-/Stornierungsthematik vorgeschlagene Lösung b (Küche erhält Aufträge elektronisch) die notwendige Erweiterung für das Klassendiagramm Welche neue nichtfunktionale Anforderung an das System resultiert aus diesem Lösungsvorschlag?


Herunterladen ppt "Hans-Jürgen Steffens Systemanalyse SS 041 9. Vorlesung: Fortsetzung Klassendiagramm für Fallbeispiel Entwicklung des Klassendiagramms aus Use Cases Fortsetzung."

Ähnliche Präsentationen


Google-Anzeigen