MINT üben

Projekt: Software im Team

Von der Anforderung zum Test: Eine Schulbus-App entwerfen und im Team eine Escape-Room-Buchung mit Testfällen absichern.

Dein Fortschritt:
0 / 0 Aufgaben
1

Eine App für den Schulbus

AFB I–II

Der Schülerrat eines Landkreises beauftragt einen Informatikkurs mit einer App für die Schulbusse. Material 1 gibt das Gespräch mit dem Schülerrat wieder, das als Grundlage für das Pflichtenheft dient. Der Kurs arbeitet in drei Teams, die die Klassen getrennt implementieren sollen.

Material 1: Gesprächsnotiz mit dem Schülerrat

„Wir wollen in der App unsere Buslinie auswählen und für unsere Haltestelle sehen, um wie viel Uhr der Bus dort abfährt. Jede Linie hat eine Nummer, zum Beispiel 512, und startet zu einer festen Uhrzeit. Sie fährt bis zu 20 Haltestellen in fester Reihenfolge an. Für jede Haltestelle kennt der Fahrplan die Fahrzeit in Minuten ab dem Start der Linie. Die Busfahrerin meldet eine Verspätung in Minuten, die dann für alle folgenden Abfahrten der Linie gilt. Bei jeder Haltestelle soll man sehen, ob sie barrierefrei ist. Wichtig ist uns, dass die App auch ohne Netz den zuletzt geladenen Fahrplan zeigt, dass die Abfahrtszeit nach höchstens zwei Klicks sichtbar ist und dass keine Standortdaten gespeichert werden.“

Uhrzeiten werden intern als Minuten nach Mitternacht gespeichert, z. B. 7:05 Uhr als 425.
  1. Nennen Sie aus Material 1 drei funktionale Anforderungen (was die App leisten soll) und drei nicht-funktionale Anforderungen (wie sie es leisten soll).
  2. Erstellen Sie ein Klassendiagramm mit den Klassen Buslinie und Haltestelle einschließlich Beziehung und Kardinalitäten, das die funktionalen Anforderungen abdeckt. Die Abfahrtszeit an einer Haltestelle soll über den Namen der Haltestelle erfragt werden können.
  3. Begründen Sie, warum die drei Teams das Klassendiagramm verbindlich vereinbaren sollten, bevor sie mit der Implementierung beginnen.

Hinweise

Hinweis zu Aufgabe a)
Funktionale Anforderungen lassen sich meist als „Die App soll [Tätigkeit] können“ formulieren. Nicht-funktionale beschreiben Qualitäten wie Bedienbarkeit, Verfügbarkeit oder Datenschutz.
Hinweis zu Aufgabe b)
Substantive werden zu Klassen oder Attributen, Verben zu Methoden. Eine Linie hat mehrere Haltestellen – dafür brauchst du eine Reihung und einen Zähler. Wo wird die Verspätung gespeichert?
Hinweis zu Aufgabe c)
Überlege, was Team „Haltestelle“ und Team „Buslinie“ voneinander wissen müssen, um gleichzeitig arbeiten zu können.