Übungen Software Engineering II WS 99/00

Slides:



Advertisements
Ähnliche Präsentationen
© by Bernhard Rabe, Andre Morgenthal, Dennis Moers powered by Bernhard Rabe, Andre Morgenthal, Dennis Moers MobileFile 1.
Advertisements

B-Bäume.
Die Definitionsphase -Objektorientierte Analyse - Das statische Modell
OO Analyse Analyseprozess Erstellen eines Modells
Assoziationen Verbindungen zwischen Objekten einer Klasse
Methodik: Objektorientierte Analyse
Checklisten dynamisches Modell
Standortfaktoren INTERN - Ausdrucksstark präsentieren.
Anwendungsfalldiagramm
Objektorientierte Analyse (OOA) Inhaltsübersicht
Objektorientierter Entwurf (OOD) Übersicht
Anwendungsfall-Diagramm (Use Case Diagram)
Risiken und Chancen Risiko Beurteilung: Dazu gehört die Identifikationen von Risiken, ihre Analyse und das Ordnen nach Prioritäten. Risiko Kontrolle: Dazu.
Java: Objektorientierte Programmierung
Algorithmentheorie 04 –Hashing
WS Algorithmentheorie 05 - Treaps Prof. Dr. Th. Ottmann.
Objektorientierte Konzepte und Notation in UML
Gliederung der Vorlesung Software Engineering WS 2001/2002
Das Kernmodell eines Workflow-Management-Systems Entwurf
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
Inhalte und Maßnahmen eingegeben haben,
Einführung in das Internet-Portal für den Praxistag
OO Analyse und Entwurf für Anwender XIII. Objektorientierte Benutzeroberfäche Dr. Michael Löwe.
OO Analyse und Entwurf für Anwender
Übung zum Thema Architektur
Die Bank von morgen - eine neue Welt für IT und Kunden? 23. Oktober 2001.
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
1 Teil 4 Übung: Uhr. 2 Zielsetzung Ziel ist es, mit Hilfe objektorientierter Modellierung ein System zu entwickeln, mit dem eine einfache Uhr simuliert.
UML Begleitdokumentation des Projekts
Unified Modeling Language Einführung zu UML Was ist „UML“?
Objektorientierte Modellierung
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
7. Vorlesung Vererbung Einfach- und Mehrfachvererbung Polymorphismus
11. Vorlesung: Dynamische Konzepte am Fallbeispiel
4. Vorlesung: Use Case Diagramme Fallbeispiel
8. Vorlesung: Klassendiagramm für Fallbeispiel
12. Vorlesung: Aktivitätsdiagramme
Schulentwicklung Volksschule / HS / NMS …. basierend auf dem Zahnradmodell der Bewegten Schule Stand: Sept
5 Methoden und Werkzeuge zur Prozessmodellierung
Delphi II - OOP IFB Fortbildung
Kollektionen in Java Aufzählungstypen, Generische Typen
Unified Modeling Language Repetition / Einführung zu UML
...ich seh´es kommen !.
HORIZONT 1 XINFO ® Das IT - Informationssystem Java Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Objektorientierte Konzepte/UML Geoinformation I Vorlesung 2 WS 2000/2001.
UML WS 09/10: Datenbanken vs MarkUp Dozent: Prof. Dr. Manfred Thaller
Auslegung eines Vorschubantriebes
Objektorientierte Analyse
Das Änderungssystem für TWS Definitionen
HORIZONT 1 XINFO ® Das IT - Informationssystem HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 /
HORIZONT 1 XINFO ® Das IT - Informationssystem PL/1 Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
Publikation auf Knopfdruck Judith Riegelnig Michael Grüebler 19. Oktober 2010 / Statistiktage Neuenburg.
UML UML mit SiSy® Vorgehensmodell Dokumentation HTML-Export
Bestellvorgang Xtra Packs.
Vom Geschäftsprozess zum Quellcode
Schulentwicklung Volksschule / HS / NMS …. basierend auf dem Zahnradmodell der Bewegten Schule Stand: Sept
Analyseprodukte numerischer Modelle
Wenn alles so einfach wäre
Objektorientierte Modellierung mit UML
Klassen und Klassenstruktur
Software Engineering Grundlagen
Der Erotik Kalender 2005.
Die Management-Tools von Z&H COACH beinhalten zentrale Hilfsmittel für ein Management-System. Sorgfältig angewendet führen diese Tools Ihr Unternehmen.
Familie Beutner, Konrad-Voelckerstrasse, Edenkoben/Pfalz, Tel:
Unified Modeling Language UML
SAP Seminar 2007 Bestellung anlegen
Geoinformation I Lutz Plümer
Zitat-management-System Meilenstein 1
Rechen- und Kommunikationszentrum (RZ) Laptopleihpool des Rechenzentrums Aktuelle Umsetzung und Verbesserungspotential Julia Sauer Seminarvortrag Stand:
 Präsentation transkript:

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

Ü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

Ü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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ü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

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

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

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

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

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

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

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

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

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

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

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