Aufgabe Vorschlag AJ - 3.1 - UML-Modellierung · Abitur Hessen Informatik GK 2022

Thema: Objektorientierte Modellierung mit UML · Aus der Prüfung GK (2022)

Aufgabenstellung

Ausleihsystem StadtRad

Eine Großstadt hat ein Ausleihsystem namens StadtRad für Fahrräder eingeführt. Nach dem Motto „Aufsteigen und losfahren“ soll für die Bürgerinnen und Bürger an zahlreichen Leihstationen im gesamten Stadtgebiet die Möglichkeit bestehen, ein Rad auszuleihen und dieses wieder an derselben oder einer anderen Station zurückzugeben. Jede Station verfügt dabei über Stellplätze, an denen die Räder angeschlossen werden. Die Anzahl der Stellplätze ist an jeder Station gleich.

Zur Verwaltung des StadtRad-Ausleihsystems

erhalten die Stationen eine eindeutige Stationsnummer,

muss jeder Kunde im System registriert sein; er ist dann über seine Kundennummer zu identifizieren,

verfügt jedes Rad über eine eindeutige Radnummer, die bei der Ausleihe beim Kunden eingetragen wird. Ist ein Rad gerade nicht verliehen, ist die Radnummer beim Stellplatz eingetragen, an dem das Rad angeschlossen ist.

Den Kunden wird eine App zur Verfügung gestellt, mit der sie sich im System registrieren, die Verfügbarkeit von Rädern an einer Station überprüfen sowie deren Ausleihe und Rückgabe durchführen können.

Material 1

GUI der StadtRad-App

Material 2

Klassendiagramm der Klasse Station

Material 3

Methode zurückgeben(...) der Klasse Verwaltung

01 public boolean zurückgeben(int KundenNr, int StationsNr) {

02 Kunde einKunde = gibKunde(KundenNr);

03 Station eineStation = gibStation(StationsNr);

04 if (einKunde != null && eineStation != null) {

05 int RadNr = einKunde.getAusgeliehenesRad();

06 if (eineStation.abstellen(RadNr) == true) {

07 einKunde.setAusgeliehenesRad(0);

08 einKunde.setEndzeit();

09 einKunde.berechneGebühren();

10 return true;

11 }

12 }

13 return false;

14 }

Material 4

Methoden suche(...) und suche2(...)

01 public int suche(String Nachname, String Vorname) {

02 return suche2(0, AnzahlKunden - 1, Nachname, Vorname);

03 }

04

05 private int suche2(int a, int b, String Nachname, String Vorname) {

06 if (b < a)

07 return 0;

08 int m = (a + b) / 2;

09 if (Kunden[m].getNachname().equals(Nachname) &&

10 Kunden[m].getVorname().equals(Vorname))

11 return Kunden[m].getKundenNr();

12 if (Kunden[m].getNachname().compareTo(Nachname) > 0 ||

13 Kunden[m].getNachname().equals(Nachname) &&

14 Kunden[m].getVorname().compareTo(Vorname) > 0)

15 return suche2(a, m - 1, Nachname, Vorname);

16 else

17 return suche2(m + 1, b, Nachname, Vorname);

18 }

3.1

Beschreiben Sie das UML-Diagramm der Klasse Station in Material 2.

[5 BE]

Aufgabenstellung: Aufgabe Vorschlag AJ - 3.1 - UML-Modellierung · Abitur Hessen Informatik GK 2022

Lösung

Nach den offiziellen Korrekturhinweisen

3.1 Beschreiben Sie das UML-Diagramm der Klasse Station in Material 2.

Lösung: Die Klasse Station hat zwei Attribute, die als privat deklariert sind: StationsNr vom Typ int sowie Stellplatz als Feld von int-Werten. Der Konstruktor wird mit dem Parameter StationsNr vom Datentyp int aufgerufen. Darüber hinaus gibt es drei öffentliche Methoden. Eine get-Methode für das Attribut StationsNr, die Methode abstellen(...) mit dem Parameter RadNr vom Datentyp int und dem Rückgabetyp boolean sowie die Methode entnehmen() mit dem Rückgabetyp int.

Die ausführliche Erklärung Schritt für Schritt (mit KI) gibt es mit Premium. Premium

Löse sie direkt hier: automatische Korrektur, Hinweise und Lösung Schritt für Schritt.

‹ Aufgabe Vorschlag AJ · GK 2022 · Aufgabe Vorschlag AJ - Aufgabe 1 · LK 2022 ›

Mehr Aufgaben zu Objektorientierte Modellierung mit UML