Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Übungen Software Engineering II WS 99/00

Ähnliche Präsentationen


Präsentation zum Thema: "Übungen Software Engineering II WS 99/00"—  Präsentation transkript:

1 Übungen Software Engineering II WS 99/00
Aufgabe 1 Übungen Software Engineering II WS 99/00

2 Übungen Software Engineering II WS 99/00
Aufgabe 1 In einer Autovermietung sollen alle kundenrelevanten Geschäftsprozesse durch ein durchgängiges, einheitliches Informationssystem unterstützt werden. Bisher sind einige Geschäftsprozesse noch nicht oder sehr ungenügend DV - unterstützt. Für die übrigen existieren verschiedene spezielle Systeme. Um einen Kunden rundum zu betreuen, müssen mehrere Systeme benutzt werden. Das zu entwickelnde System soll alle Funktionen bereitstellen, die in direktem Zusammen- hang mit der Betreuung von Kunden und anderen Geschäftspartnern (z.B. Lieferanten) stehen. Dazu gehören die Kundenberatung, die Verwaltung der Stammdaten, die Reservierung, die Vermietung von Kfz und die Abrechnung mit dem Kunden. Geschäftsferne und indirekte Bereiche wie die interne Buchhaltung, Tarif- und Produktplanung, Kfz- Überführung und Disposition u.ä. sind keine Systembestandteile. Übungen Software Engineering II WS 99/00

3 Übungen Software Engineering II WS 99/00
Führen Sie für die ausgeteilten Unterlagen eine Use-Case-Analyse und eine objektorientierte Analyse durch. Entwerfen Sie: Use Cases + präzise Beschreibung Domänenmodell Analysemodell Hilfsmittel: CRC Karten Klassendiagramme Sequenzdiagramme Übungen Software Engineering II WS 99/00

4 Übungen Software Engineering II WS 99/00
Lösung Aufgabe 1 Übungen Software Engineering II WS 99/00

5 Haupttätigkeit Anforderung
Übungen Software Engineering II WS 99/00

6 Use Cases und präzise Beschreibung
Wir haben folgende Use Cases identifiziert und beschrieben: Kfz-Reservierung Kfz-Übergabe Kfz-Rücknahme Telefonische Kundenberatung s. ausgeteilte Unterlagen Übungen Software Engineering II WS 99/00

7 Systemumgebung: Domain Model
Kfz-Lieferant Kunde * * Rechnungswesen 1 1 * bucht bei anmieten bezieht von Kfz bereitstellen beraten * * 1 1 Autovermietung 1 * Kfz-Dispositionssystem 1 1 1 1 mietet Kfz zurücknehmen besitzt * Kfz * 1 Tarifsystem Tarif ermitteln Übungen Software Engineering II WS 99/00

8 CRC-Karte für Kfz-Dispositionssystem
Ermittelt Standort und Status von Kfz Auto Gibt Auskunft über Reservierungsmöglichkeit (Ort, Zeitraum) Auto Gibt Auskunft über Standort v. Zubehörteilen (Kindersitz,Dachgepäckträger) Gibt Auskunft über Ausstattungs- u. Leistungsmerkmalen Auto Ermöglicht Kfz-Statusänderungen (reserviert, vermietet) Auto Führt Statistik über Fahrzeugauslastung Auto Auch CRC-Karten können zur Klärung der Schnittstellen verwendet werden Übungen Software Engineering II WS 99/00

9 CRC-Karte für Tarifsystem
Ermittelt Tarif Auto, Kunde Gibt Auskunft über Billigtarife Auto Ermöglicht Tarifänderungen Übungen Software Engineering II WS 99/00

10 Haupttätigkeit Analyse
Übungen Software Engineering II WS 99/00

11 Schritt 1: Identifikation von Analyse Packages
Jetzt eine erste Zerlegung des Systems in Packages Reservierung Kfz-Rücknahme Kundenverwaltung Allgemeine Geschäftsklassen Lieferanten management Zur Erinnerung: Diese Package-Zerlegung kann sich im Laufe der Analyse und des Entwurfs ändern!!! Übungen Software Engineering II WS 99/00

12 Klassendiagramm für Package „Allgemeine Geschäftsklassen“
Kunde 1 1 Tarif 1 schließt basiert auf * * KfzMietvertrag veranlasst 1 1 führt zu 1 * Rechnung Reservierung für 1 Kfz Übungen Software Engineering II WS 99/00

13 Package Kundenverwaltung
verwaltet Kunde Kundenmanager * 1 Übungen Software Engineering II WS 99/00

14 CRC Karte Kundenmanager
Neuen Kunden anlegen Kunde Kunden suchen Kunde Kundendaten ändern Kunde Übungen Software Engineering II WS 99/00

15 Klassendiagramm für Package Reservierung
visualisiert/erfasst ReservierungsUI 1 1 1 1 visualisiert/erfasst Übungen Software Engineering II WS 99/00

16 CRC Karte Reservierungsmanager
Nimmt Reservierungswunsch auf Kunde, Kfz-Dispositionssystem VerfügbarkeitPrüfen Liste Kfz-Typen, Kfz-Dispositionssystem Kfz-Reservieren Liste Kfz-Typen, Kfz-Dispositionssystem ReservierungsUI Erfasst Reservierungswunsch Erfasst Kundendaten Übungen Software Engineering II WS 99/00

