Aufgabe1

Objektorientierte Modellierung
Aufgabe 1: Modelle im Alltag (9 Punkte)
Geben Sie 3 Modelle an, mit denen Sie alltäglich zu tun haben. Beschreiben Sie diese. Welche
Eigenschaften des realen, modellierten Objekts sind relevant, von welchen Eigenschaften wird
abstrahiert?
Modell 1: Straßenkarte
Beschreibt ein reales Straßennetz in einem verkleinerten Maßstab. Relevant sind die Lage der Straßen
und Gebäude. Nicht wichtig ist die Beschaffenheit und Höhenlage einer Straße oder Höhe und Aussehen
der Gebäude.
Modell 2: Strichmännchen
Ist ein Modell eines Menschen und beschreibt z.B. Bewegungen eines Menschen. Wichtig sind die
Gliedmaßen.
Nicht relevant : Das Geschlecht , das genaue Aussehen, Gewicht, Hautfarbe, …
Modell 3: Passphoto
Ist ein Modell von einem Gesicht. Wichtig ist das genaue Aussehen des Gesichts, Gesichtsausdruck, dass
das Gesicht gut erkennbar ist.
Nicht relevant sind z.B. Gewicht, Geruch, Größe, Kleidung, …
Aufgabe 2: Hierarchien, Klassen und Instanzen (15 Punkte)
Gegeben sind folgende Begriffe: Wein, Kuchen, Wurst, Apfel, Frucht, Torte, Saft
a) Finden Sie eventuelle Verallgemeinerungen und Gemeinsamkeiten dieser Klassen.
Die Begriffe können wir so verallgemeinern, dass alle Lebensmittel sind.
Jedes Lebensmittel hat z.B. Ablaufdatum, Erzeuger, Lagerung, …
b) Entwerfen Sie eine Vererbungshierarchie, wobei an der Spitze genau ein Element stehen soll.
c) Geben Sie für jede Klasse 3 Attribute an.
Wein:
Typ , Alter, Herkunft
Kuchen:
Name, Bäcker, Ablaufdatum
Wurst:
Name, Typ, Tier
Apfel:
Farbe, Erntedatum, Herkunft
Frucht:
Sorte, Erntedatum, Herkunft
Torte:
Name, Bäcker, Ablaufdatum
Saft:
Typ, Erzeuger, Ablaufdatum
d) Unterscheiden Sie zwischen konkreten und abstrakten Klassen - geben Sie für jede Klasse Ihrer
Vererbungshierarchie an, ob diese konkret oder abstrakt ist.
Abstrakte Klassen:
Lebensmittel, Fleisch, Getränke, Süßigkeiten, Früchte
Konkrete Klassen:
Wurst, Wein, Saft, Torte, Kuchen, Apfel
e) Finden Sie für jede konkrete Klasse mindestens 3 Instanzen.
Wein:
Kuchen:
Wurst:
Apfel:
Frucht:
Torte:
Saft:
Grüner Veltliner, Pinot Rosa, Vigna la Volta
Apfelkuchen, Marmorkuchen, Zwetschgen Kuchen.
Salami, Schinken, Leberkäse
Goldapfel, Granny Smith, Gala
()
Sacher, Linzer Torte, Kirschtorte
Apfelsaft, Orangensaft, Kirschensaft
Aufgabe 3: Klassen, Objekte und Attribute (8 Punkte)
Überlegen Sie sich für folgende Begriffe, ob es sich um (1) Klassen, (2) Objekte, (3) Attribute oder (4)
Operationen handelt. Können hier Mehrdeutigkeiten auftreten? Wenn ja, warum?
Student, Peter, Professor, Titel, Name, Sozialversicherungsnummer, Doktor, printInfo, Person,
Geburtstag, changeTitle.
Klasse:
Objekte:
Attribute:
Operationen:
Student, Professor, Doktor, Person
Peter, Student, Professor, Doktor,
Titel, Name, SVNr, Geburtstag
printInfo, changeTitle
Angenommen wir haben eine Klasse Person, Es gibt Personen die studieren. Dann kann die Klasse
Student als Verfeinerung der Klasse Person aufgefasst werden. Also Student ist ein Objekt kann aber
auch eine eigene Klasse sein.
Aufgabe 4: Online-Shop (18 Punkte)
Für die Modellierung eines Online-Shop Systems wollen Sie UML Diagramme einsetzen.
Überlegen Sie sich, wofür Sie bei dem Online Shop Anwendungsfall-, Klassen-, Aktivitäts-, Zustands- und
Sequenzdiagramm einsetzten können. Geben Sie jeweils ein konkretes Beispiel, um einen beliebigen Teil
des Online-Shop zu modellieren. Es ist ausreichend, wenn Sie die Beispiele informell angeben.
Anwendungsfall:
Übersicht der Funktionen, auf die ein bestimmter User zugreifen kann: z.B.:
Gast: im Katalog blättern, Produktinfos lesen, ...
angemeldeter Benutzer: alles was Gast kann plus: Produkt merken, Produkt kaufen, Produkt bewerten, ...
Administrator: Produkt hinzufügen/ entfernen, Kategorie erstellen, User Kontaktieren, User sperren,...
Klassendiagramm:
zb. wie oben: (abstrakte) Klasse User mit Untertypen(Gast, Kunde, Admin,...) und verschiedenen
Schnittstellen z.B. zur Klasse Produkt(z.b. Funktionen Kaufen oder löschen) bzw zur Klasse Katalog(
Produkte anzeigen, Produkt in andere Kategorie verschieben,...)
Aktivitätsdiagramm:
Zum beschreiben aller Schritte des Bestellvorganges:
Produkt bestellen: Bestellung abschicken -> Verfügbarkeit überprüfen ->Betrag von Kundenkonto
abbuchen->Produkt verschicken -> Produkt aus Warenstand ausbuchen
Zustandsdiagramm:
Überprüfung der Buchung:
Wird die Ware bezahlt wird sie ausgeschickt, wurde die Ware noch nicht gezahlt wird der Bestellvorgang
unterbrochen.
Sequenzdiagramm:
Interaktion zwischen Ausprägungen:
z.B. Kunde – Produkt: ansehen, kaufen, vormerken, bewerten