Aufgabe 2 - Modellierung · Abitur NRW Informatik LK · Nachtermin 2022
Thema: Objektorientierte Modellierung mit Implementationsdiagrammen · Aus der Prüfung LK · Nachtermin (2022)
Aufgabenstellung
Aufgabenstellung:
Im Nationalpark Wildlife teilen sich unterschiedliche Tierarten ein weitläufiges Freigelände. Die Parkleitung will das Zusammenspiel der Tiere näher untersuchen und stattet sie deshalb mit Halsbändern aus, die Begegnungen mit anderen Tieren erfassen und verwalten können.
Jedes Halsband sendet in regelmäßigen Zeitabständen ein Signal mit einem eindeutigen individuellen Schlüssel aus fünf Zeichen. Empfängt ein Halsband das Signal eines anderen Halsbands, kommt eine sogenannte Begegnung zustande. Bei dieser werden der mit dem Signal übertragene Schlüssel, die Stärke des Signals (z. B. zur Ermittlung des Abstands der beiden Tiere) und der Zeitpunkt der Begegnung lokal auf dem empfangenden Halsband gespeichert.
Wird ein bestimmter Schlüssel von einem Halsband erstmals empfangen, legt dieses dafür zusätzlich einen sogenannten Kontakt an. Ein Kontakt verwaltet sämtliche Begegnungen mit demselben Schlüssel. Ist zu einem Schlüssel ein Kontakt vorhanden, gab es also schon mindestens eine Begegnung mit dem Halsband, das diesen Schlüssel sendet. Daher ist bei jeder neuen Begegnung zu prüfen, ob schon ein passender Kontakt vorliegt.
Innerhalb eines Kontakts sind die Begegnungen aufsteigend nach dem Zeitpunkt geordnet. Die Kontakte selbst liegen in einem Suchbaum, der alphabetisch nach dem Schlüssel geordnet ist.
Zur Überprüfung der Funktionsweise werden die Halsbänder zunächst einen Tag lang in einem kleineren Gehege an einigen Erdmännchen des Parks getestet. Zum Zeitpunkt der Aktivierung sind auf den Halsbändern zunächst weder Kontakte noch Begegnungen gespeichert. Das Halsband eines Erdmännchens erfasst während des Tests Begegnungen in der in Abbildung 1 angegebenen Reihenfolge. Abbildung 2 zeigt den Suchbaum mit allen Kontakten (dargestellt über ihren Schlüssel und die Anzahl der zugehörigen Begegnungen), der sich bei der Verarbeitung der Begegnungen aus Abbildung 1 ergibt.
Nr. · Schlüssel · Signalstärke · Zeitpunkt
1 · ncgde · 132 · 2022-03-19 15:54
2 · grsmt · 154 · 2022-03-19 16:21
3 · grsmt · 46 · 2022-03-19 16:23
4 · bdsuw · 113 · 2022-03-19 16:27
5 · pwagb · 21 · 2022-03-19 16:33
6 · mkwda · 78 · 2022-03-19 16:34
7 · ncgde · 103 · 2022-03-19 16:35
8 · mkwda · 142 · 2022-03-19 16:39
9 · wrlyr · 69 · 2022-03-19 17:02
Abbildung 1: Begegnungen des Halsbands eines Erdmännchens
Abbildung 4 zeigt einen Ausschnitt aus dem Implementationsdiagramm des Softwaresystems der Halsbänder.
Das Nachfolgemodell der im Park bisher eingesetzten Halsbänder ist zusätzlich mit einer GPS-Einheit ausgestattet. Damit lässt sich jederzeit der genaue Standort ermitteln. Die aktuelle Position wird dabei mithilfe zweier Koordinaten bestimmt. Der Eingang des Parks befindet sich zum Beispiel ungefähr bei den Koordinaten 52.7478 und 9.6156.
Das Forschungsteam des Parks möchte das Verhalten der Tiere und die Bewegungen einzelner Tiere genauer untersuchen. In einer Übergangsphase kommen weiterhin beide Modelle der Halsbänder parallel zum Einsatz. Dazu soll die bisherige Software um folgende Aspekte erweitert werden:
Ein Halsband speichert zusätzlich zu seinem eigenen Schlüssel eine Modellbezeichnung, aus der hervorgeht, ob es zum älteren oder zum neueren Modell gehört. Diese Angabe soll von außen abrufbar sein.
Die Software soll Standorte verwalten können, die einer mit der beschriebenen GPS-Einheit bestimmten Position entsprechen. Jede Information eines solchen Standorts soll einzeln abrufbar sein.
Halsbänder des neueren Modells erfassen beim Zustandekommen einer Begegnung zusätzlich ihren Standort und ordnen diesen der Begegnung zu. Auf Anfrage soll dieser zurückgeliefert werden.
d)
Modellieren Sie die oben genannten Anforderungen als Erweiterung der Modellierung aus Abbildung 4 und stellen Sie dabei nur die Veränderungen und Erweiterungen in Form eines Implementationsdiagramms dar.
Erläutern Sie, auf welche Weise Ihr Modell die einzelnen Anforderungen umsetzt.

