Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

8. Vorlesung: Klassendiagramm für Fallbeispiel

Ähnliche Präsentationen


Präsentation zum Thema: "8. Vorlesung: Klassendiagramm für Fallbeispiel"—  Präsentation transkript:

1 8. Vorlesung: Klassendiagramm für Fallbeispiel
Potenzielle Klassen gemäß Kategorien Herleitung von Klassen aus Dokumentenanalyse Verschiedene Lösungsmöglichkeiten Entwicklung des Klassendiagramms aus Use Cases Hans-Jürgen Steffens Systemanalyse SS 04

2 Potenzielle Klassen gemäß Kategorien
Konkrete Objekte (Dinge): Speise, Menü: Personen und deren Rollen: Kunde, Verkäufer, Fahrer Informationen über Aktionen: Bestellung, Tour Orte: Lieferort Organisationen: Unternehmen Behälter: Kategorien von Speisen Dinge in einem Behälter: Speisen Ereignisse: Arbeitszeitbeginn, Arbeitszeitende Kataloge: Speisekarte Verträge: Bestellung Hans-Jürgen Steffens Systemanalyse SS 04

3 Dokumentenanalyse Speisekarte
Kategorie Nr. Speise (Name) Beschreibung Preis Hans-Jürgen Steffens Systemanalyse SS 04

4 Klassen zur Abbildung der Speisekarte
Handhabung der verschiedenen Pizza-Größen? Für jede Größe wird eine eigene Speise angelegt. Nachteil: Redundanz. Es kommt mehrfach die gleiche Nr. vor, und Name und Beschreibung müssen mehrfach gepflegt werden. Man kann auch nicht generell definieren, dass es Pizzas in den Größen 20cm und 28cm gibt. Steht nur individuell in der Beschreibung. Hans-Jürgen Steffens Systemanalyse SS 04

5 1. Alternative Lösung Vorteil: Redundanz fällt weg.
Nachteil: Wenig flexibel. Wenn z. B. eine dritte Größe eingeführt wird, muss das System geändert werden. Hier kann Vererbung genutzt werden. Hans-Jürgen Steffens Systemanalyse SS 04

6 2. Alternative Lösung z. B. 20cm, 28cm oder Standard, falls es nur eine Variante gibt. Bei dieser Lösung muss jede Speise mindestens eine Variante haben, da ihr sonst kein Preis zugeordnet werden kann (deswegen Untergrenze 1) Hans-Jürgen Steffens Systemanalyse SS 04

7 3. Alternative Lösung Allgemeingültige, flexible Lösung. Es können jederzeit neue Größen hinzu gefügt werden. Kategorie Bezeichnung 1 * Speise * 1..* Größe Nr Name Bezeichnung Beschreibung Preis z. B. 20cm, 28cm, aber auch „Standard“ für solche Speisen, die keine verschiedenen Größen haben. Preis Hans-Jürgen Steffens Systemanalyse SS 04

8 4. Alternative Lösung Kategorie Einfache Lösung, aber nicht sehr flexibel. Wenn eine dritte Größe eingeführt wird, muss das System geändert werden. Bezeichnung Größenbezeichnung GrößenbezeichnungGroß 1 Werden als Überschriften in der Speisekarte verwendet (damit können z. B. auch große und kleine Getränke bezeichnet werden) * Attribut „Preis“ wird für 20cm-Pizza und für Speisen ohne Größe verwendet. Attribut „PreisGroß“ wird für 28cm-Pizza verwendet, bei Speisen ohne Größe bleibt es leer. Speise Nr Name Beschreibung Preis PreisGroß Hans-Jürgen Steffens Systemanalyse SS 04

9 Dokumentenanalyse Quittung
Hans-Jürgen Steffens Systemanalyse SS 04

10 Erweitertes Klassendiagramm
Kunde Kategorie Kundennr Bezeichnung Bestellung Name Größenbezeichnung Nr Vorname GrößenbezeichnungGroß Datum Straße Uhrzeit Hausnr Bemerkung * 1 PLZ 1 berechneSumme() Ort Telefonnr 1 * 1..* Speise Bestellposition Nr Name Nr Beschreibung Menge Preis Größe 1 * PreisGroß berechneGesamtpreis() Hans-Jürgen Steffens Systemanalyse SS 04