17 Klassendiagramm für Package Kfz-Rücknahme
1 1 erfasst 1 visualisiert RücknahmeUI 1 Übungen Software Engineering II WS 99/00

18 Übungen Software Engineering II WS 99/00
CRC Karten Rechnung Abrechnung erstellen Tarifsystem drucken Rücknahme UI Erfasst zurückgegebenes Fahrzeug Übungen Software Engineering II WS 99/00

19 Schritt 2: Analyse der einzelnen Use Case1
Fragestellung jetzt: Welche Klassen mit welchen Verantwortungen benötige ich zur Realisierung des Use Cases? Daher: Alle Use Cases betrachten, Frage beantworten und den Ablauf durch Objekte der bis jetzt gefundenen Klassen durch Sequenzdiagramme beschreiben. Falls Klassen fehlen, neue Klassen einführen. Viele neue Klassen werden bei dieser Use Case Analyse gefunden! 1 Wir beschränken uns im Beispiel auf die zwei Use Cases Kfz-Reservierung und Kfz-Rücknahme. Übungen Software Engineering II WS 99/00

20 Sequenzdiagramm für den Use Case „Reservierung“1
:Reservierungs UI :Reservierung :Kundenmanager Wunschdaten eingeben Reservierungswunsch aufnehmen Kundendaten eingeben Kunden suchen Kunde identifiziert und Daten korrekt Kundenbetreuer Auto reservieren Verfügbarkeit prüfen Bestätigung 1 Die verschiedenen Varianten bzw. Ablauf-Ausnahmen betrachten wir nicht.. Übungen Software Engineering II WS 99/00

21 Use Case „Kfz-Rücknahme“
Bei der Analyse des Ablaufs müssen Klassen für „Vertrag suchen“, Vertragseinhaltung prüfen“, „Abrechnungsdaten erheben“, „Rechnung erstellen“ gefunden werden. Offen: Welche Klasse hat die Verantwortung „Vertrag suchen“, „Vertragseinhaltung prüfen“? Daher: Entweder neue Klasse einführen oder Verantwortungen existierender Klassen um die neuen Verantwortungen ergänzen. Übungen Software Engineering II WS 99/00

22 CRC Karte für die Klasse Vertragsmanager
Vertrag suchen Vertragseinhaltung prüfen Vertrag ausstellen Vertrag löschen Wir haben eine neue Klasse „Vertragsmanager“ eingeführt, und können jetzt den Ablauf beschreiben: Übungen Software Engineering II WS 99/00

23 Sequenzdiagramm für den Use Case „Kfz-Rücknahme“1
:Rücknahme UI :Vertragsmanager :Rechnung Kfz-Kennzeichen eingeben Vertrag suchen Vertrag Vertragsdaten anzeigen Rückgabedaten eingeben Vertragseinhaltung prüfen Kundenbetreuer Abrechnung erstellen Rechnung anzeigen Rechnung bestätigen drucken 1 Die verschiedenen Varianten bzw. Ablauf-Ausnahmen betrachten wir nicht. Übungen Software Engineering II WS 99/00

24 Schritt 3: Analyse der einzelnen Klassen1
Verantwortungen, Assoziationen, Aggregationen und Vererbungs- beziehungen notieren und präzisieren hierzu Attribute und Operationen identifizieren 1 Wir führen dies nur exemplarisch für einzelne Klassen der beiden Packages durch Übungen Software Engineering II WS 99/00

25 Attribute und Operationen der Klasse Rechnung
1..2 Rechnungsbetrag Zahlungsart Rechnungsposten drucken(); erstelleAbrechnung (Kfz-Mietvertrag) Übungen Software Engineering II WS 99/00

26 Attribute und Operationen der Klasse Reservierung
1..2 Miet-Zeitraum Kfz-Typ Sonderausstattung Kfz-Zubehör-Typ Abhol-Niederlassung Rückgabe-Niederlassung prüfeVerfügbarkeit(Kfz-Typ, Kfz-Zubehör-Typ, Sonderausstattung); reserviere(Kfz-Typ, Sonderausstattung, Kfz-Zubehör-Typ, Zeitraum) reserviereWunsch(Kfz-Typ, Sonderausstattung, Kfz-Zubehör-Typ, Zeitraum) Übungen Software Engineering II WS 99/00

27 Attribute und Operationen der Klassen Mietgegenstand, Kfz,Kfz-Zubehör
1..2 Standort Mietstatus (Reserviert od. vermietet) Alter ermittleTarif(Zeitraum); getStandort() getMietstatus() setAlter(Monate) getAlter() Kfz-Zubehör Kfz 1..2 Inventarnummer Fahrzeugkennzeichen Erst-Zulassung TÜV-Datum KM-Stand Farbe ermittleTarif(Zeitraum); setTüvDatum(Datum) setAlter() getAlter() Kindersitz 1..2 Dachgepäckträger Fabrikat ermittleTarif(Zeitraum); ermittleTarif(Zeitraum); ermittleTarif(Zeitraum); ermittleTarif(Zeitraum); Übungen Software Engineering II WS 99/00

28 Übungen Software Engineering II WS 99/00
Anhang Der Anhang enthält einzelne Diskussionen zu den Packages. Übungen Software Engineering II WS 99/00

29 Übungen Software Engineering II WS 99/00
Diskussionen Übungen Software Engineering II WS 99/00


Herunterladen ppt "Übungen Software Engineering II WS 99/00"

Ähnliche Präsentationen


Google-Anzeigen