Aufgabe Vorschlag C - 1 - Sequenzdiagramme und Netzwerkko… · Abitur Hessen Technische Informatik LK 2022

Thema: Sequenzdiagramme und Netzwerkkommunikation · Aus der Prüfung LK (2022)

Aufgabenstellung

Gewächshaus

Ein Gewächshaushersteller möchte eine Serie automatisierter Gewächshäuser herausbringen. Hierzu benötigt er eine Software, die die Sensoren im Gewächshaus überwacht und abhängig von den erfassten Werten und den von den Benutzerinnen bzw. Benutzern (im Folgenden Benutzer genannt) eingestellten Schwellwerten verschiedene Prozesse im Gewächshaus steuert.

Material 1: UML-Klassendiagramm

Material 2: ServerSocket und Socket

Material 3: UML-Sequenzdiagramm für Client-Server-Kommunikation

1.4 Die Gewächshaussteuerung ruft in regelmäßigen Abständen auf allen Sensoren die Methode initialisieren() auf. Diese Methode initialisiert den jeweiligen Sensor für eine neue Messung, lässt den Sensor die Messung durchführen und speichert das Messergebnis in dem Attribut wert ab.

Im Folgenden ist der Ablauf anhand eines konkreten Temperatursensors genauer beschrieben:

Ein Objekt der Klasse Temperatursensor baut als Client eine Netzwerkverbindung zu dem physikalischen Temperatursensor ( physTempS) auf, der als Server fungiert.

Der Server mit der Adresse 192.168.5.8 lauscht auf Port 4321 auf Verbindungen.

Sobald eine Verbindung aufgebaut ist, erwartet er vom Client das Schlüsselwort „Temp“.

Hat der Client das Schlüsselwort gesendet, so sendet der Server den Temperaturwert, den er in der Variable temperatur gespeichert hat, an den Client.

Wurde ein falsches Schlüsselwort gesendet, so wird der Wert „-999“ übertragen.

Der Client konvertiert den übertragenen Wert mittels einer eigenen Methode convert(...) in das Zahlenformat, das er benötigt und speichert ihn in der Variablen wert ab.

Anschließend wird die Verbindung wieder abgebaut.

Modellieren und zeichnen Sie gemäß der obenstehenden Beschreibung für einen Temperatursensor unter der Verwendung der Klassen ServerSocket und Socket (Material 2) ein vollständiges UML-Sequenzdiagramm (Client- und Serverseite) in Material 3.

Aufgabenstellung: Aufgabe Vorschlag C - 1 - Sequenzdiagramme und Netzwerkko… · Abitur Hessen Technische Informatik LK 2022

Lösung

Nach den offiziellen Korrekturhinweisen

1.4 Modellieren und zeichnen Sie ein vollständiges UML-Sequenzdiagramm (Client- und Serverseite) in Material 3.

Lösung: Ablauf im Sequenzdiagramm: 1. `g:Gewaechshaussteuerung` ruft `initialisieren(): void` auf `t:Temperatursensor` auf. 2. Serverseite: `physTempS:Server` erzeugt `serv:ServerSocket` via `ServerSocket(4321)` und ruft `accept(): Socket` auf; dadurch entsteht `ws:Socket`. 3. Clientseite: `t:Temperatursensor` instanziiert `s:Socket` via `Socket("192.168.5.8", 4321)` und ruft `connect(): boolean` auf. 4. Client sendet Nachricht `write("Temp"): void` über `s`, Server liest `schluesselwort = readLine(): String` über `ws`. 5. alt-Fragment `[schluesselwort = 'Temp']`: - Server sendet `write(temperatur): void` - `[sonst]` Server sendet `write("-999"): void` 6. Client liest `value = readLine(): String` und führt Selbstaufruf `wert = convert(value)` aus. 7. Beide Seiten schließen ihre Verbindung über `close(): void` und zerstören die Sockets.

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 A - Aufgabe 2.1 · LK 2021 ›

Mehr Aufgaben zu Sequenzdiagramme und Netzwerkkommunikation