Lösung
Nach den offiziellen Korrekturhinweisen
d) Modellieren Sie die oben genannten Anforderungen als Erweiterung der Modellierung aus Abbildung 4 und stellen Sie dabei nur die Veränderungen und Erweiterungen in Form eines Implementationsdiagramms dar.
Lösung: Mögliche Erweiterung des ursprünglichen Modells: - Klasse Halsband: - Attribut `-modellbezeichnung: String` - Konstruktor `+Halsband(pSchluessel: String, pModellbezeichnung: String)` - Methode `+gibModellbezeichnung(): String` - Klasse Begegnung: - Konstruktorüberladung oder angepasster Konstruktor: `+Begegnung(pSchluessel: String, pSignalstaerke: int, pZeitpunkt: String, pStandort: Standort)` - Methode `+gibStandort(): Standort` - Assoziation `-standort` gerichtet auf `Standort` - Klasse Standort: - Attribute `-gpsBreite: double`, `-gpsLaenge: double` - Konstruktor `+Standort(pGpsBreite: double, pGpsLaenge: double)` - Methoden `+gibGpsBreite(): double`, `+gibGpsLaenge(): double`
Erläutern Sie, auf welche Weise Ihr Modell die einzelnen Anforderungen umsetzt.
Lösung: Zu 1.: Die Klasse Halsband erhält ein weiteres Attribut modellbezeichnung vom Typ String, das die Modellbezeichnung des Halsbands verwaltet. Der Konstruktor wird um den Parameter pModellbezeichnung ergänzt. Die Methode gibModellbezeichnung ermöglicht die Abfrage der Modellbezeichnung. Zu 2.: Zur Verwaltung der Standorte wird die Klasse Standort hinzugefügt. Objekte dieser Klasse verwalten eine aktuelle Position über zwei Attribute vom Typ double namens gpsBreite und gpsLaenge. Um alle zu einem Standort gehörenden Informationen einzeln abfragen zu können, verfügt die Klasse neben dem Konstruktor über die beiden Getter gibGpsBreite und gibGpsLaenge. Zu 3.: Die Klasse Begegnung wird um ein zusätzliches Attribut standort vom Typ Standort erweitert. Dieses verwaltet die Position, an der sich das Halsband zum Zeitpunkt des Zustandekommens einer neuen Begegnung befindet. Neben dem Getter gibStandort besitzt die Klasse einen um den Parameter pStandort erweiterten, überladenen Konstruktor. Dieser wird von Halsbändern des neueren Modells genutzt, Halsbänder des älteren Modells nutzen weiterhin den bereits zuvor existierenden Konstruktor.
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 1 - Modellierung · LK · Nachtermin 2022 · Aufgabe 1 - Objektorientierte Modellierung mit Im… · GK · Haupttermin 2021 ›
Mehr Aufgaben zu Objektorientierte Modellierung mit Implementationsdiagrammen
- Aufgabe 1 - Modellierung · GK · Nachtermin 2022
- Aufgabe 2 - Modellierung · GK · Nachtermin 2022
- Aufgabe 1 - Objektorientierte Modellierung · LK · Haupttermin 2022
- Aufgabe 2 - Objektorientierte Modellierung · LK · Haupttermin 2022
- Aufgabe 1 - Modellierung · LK · Nachtermin 2022
- Aufgabe 1 - Objektorientierte Modellierung mit Im… · GK · Haupttermin 2021
- Aufgabe 2 - Objektorientierte Modellierung mit Im… · GK · Haupttermin 2021
- Aufgabe 1 - Objektorientierte Modellierung · GK · Haupttermin · Weiterbildungskolleg 2021
- Aufgabe 2 - Objektorientierte Modellierung · GK · Haupttermin · Weiterbildungskolleg 2021
- Aufgabe 1 - Objektorientierte Modellierung mit Im… · GK · Nachtermin 2021