11 Use Case „Bestellen“ (1)
Substantive Kunde – bereits vorhanden Speise – bereits vorhanden Preis – bereits vorhanden (Operation) Dauer Bestellung – bereits vorhanden Auftrag für Küche Hier sollen nur die zu kochenden Speisen berücksichtigt werden, also nicht z. B. Getränke. Hierfür ist ein Attribut „Muss gekocht werden“ bei Speise erforderlich Hans-Jürgen Steffens Systemanalyse SS 04

12 Use Case „Bestellen“ (2)
Verben Bestellung aufnehmen Kundendaten auswählen, ändern Speisen auswählen Dauer ermitteln Bestellung abschließen erfolgreicher Abschluss d. Bestellaufnahme Auftrag für Küche ausdrucken Hans-Jürgen Steffens Systemanalyse SS 04

13 Erweiterungen für Use Case „Bestellen“
Kunde Bestellung Kundennr Nr Name Datum Vorname Uhrzeit Straße Kategorie Bemerkung Hausnr Bezeichnung berechneSumme() PLZ Größenbezeichnung aufnehmen() * 1 Ort GrößenbezeichnungGroß kundeZuordnen() Telefonnr speisenZuordnen() auswählen() dauerErmitteln() anlegen() auftragfürKüchedrucken() 1 ändern() 1 1..* * Bestellposition Speise Nr Nr Menge Name Größe Beschreibung Preis erechneGesamtpreis() PreisGroß 1 * anlegen() MussGekochtWerden speiseZuordnen() positionAusdrucken() auswählen() positionFürKücheAusdrucken() Hans-Jürgen Steffens Systemanalyse SS 04

14 Use Case „Neukunde“ anlegen
Klasse Kunde – Operation anlegen( ) Es soll geprüft werden, ob Adresse im Liefergebiet liegt: Alle Orte und Straßen im Liefergebiet Hans-Jürgen Steffens Systemanalyse SS 04

15 Weitere Use Cases Use Case „Speise suchen“:
Klasse Speise, Operation auswählen ( ) Use Case „Ersatz für ausgegangene Speise vorschlagen“ Speise benötigt Attribut „ausgegangen“ sowie Operationen zur Änderung des Attributwerts Assoziation zur Darstellung möglicher Alternativen Hans-Jürgen Steffens Systemanalyse SS 04

16 Use Case „Menü fertig stellen“
Menü = Die in einer Bestellung enthaltenen, fertig gestellten Speisen. Dies wird bereits durch Klasse Bestellung repräsentiert. Operation fertigMelden( ) wird benutzt, diese nutzt eine Operation rechnungDrucken(). Das bisher leere Attribut „UhrzeitFertigmeldung“ erhält die aktuelle Zeit. Hans-Jürgen Steffens Systemanalyse SS 04

17 Zwischenstand Klassendiagramm
Hans-Jürgen Steffens Systemanalyse SS 04

18 Zusammenfassung Zunächst wurden potenzielle Klassen mit Hilfe der Liste von Klassen-Kategorien ermittelt Eine Dokumentenanalyse ermöglichte die Herleitung von Teilen des Klassendiagramms Mit Hilfe einer detaillierten Untersuchung der Haupt-Use Cases wurde das Klassendiagramm erweitert und um Attribute und Operationen ergänzt Hans-Jürgen Steffens Systemanalyse SS 04

19 Übungsfragen Skizzieren Sie zwei verschiedene Lösungen für das Speisekarten-Problem (Speisen mit mehreren Größen) und erläutern Sie Vor- und Nachteile Versuchen Sie die Herleitung des Klassendiagramms selbst nachzuvollziehen, indem Sie zunächst nur die vorgestellten Dokumente sowie die Use Case-Beschreibungen aus der entsprechenden Vorlesung zur Hilfe nehmen – und Ihre Lösung erst anschließend mit der vorgestellten vergleichen Erklären Sie Zweck und Bedeutung aller Attribute und Operations der Klasse Bestellung. Erläutern Sie bei den Operations auch das Zusammenspiel mit anderen Klassen. Hans-Jürgen Steffens Systemanalyse SS 04


Herunterladen ppt "8. Vorlesung: Klassendiagramm für Fallbeispiel"

Ähnliche Präsentationen


Google-Anzeigen