MINT üben

Klassendiagramm entwerfen

Zwei Abituraufgaben mit Hinweisen und Erwartungshorizont: aus Anforderungen ein Klassendiagramm entwickeln und einen Entwurf verbessern — Carsharing und Festival.

Dein Fortschritt:
0 / 0 Aufgaben
1

Carsharing

AFB I–II

Ein Carsharing-Anbieter lässt eine Verwaltungssoftware entwickeln. Die Anforderungen stehen im Kasten.

Anforderungen des Carsharing-Anbieters

(1) Der Anbieter betreibt mehrere Stationen; jede Station hat einen Namen. (2) An jeder Station stehen bis zu zehn Fahrzeuge. (3) Jedes Fahrzeug hat ein Kennzeichen und einen Preis pro Minute. (4) Elektroautos sind Fahrzeuge, bei denen zusätzlich der Akkustand in Prozent gespeichert wird. (5) Kunden haben einen Namen und eine Führerscheinnummer. (6) Eine Buchung gehört zu genau einem Kunden und genau einem Fahrzeug und speichert die gefahrenen Minuten; aus ihr lassen sich die Kosten berechnen. (7) Jeder Kunde soll alle seine Buchungen einsehen können.

  1. Erstellen Sie ein Klassendiagramm, das die Anforderungen (1) bis (7) erfüllt. Geben Sie Attribute mit Datentypen, die für (6) und (7) nötigen Methoden sowie alle Beziehungen mit Richtung und Kardinalität an. 7 BE
  2. Erläutern Sie zwei Entwurfsentscheidungen Ihres Diagramms: die Modellierung der Elektroautos und die Verbindung zwischen Buchung und Kunde. 4 BE
  3. Implementieren Sie die Klasse Buchung mit Konstruktor und der Methode kosten(): Fließkommazahl. Der Konstruktor soll dafür sorgen, dass Anforderung (7) erfüllt bleibt. 5 BE
  4. Stellen Sie den Zustand nach den folgenden Anweisungen als Objektdiagramm dar und geben Sie den Rückgabewert von b.kosten() an.
    Kunde k = new Kunde("Jo", "B123");
    EAuto e = new EAuto("H-E 42", 0.30, 80);
    Buchung b = new Buchung(k, e, 45);
    3 BE

Summe: 19 BE

Hinweise

Hinweis zu Aufgabe a)
Gehe Satz für Satz vor und notiere, welches Diagrammelement jeder Satz liefert. Zwei Sätze verlangen ein „Kennen“ in beide Richtungen.
Hinweis zu Aufgabe b)
Welche Alternative zur Vererbung gäbe es, und was würde eine Kundennummer statt einer Referenz bedeuten?
Hinweis zu Aufgabe c)
Die Kosten ergeben sich aus den Minuten und dem Minutenpreis des Fahrzeugs. Für (7) muss der Kunde von der neuen Buchung erfahren.
Hinweis zu Aufgabe d)
Drei Objekte; die Buchung zeigt auf die beiden anderen, der Kunde zurück auf die Buchung.