Zum Inhalt springen

Fachübungen 10 – Informationstechnische Systeme programmieren - Informationselektroniker

Aus MOOCsWiki Staging
aiMOOC-Siegel aiMOOC

Fachübungen 10 – Informationstechnische Systeme programmieren - Informationselektroniker

QR-Code



Einleitung

Ein Programmablaufplan macht Entscheidungen, Schleifen und Verarbeitungsschritte sichtbar.
Ein Programmablaufplan macht Entscheidungen, Schleifen und Verarbeitungsschritte sichtbar.

Im Lernfeld 10 des dritten Ausbildungsjahres entwickelst, veränderst und prüfst du Programme für informationstechnische Systeme. Dazu gehören die Auswahl einer geeigneten Programmiersprache, die Arbeit mit Entwicklungsumgebungen und Bibliotheken, die Modellierung relationaler Datenbanken, die Anbindung von Schnittstellen sowie das systematische Testen und Dokumentieren. Der Kurs arbeitet ausschließlich mit synthetischen Daten und simulierten Geräten.

Sicherheitshinweis: Programme dürfen keine reale Maschine, Gefahrenmeldeanlage, elektrische Anlage oder gesundheitsrelevante Funktion ungeprüft freigeben. Arbeiten an elektrischen, maschinellen oder sicherheitskritischen Systemen erfolgen ausschließlich unter Anleitung qualifizierter Fachkräfte und nach den geltenden Schutzregeln.


Berufs- und Prüfungsbezug

Die seit dem 1. August 2021 geltende Ausbildung zum Informationselektroniker beziehungsweise zur Informationselektronikerin dauert 42 Monate. Sie hat keine Fachrichtungen, sondern betriebliche Einsatzgebiete: Geräte-, Informations- und Bürosystemtechnik, Sende-, Empfangs- und Breitbandtechnik, Brandschutz- und Gefahrenmeldeanlagen sowie Telekommunikationstechnik. Das Einsatzgebiet legt der Ausbildungsbetrieb fest.

Die Gesellenprüfung ist gestreckt. Teil 1 liegt im vierten Ausbildungshalbjahr, Teil 2 am Ende der Ausbildung. Die gesetzlich festgelegte Gewichtung lautet:

Prüfungsbereich Gewichtung Bezug zu diesem Kurs
Elektrotechnische Anlagen und Betriebsmittel 30 Prozent Technische Unterlagen, Systemprüfung und Fehlersuche
Kundenauftrag 36 Prozent Planung, Umsetzung, Dokumentation und Fachgespräch
Systementwurf 12 Prozent Anforderungen, Programmplanung, Datenmodell und Schnittstellen
Funktions- und Systemanalyse 12 Prozent Testfälle, Mess- und Programmdaten, Diagnose und Bewertung
Wirtschafts- und Sozialkunde 10 Prozent Recht, Datenschutz, Organisation und Verantwortung

Für den Prüfungsbereich Kundenauftrag kann die zuständige Stelle ein Variantenmodell anwenden. Dieses erlaubt wahlweise einen betrieblichen Auftrag oder eine praktische Arbeitsaufgabe. Die Erprobungsregel gilt nach aktuellem Rechtsstand für Prüfungen, die bis zum 30. Juni 2028 begonnen werden. Verbindlich sind stets die Vorgaben der zuständigen Handwerkskammer.


Lernziele

Nach der Bearbeitung kannst du Kundenanforderungen in überprüfbare Kriterien überführen, Algorithmen mit Programmablaufplan, Struktogramm oder Pseudocode planen, geeignete Datenstrukturen auswählen, Schnittstellen und Bibliotheken kontrolliert einbinden, relationale Datenbanken modellieren und abfragen sowie Test- und Fehlerprotokolle erstellen. Du begründest außerdem Entscheidungen zu Datenschutz, Informationssicherheit, Wartbarkeit und Qualität.


Kundenauftrag analysieren und Entwicklung planen


Vom Kundenwunsch zur prüfbaren Anforderung

Ein Kundenwunsch wie „Die Anwendung soll schnell reagieren“ ist noch nicht testbar. Eine Anforderung wird erst prüfbar, wenn Auslöser, Eingaben, erwartete Ausgabe, Grenzwerte und Randbedingungen festgelegt sind. Aus „schnell“ kann zum Beispiel werden: „Die simulierte Statusanzeige wird spätestens 500 Millisekunden nach Eingang eines gültigen Datensatzes aktualisiert.“ Zusätzlich brauchst du Akzeptanzkriterien, mit denen Auftraggeber und Entwicklungsteam dasselbe Ergebnis beurteilen.

Kundenwunsch Präzisierte Anforderung Akzeptanzkriterium
Messwerte anzeigen Temperatur und Luftfeuchte aus synthetischen Datensätzen darstellen Jeder gültige Datensatz erscheint mit Gerätekennung und Zeitstempel
Fehler erkennen Werte außerhalb des definierten Bereichs ablehnen Ungültige Werte werden nicht gespeichert und mit Fehlercode protokolliert
Daten auswerten Tagesmittel aus gültigen Messwerten berechnen Ergebnis stimmt bei Referenzdaten auf eine Nachkommastelle
Bedienung schützen Rollen für Anzeige und Administration trennen Änderungsfunktionen sind ohne Administrationsrolle gesperrt

Typische Fehler sind unmessbare Formulierungen, fehlende Grenzfälle, widersprüchliche Vorgaben und die Vermischung von fachlicher Anforderung und technischer Lösung. Kläre deshalb früh, was erreicht werden soll, bevor du festlegst, wie es umgesetzt wird.


Planungswerkzeuge

Ein Programmablaufplan stellt Abläufe mit genormten Symbolen und Pfeilen dar. Ein Struktogramm zeigt Sequenz, Auswahl und Wiederholung als verschachtelte Blöcke. Pseudocode beschreibt den Ablauf sprachähnlich, ohne an eine konkrete Programmiersprache gebunden zu sein. Für einen Kundenauftrag kann ein sinnvoller Plan so aussehen:

START
Datensatz empfangen
Format prüfen
WENN Format ungültig
    Fehler protokollieren
SONST
    Wertebereich prüfen
    WENN Werte gültig
        Status berechnen
        Datensatz speichern
        Anzeige aktualisieren
    SONST
        Plausibilitätsfehler protokollieren
ENDE WENN
STOP
Beispiel eines Ablaufdiagramms für prozedurale Programmierung.
Beispiel eines Ablaufdiagramms für prozedurale Programmierung.


Aufwand und Datenmenge überschlagen

Schon vor der Implementierung hilft eine Größenrechnung. Senden 24 simulierte Geräte jede Minute einen Datensatz von 48 Byte, entstehen pro Tag:

24 Geräte · 1.440 Minuten · 48 Byte = 1.658.880 Byte
1.658.880 Byte ÷ 1.048.576 Byte je MiB ≈ 1,58 MiB pro Tag

Für 365 Tage sind das ohne Indizes, Protokolle und Sicherungen rund 577 MiB. In einer realen Planung rechnest du Zuschläge für Datenbankindizes, Backups, Metadaten und Wachstum ein. Ein typischer Fehler ist, nur die Nutzdaten zu betrachten und Protokoll- oder Sicherungsbedarf zu vergessen.


Algorithmen, Datenstrukturen und Programmlogik


Algorithmus und Kontrollstrukturen

Ein Algorithmus ist eine endliche, eindeutige und ausführbare Folge von Schritten zur Lösung eines Problems. In Programmen werden drei Grundstrukturen kombiniert: Sequenz für nacheinander ausgeführte Anweisungen, Auswahl für Entscheidungen und Wiederholung für Schleifen. Jede Schleife braucht eine nachvollziehbare Abbruchbedingung. Fehlt sie oder kann sie nie erreicht werden, entsteht eine Endlosschleife.

Eine robuste Plausibilitätsprüfung kann in sprachunabhängigem Pseudocode so formuliert werden:

FUNKTION pruefe_messwert(temperatur, feuchte):
    WENN temperatur < 0 ODER temperatur > 50:
        GIB "TEMPERATUR_UNGUELTIG" ZURUECK
    WENN feuchte < 0 ODER feuchte > 100:
        GIB "FEUCHTE_UNGUELTIG" ZURUECK
    WENN temperatur > 28:
        GIB "WARNUNG_WARM" ZURUECK
    GIB "OK" ZURUECK

Die Reihenfolge ist wichtig: Erst wird die Gültigkeit geprüft, danach eine fachliche Warnung berechnet. Würde die Warnung zuerst geprüft, könnte ein völlig unrealistischer Wert fälschlich als bloße Temperaturwarnung weiterverarbeitet werden.


Datentypen und Datenstrukturen

Datentypen legen fest, welche Werte gespeichert und welche Operationen ausgeführt werden können. Für Zählwerte eignen sich ganze Zahlen, für Messwerte häufig Fließkommazahlen oder feste Dezimaltypen, für Zustände boolesche Werte oder klar definierte Aufzählungen. Zeichenketten speichern Texte, dürfen aber nicht ungeprüft als Zahlen interpretiert werden.

Bedarf Geeignete Struktur Typischer Fehler
Einzelner Temperaturwert Dezimal- oder Fließkommazahl Einheit fehlt oder Kommaformat wird falsch geparst
Folge gleichartiger Messwerte Liste oder Array Index außerhalb des gültigen Bereichs
Datensatz mit benannten Feldern Objekt, Struktur oder Dictionary Pflichtfeld bleibt unbemerkt leer
Eindeutige Statuswerte Enumeration Uneinheitliche freie Texte wie ok, OK und in Ordnung
Zuordnung Gerätekennung zu Zustand Map oder Dictionary Doppelte oder veränderliche Schlüssel

Bei Gleitkommazahlen können Rundungsabweichungen auftreten. Für Geldbeträge oder exakt definierte Dezimalwerte ist ein Dezimaltyp häufig geeigneter. Ein Mittelwert aus 21,8 °C, 22,1 °C und 28,6 °C wird so berechnet:

(21,8 + 22,1 + 28,6) ÷ 3 = 72,5 ÷ 3 = 24,166...
Gerundet auf eine Nachkommastelle: 24,2 °C


Funktionen, Bibliotheken und verständlicher Code

Funktionen zerlegen ein Programm in überschaubare, testbare Einheiten. Eine Funktion sollte einen klaren Zweck, aussagekräftige Parameter und einen definierten Rückgabewert haben. Bibliotheken liefern wiederverwendbare Bausteine, müssen aber auf Herkunft, Lizenz, Version, Sicherheitsstand und Eignung geprüft werden.

Guter Code verwendet verständliche Namen, vermeidet unnötige Wiederholungen und trennt Dateneingang, Fachlogik, Speicherung und Darstellung. Typische Fehler sind globale Zustände, versteckte Seiteneffekte, fest eingebaute Zugangsdaten, unklare Einheiten und das ungeprüfte Übernehmen fremder Codefragmente.


Schnittstellen und Systemintegration


Schnittstellen als vertraglich festgelegte Übergänge

Eine Schnittstelle beschreibt, wie zwei Komponenten Daten oder Befehle austauschen. Dazu gehören Datenformat, Feldnamen, Datentypen, Reihenfolge, Fehlercodes, Authentifizierung und Zeitverhalten. Bei einer Programmierschnittstelle, kurz API, sendet ein Client eine Anfrage und erhält eine Antwort. Der Vertrag muss auch festlegen, was bei fehlenden Feldern, Zeitüberschreitung oder einer nicht unterstützten Version geschieht.

Vereinfachter Ablauf einer Anfrage an eine Web-API mit einer Antwort im JSON-Format.
Vereinfachter Ablauf einer Anfrage an eine Web-API mit einer Antwort im JSON-Format.
Beispiel einer synthetischen Anfrage:
GET /api/v1/readings/device/M-01

Beispiel einer synthetischen Antwort:
{
  "device_id": "M-01",
  "timestamp": "2026-11-02T08:00:00+01:00",
  "temperature_c": 21.8,
  "humidity_pct": 43
}

Der Zeitstempel enthält eine Zeitzone. Ein typischer Integrationsfehler ist, lokale Zeit ohne Zeitzonenangabe zu speichern. Weitere Fehlerquellen sind wechselnde Feldnamen, unterschiedliche Zeichencodierungen, fehlende Versionsangaben und unklare Einheiten.


Client-Server-Modell und Fehlerbehandlung

Im Client-Server-Modell stellt der Client eine Anfrage und der Server liefert eine Antwort.
Im Client-Server-Modell stellt der Client eine Anfrage und der Server liefert eine Antwort.

Eine stabile Anwendung behandelt technische Fehler anders als fachliche Fehler. Ein nicht erreichbarer Server ist ein technischer Fehler. Eine Temperatur von 91 °C im vereinbarten Bereich von 0 bis 50 °C ist ein fachlicher Plausibilitätsfehler. Beide Fälle brauchen unterschiedliche Reaktionen:

Fehlerart Beispiel Geeignete Reaktion
Übertragungsfehler Zeitüberschreitung Begrenzte Wiederholung, Protokolleintrag, verständliche Statusmeldung
Formatfehler Pflichtfeld fehlt Datensatz ablehnen und Schemafehler dokumentieren
Plausibilitätsfehler Feuchte über 100 Prozent Nicht speichern, fachlichen Fehlercode ausgeben
Berechtigungsfehler Token ohne benötigte Rolle Zugriff verweigern, keine vertraulichen Details anzeigen
Versionskonflikt Client nutzt veraltete API Kompatibilitätsmeldung und dokumentierten Migrationsweg anbieten

Wiederholungsversuche müssen begrenzt sein. Sonst können Programme Endlosschleifen, doppelte Datensätze oder zusätzliche Last verursachen. Schreibvorgänge sollten deshalb eine eindeutige Vorgangskennung besitzen oder anderweitig gegen doppelte Verarbeitung abgesichert werden.


Bibliotheken und Abhängigkeiten kontrollieren

Vor dem Einbinden einer Programmbibliothek prüfst du Zweck, Lizenz, Wartungsstand, bekannte Sicherheitslücken, benötigte Rechte und Abhängigkeiten. Versionen werden dokumentiert und nach Möglichkeit reproduzierbar festgelegt. Eine Aktualisierung wird zuerst in einer Testumgebung geprüft. Direkte Änderungen an sicherheitskritischen Produktivsystemen ohne Freigabe sind ausgeschlossen.


Relationale Datenbanken planen und nutzen


Vom ER-Modell zur Tabelle

Ein Entity-Relationship-Modell beschreibt fachliche Objekte, ihre Eigenschaften und Beziehungen. Eine Entität kann zum Beispiel ein Gerät sein, ein Attribut dessen Standort und eine Beziehung die Zuordnung von Messwerten zu diesem Gerät. Das Modell trennt die fachliche Sicht zunächst von der technischen Umsetzung.

Ein einfaches Entity-Relationship-Modell zeigt Entitäten, Attribute und Beziehungen.
Ein einfaches Entity-Relationship-Modell zeigt Entitäten, Attribute und Beziehungen.

In einer relationalen Datenbank werden Daten in Tabellen gespeichert. Jede Zeile ist ein Datensatz, jede Spalte ein Attribut. Ein Primärschlüssel identifiziert einen Datensatz eindeutig. Ein Fremdschlüssel verweist auf den Primärschlüssel einer anderen Tabelle und bildet Beziehungen ab.

Grundbegriffe relationaler Datenbanken mit Relation, Tupel und Attribut.
Grundbegriffe relationaler Datenbanken mit Relation, Tupel und Attribut.


Beispielschema

Tabelle Wichtige Felder Zweck
DEVICE device_id, name, location Stammdaten eines simulierten Geräts
MEASUREMENT measurement_id, device_id, timestamp, temperature_c, humidity_pct, status Gültige Messwerte und berechneter Zustand
ERROR_LOG error_id, device_id, timestamp, error_code, raw_value Abgelehnte Daten ohne personenbezogene Inhalte
TEST_CASE test_id, input_data, expected_result, actual_result, result Wiederholbare Prüfung der Fachlogik

Zwischen DEVICE und MEASUREMENT besteht eine 1:n-Beziehung: Ein Gerät kann viele Messwerte besitzen, jeder Messwert gehört genau zu einem Gerät. Deshalb liegt der Fremdschlüssel device_id auf der n-Seite in MEASUREMENT.


SQL sicher und nachvollziehbar einsetzen

SQL dient unter anderem zum Erstellen, Ändern und Abfragen von Tabellen. Eine gefilterte Auswertung kann lauten:

SELECT device_id, timestamp, temperature_c
FROM MEASUREMENT
WHERE temperature_c > :limit
ORDER BY timestamp ASC;

`:limit` steht für einen gebundenen Parameter. Werte werden nicht durch das Zusammenbauen einer Zeichenkette in die Abfrage eingesetzt. Parametrisierte Abfragen vermindern das Risiko von SQL-Injection und helfen bei der korrekten Typbehandlung. Rechte werden nach dem Prinzip der geringsten notwendigen Berechtigung vergeben.

Typische Datenbankfehler sind fehlende Primärschlüssel, doppelte Datensätze, unpassende Datentypen, nicht abgesicherte Fremdschlüssel, unklare Löschregeln und Abfragen ohne Filter oder Index. Vor Änderungen an Datenstrukturen wird ein geprüftes Backup- und Migrationskonzept benötigt.


Testen, Fehlerdiagnose und berufstypischer Modellfall


Teststrategie und Diagnoseweg

Ein Testfall enthält mindestens Ausgangslage, Eingaben, Ausführungsschritte, erwartetes Ergebnis und tatsächliches Ergebnis. Gute Testreihen berücksichtigen Normalwerte, Grenzwerte, ungültige Werte und Fehlerzustände. Beim Grenzwerttest prüfst du Werte direkt an und neben einer Grenze. Für den erlaubten Temperaturbereich 0 bis 50 °C sind beispielsweise -0,1, 0,0, 0,1, 49,9, 50,0 und 50,1 °C aussagekräftig.

Diagnosefrage Nachweis Typische Fehlannahme
Tritt der Fehler reproduzierbar auf? Gleicher Testdatensatz und gleiche Version Ein einmaliger Erfolg beweise Fehlerfreiheit
Liegt der Fehler in Eingangsdaten oder Fachlogik? Rohdaten und Zwischenergebnisse vergleichen Jede falsche Ausgabe sei ein Datenbankfehler
Ist nur eine Version betroffen? Versions- und Änderungsprotokoll prüfen Die neueste Version sei automatisch korrekt
Ist die Schnittstelle vertragsgemäß? Schema, Statuscode und Zeitverhalten prüfen Ein gültiges JSON-Format genüge fachlich
Wurde der Fehler behoben, ohne Neues zu beschädigen? Regressionstest ausführen Ein einzelner Nachtest reiche aus


Modellfall: Simulierter Raumklima-Service

Auftrag: Ein Ausbildungsbetrieb benötigt einen Prototyp, der synthetische Raumklimadaten aus einer simulierten API übernimmt. Das Programm soll gültige Daten speichern, ungültige Daten protokollieren, einen Warnstatus berechnen und eine Tagesauswertung erzeugen. Es steuert keine reale Anlage.

Anforderungen:

  • Temperatur ist von 0 bis einschließlich 50 °C gültig.
  • Luftfeuchte ist von 0 bis einschließlich 100 Prozent gültig.
  • Ab mehr als 28 °C lautet der Status WARNUNG_WARM, sonst OK.
  • Ungültige Datensätze werden nicht in MEASUREMENT gespeichert.
  • Datenbankzugriffe erfolgen parametrisiert.
  • Die Dokumentation enthält Testfälle, Ergebnis, Version und bekannte Grenzen.

Synthetische Eingangsdaten:

Nr. Gerät Zeit Temperatur Feuchte Erwartung
1 M-01 08:00 21,8 °C 43 Prozent gültig, OK
2 M-01 08:01 22,1 °C 44 Prozent gültig, OK
3 M-02 08:00 28,6 °C 39 Prozent gültig, WARNUNG_WARM
4 M-02 08:01 91,0 °C 38 Prozent ungültige Temperatur
5 M-03 08:00 20,9 °C 102 Prozent ungültige Feuchte

Lösungsweg:

FÜR jeden Datensatz:
    Pflichtfelder und Datentypen prüfen
    WENN Temperatur außerhalb 0..50:
        ERROR_LOG mit TEMPERATUR_UNGUELTIG schreiben
        nächsten Datensatz bearbeiten
    WENN Feuchte außerhalb 0..100:
        ERROR_LOG mit FEUCHTE_UNGUELTIG schreiben
        nächsten Datensatz bearbeiten
    WENN Temperatur >= 28:
        status = WARNUNG_WARM
    SONST:
        status = OK
    Datensatz parametrisiert in MEASUREMENT speichern

Nachvollziehbares Ergebnis: Drei von fünf Datensätzen sind gültig. Die Annahmequote beträgt:

3 gültige Datensätze ÷ 5 Gesamtdatensätze · 100 = 60 Prozent

Der Mittelwert der gültigen Temperaturen ist:

(21,8 + 22,1 + 28,6) ÷ 3 = 24,166... °C ≈ 24,2 °C

Gespeichert werden zwei Datensätze mit Status OK und ein Datensatz mit WARNUNG_WARM. Zwei Datensätze gelangen mit unterschiedlichen Fehlercodes in ERROR_LOG. Das Ergebnis erfüllt die fachlichen Kriterien, sofern die Datenbankeinträge, Protokolle und Tests die erwarteten Werte reproduzierbar zeigen.


Bewertungsraster für den Modellfall

Kriterium Punkte Volle Leistung
Anforderungsanalyse 15 Alle Grenzwerte, Statusregeln und Ausschlüsse sind testbar formuliert
Programmentwurf 15 Ablauf ist vollständig, eindeutig und behandelt Fehler vor der Speicherung
Datenmodell 15 Schlüssel, Beziehungen, Datentypen und Protokolltabelle sind schlüssig
Implementationsqualität 20 Klare Funktionen, parametrisierte Abfragen, keine fest eingebauten Geheimnisse
Testabdeckung 20 Normal-, Grenz-, Fehler- und Regressionstests mit Soll-Ist-Vergleich
Dokumentation und Datenschutz 10 Version, Quellen, Datenminimierung und bekannte Grenzen sind nachvollziehbar
Reflexion und Transfer 5 Alternativen werden fachlich verglichen und Verbesserungen begründet
Gesamt 100 Beruflich verwertbares, prüfbares Arbeitsprodukt

Bewertungsschlüssel: 90 bis 100 Punkte sehr sicher, 75 bis 89 Punkte sicher, 60 bis 74 Punkte überwiegend sicher, 45 bis 59 Punkte teilweise sicher, unter 45 Punkten grundlegender Überarbeitungsbedarf. Der Schlüssel ist ein Lernraster und ersetzt keine Vorgabe einer zuständigen Prüfungsstelle.


Datenschutz, Informationssicherheit und Dokumentation

Verarbeite nur Daten, die für den Auftrag notwendig sind. Verwende in Übungen keine echten Namen, Kundendaten, Zugangsdaten oder Gerätestandorte. Protokolle sollen für die Fehlersuche nützlich sein, aber keine Passwörter, Tokens oder unnötige personenbezogene Inhalte enthalten. Zugangsdaten werden außerhalb des Quellcodes sicher verwaltet. Änderungen, Testumgebung, Versionen und Freigaben werden dokumentiert.

Eine technische Funktion ist erst dann übergabefähig, wenn Anforderungen, Testergebnisse, bekannte Restrisiken, Bedienhinweise und Zuständigkeiten nachvollziehbar sind. Eine erfolgreiche Einzelprüfung ist keine reale Maschinen- oder Anlagenfreigabe.


Interaktive Aufgaben


Quiz: Wissen prüfen

Welche Formulierung ist ein prüfbares Akzeptanzkriterium? (Die Statusanzeige aktualisiert sich nach einem gültigen Datensatz innerhalb von 500 Millisekunden) (!Die Anwendung soll möglichst modern wirken) (!Das Programm soll normalerweise schnell genug sein) (!Die Bedienung muss für alle angenehm sein)



Rückmeldung: Ein Akzeptanzkriterium nennt eine messbare Bedingung und ein erwartetes Ergebnis.

Welche Eigenschaft verhindert bei einer Schleife am direktesten eine Endlosschleife? (Eine erreichbare und veränderte Abbruchbedingung) (!Eine besonders lange Variablenbezeichnung) (!Eine grafische Benutzeroberfläche) (!Eine Datenbank mit mehreren Tabellen)



Rückmeldung: Die Schleifenbedingung muss sich durch den Ablauf so verändern können, dass sie irgendwann falsch wird.

Warum wird die Gültigkeit eines Messwerts vor der Warnstufe geprüft? (Damit unplausible Werte nicht als fachlich gültige Warnung weiterverarbeitet werden) (!Damit jede Eingabe automatisch in der Datenbank gespeichert wird) (!Damit der Primärschlüssel kürzer geschrieben werden kann) (!Damit keine Testfälle mehr benötigt werden)



Rückmeldung: Validierung schützt die nachfolgenden Berechnungen und die Datenbasis vor unbrauchbaren Eingaben.

Welche Aussage beschreibt eine API am treffendsten? (Sie legt den geregelten Datenaustausch zwischen Softwarekomponenten fest) (!Sie ist ausschließlich ein grafisches Zeichenprogramm) (!Sie ersetzt immer die Datenbank eines Systems) (!Sie ist ein physischer Schutzleiter in einem Gerät)



Rückmeldung: Eine API definiert unter anderem Aufrufe, Datenformate, Antworten und Fehlerverhalten.

Welche Aufgabe hat ein Primärschlüssel? (Er identifiziert jeden Datensatz einer Tabelle eindeutig) (!Er verschlüsselt automatisch alle Spalten) (!Er sortiert jede Abfrage nach dem neuesten Datum) (!Er ersetzt alle Fremdschlüssel anderer Tabellen)



Rückmeldung: Der Primärschlüssel sorgt für eindeutige Identität, nicht automatisch für Verschlüsselung oder Sortierung.

Wo liegt bei einer Beziehung zwischen einem Gerät und vielen Messwerten typischerweise der Fremdschlüssel? (In der Messwerttabelle als Verweis auf das Gerät) (!In jedem Attributnamen der Gerätetabelle) (!Nur in der grafischen Oberfläche) (!Ausschließlich in der Testdokumentation)



Rückmeldung: Bei einer 1:n-Beziehung trägt die n-Seite den Fremdschlüssel zur 1-Seite.

Welche Maßnahme schützt eine SQL-Abfrage am besten vor eingeschleusten Eingabebefehlen? (Die Verwendung parametrisierter Abfragen) (!Das Zusammenfügen aller Eingaben zu einer langen Zeichenkette) (!Das Speichern aller Passwörter im Quellcode) (!Das Abschalten sämtlicher Fehlermeldungen)



Rückmeldung: Gebundene Parameter trennen Datenwerte von der SQL-Befehlsstruktur.

Welche Werte sind für einen Grenzwerttest des erlaubten Bereichs 0 bis 50 besonders geeignet? (Werte knapp unter, genau auf und knapp über beiden Grenzen) (!Nur ein zufälliger Wert aus der Mitte) (!Ausschließlich bereits gespeicherte gültige Werte) (!Nur Textwerte ohne Bezug zum Datentyp)



Rückmeldung: Grenzwerttests untersuchen Übergänge zwischen gültigem und ungültigem Bereich.

Woran erkennst du einen möglichen Indexfehler in einer Liste? (Der Zugriff liegt außerhalb des ersten bis letzten gültigen Listenplatzes) (!Die Datenbank besitzt einen Primärschlüssel) (!Die API liefert einen Zeitstempel) (!Die Funktion hat einen Rückgabewert)



Rückmeldung: Ein Zugriff vor dem ersten oder nach dem letzten gültigen Index führt häufig zu Fehlern oder falschen Ergebnissen.

Welches Vorgehen entspricht der Datenminimierung? (Nur die für Auftrag und Test notwendigen synthetischen Felder speichern) (!Alle verfügbaren Kundendaten vorsorglich kopieren) (!Zugangsdaten zur bequemeren Fehlersuche protokollieren) (!Personenbezogene Daten ohne Löschkonzept dauerhaft aufbewahren)



Rückmeldung: Datenminimierung begrenzt Umfang und Dauer der Verarbeitung auf den klaren Zweck.


Memory

Algorithmus Eindeutige endliche Schrittfolge zur Problemlösung
Compiler Übersetzt Quelltext in eine ausführbare oder weiterverarbeitbare Form
Schnittstelle Vereinbarter Übergang für Daten und Funktionen
Primärschlüssel Eindeutige Kennung eines Tabellendatensatzes
Fremdschlüssel Verweis auf einen Datensatz einer anderen Tabelle
Regressionstest Wiederholungsprüfung nach einer Änderung
Grenzwerttest Prüfung direkt an und neben einer Bereichsgrenze
Datenminimierung Beschränkung auf notwendige Daten





Drag-and-drop

Ordne die passende Tätigkeit zu. Arbeitsergebnis
Anforderung präzisieren Messbares Akzeptanzkriterium
Algorithmus planen Programmablaufplan oder Pseudocode
Datenmodell entwerfen Tabellen, Schlüssel und Beziehungen
Programm prüfen Testprotokoll mit Soll-Ist-Vergleich
Fehler beheben Dokumentierte Korrektur mit Regressionstest




Die Zuordnung bildet einen nachvollziehbaren Weg vom Kundenauftrag bis zur geprüften Korrektur ab.


Kreuzworträtsel

Algorithmus Wie heißt eine endliche eindeutige Schrittfolge zur Problemlösung?
Compiler Welches Werkzeug übersetzt Quelltext?
Schleife Welche Kontrollstruktur wiederholt Anweisungen?
Primärschlüssel Wie heißt die eindeutige Kennung eines Tabellendatensatzes?
Schnittstelle Wie heißt ein festgelegter Übergang zwischen Komponenten?
Testfall Was enthält Eingabe, Erwartung und tatsächliches Ergebnis?





LearningApps


Lückentext

Vervollständige den Text.
Ein prüfbarer Kundenwunsch wird als

mit messbarem Akzeptanzkriterium formuliert. Ein

beschreibt eine endliche Folge von Lösungsschritten. Entscheidungen und Wiederholungen sind grundlegende

. Eine API ist eine vereinbarte

zwischen Softwarekomponenten. In einer relationalen Tabelle identifiziert der

jeden Datensatz eindeutig. Ein Verweis auf eine andere Tabelle heißt

. Parametrisierte Abfragen trennen SQL-Befehl und

. Nach einer Programmänderung schützt ein

vor unbemerkten Folgewirkungen. In Übungen werden ausschließlich

Daten verwendet.




Offene Aufgaben


Leicht

  1. Anforderungen markieren: Kennzeichne in einem kurzen synthetischen Kundenauftrag Eingaben, Ausgaben, Grenzwerte und Akzeptanzkriterien.
  2. Programmablaufplan erstellen: Zeichne für eine Temperaturprüfung mit den Zuständen ungültig, OK und Warnung einen vollständigen Programmablaufplan.
  3. Testdaten auswählen: Erstelle für den Bereich 0 bis 50 °C mindestens sieben begründete Normal-, Grenz- und Fehlerwerte.
  4. SQL-Abfrage erklären: Erläutere Feld für Feld, was eine vorgegebene SELECT-Abfrage mit Filter und Sortierung ausgibt.


Standard

  1. Messwertfunktion programmieren: Implementiere mit einer frei wählbaren Sprache eine Funktion für die Prüfung synthetischer Temperatur- und Feuchtewerte.
  2. ER-Modell entwickeln: Modelliere Geräte, Messwerte und Fehlerprotokolle mit Entitäten, Attributen, Schlüsseln und Kardinalitäten.
  3. Fehlerdiagnose durchführen: Untersuche ein vorbereitetes Programm mit einem Indexfehler und dokumentiere Ursache, Korrektur und Nachtest.
  4. Technische Dokumentation erstellen: Verfasse eine Übergabeseite mit Zweck, Voraussetzungen, Datenformat, Teststand, Grenzen und Sicherheitsvermerk.


Schwer

  1. Mock-API integrieren: Verbinde ein Programm mit einer lokalen oder simulierten API, behandle Zeitüberschreitung und Schemafehler und verhindere doppelte Speicherung.
  2. Datenschutzkonzept entwerfen: Begründe Datenfelder, Rollen, Protokollumfang, Aufbewahrung und Löschung für einen vollständig synthetischen Servicefall.
  3. Regressionstests automatisieren: Erstelle eine wiederholbare Testsuite für Normalwerte, Grenzen, falsche Datentypen und Datenbankfehler.
  4. Systemalternativen bewerten: Vergleiche zwei Programmiersprachen oder Datenbanklösungen anhand gewichteter Kriterien und präsentiere eine begründete Entscheidung.


Lösungshinweise und Musterarbeitsprodukte

Aufgabe Fachliche Lösungskriterien Mögliches Musterarbeitsprodukt
Anforderungen markieren Jede Anforderung besitzt Auslöser, Eingabe, erwartete Ausgabe und Messkriterium Tabelle mit vier sauber getrennten Anforderungssätzen
Programmablaufplan erstellen Start und Ende, Validierung vor Warnlogik, alle Pfade geschlossen PAP mit drei eindeutigen Ergebnispfaden
Testdaten auswählen Werte unter, auf, innerhalb und über beiden Grenzen Testdatentabelle mit Soll-Ergebnis und Begründung
SQL-Abfrage erklären Projektion, Datenquelle, Filter und Sortierung korrekt zugeordnet Kommentierte Abfrage mit Beispielausgabe
Messwertfunktion programmieren Klare Parameter, definierte Rückgabewerte, keine ungeprüfte Speicherung Quelltext plus automatisierte Testfälle
ER-Modell entwickeln Primär- und Fremdschlüssel sowie 1:n-Beziehungen korrekt ER-Diagramm und relationales Schema
Fehlerdiagnose durchführen Fehler reproduziert, Ursache isoliert, Korrektur und Regressionstest dokumentiert Soll-Ist-Protokoll mit Versionsangabe
Technische Dokumentation erstellen Zielgruppe, Bedienung, Grenzen, Datenformat und Teststand vollständig Einseitige Übergabedokumentation
Mock-API integrieren Begrenzte Wiederholung, Schemaprüfung, eindeutige Vorgangskennung Sequenzdiagramm, Quelltextauszug und Testprotokoll
Datenschutzkonzept entwerfen Zweckbindung, Minimierung, Rollen und Löschung nachvollziehbar Datenflussbild mit Maßnahmenliste
Regressionstests automatisieren Reproduzierbare Tests mit klaren Erwartungen und Bericht Testskript mit maschinenlesbarem Ergebnis
Systemalternativen bewerten Kriterien gewichtet, Nachweise belegt, Schlussfolgerung transparent Nutzwertanalyse und Kurzpräsentation




Text bearbeiten Bild einfügen Video einbetten Interaktive Aufgaben erstellen



Lernkontrolle

  1. Anforderungsprüfung: Formuliere aus „Das System soll zuverlässig sein“ drei messbare Akzeptanzkriterien und begründe ihre Aussagekraft.
  2. Algorithmusanalyse: Prüfe einen Pseudocode auf Endlichkeit, Vollständigkeit und korrekte Reihenfolge der Validierungen.
  3. Datenmengenberechnung: Berechne Speicherbedarf pro Tag und Jahr für 40 Geräte mit einem 64-Byte-Datensatz alle 30 Sekunden und nenne realistische Zuschläge.
  4. Datenbanktransfer: Überführe ein gegebenes ER-Modell in Tabellen und begründe die Position jedes Fremdschlüssels.
  5. SQL-Sicherheit: Vergleiche eine zusammengesetzte SQL-Zeichenkette mit einer parametrisierten Abfrage und leite Schutzmaßnahmen ab.
  6. Grenzwertstrategie: Entwickle für zwei gekoppelte Eingabebereiche eine minimale, aber aussagekräftige Testmenge.
  7. Fehlerdiagnose: Erstelle aus Symptom, Logauszug und Versionsvergleich eine Hypothesenliste und plane die Reihenfolge der Prüfungen.
  8. Beruflicher Transfer: Übertrage den Modellfall auf eines der vier Einsatzgebiete und benenne zusätzliche technische, rechtliche und sicherheitsbezogene Anforderungen.


Lernnachweis

Ein überzeugender Lernnachweis besteht nicht nur aus lauffähigem Quelltext. Er zeigt die gesamte berufliche Handlung:

  • Wissen: Algorithmus, Kontrollstruktur, Datentyp, API, Primär- und Fremdschlüssel, Testfall, Grenzwert und Datenminimierung fachlich korrekt erklären.
  • Planung: Kundenanforderungen, Akzeptanzkriterien, Ablaufplan, Datenmodell und Schnittstellenvertrag konsistent erstellen.
  • Umsetzung: Eine modular aufgebaute Lösung mit synthetischen Daten, klaren Funktionen und parametrisierten Datenbankzugriffen herstellen.
  • Prüfung: Normal-, Grenz-, Fehler- und Regressionstests mit Soll-Ist-Vergleich dokumentieren.
  • Fehlerdiagnose: Fehler reproduzieren, Ursache eingrenzen, Korrektur begründen und Folgewirkungen prüfen.
  • Arbeitsprodukt: Quelltext, Datenbankschema, Testprotokoll, Bedienhinweis und technische Übergabedokumentation vorlegen.
  • Transfer: Die Lösung auf ein betriebliches Einsatzgebiet übertragen und zusätzliche Risiken, Rechte und Schutzmaßnahmen beurteilen.
  • Reflexion: Alternativen nach Wartbarkeit, Sicherheit, Aufwand, Lizenz und Kundenanforderung vergleichen.


OER und Wikipedia


Fachliche und rechtliche Quellen


Medienquellen und Rechte

Medium Quelle Urheber Rechtehinweis
File:Flowchart de.svg Wikimedia Commons Erik Streb CC BY-SA 3.0
File:Flowchart procedural programming.svg Wikimedia Commons Kayau CC BY-SA 2.0 und GFDL
File:Web API diagram.svg Wikimedia Commons I.hate.spam.mail.here CC0 1.0
File:Client-server model.svg Wikimedia Commons Lubaochuan CC BY-SA 4.0
File:Entity-Relationship-Modell.svg Wikimedia Commons Fleshgrinder Public Domain
File:Begriffe relationaler Datenbanken.svg Wikimedia Commons Fragment Public Domain
FBUoEumkP2w Algorithmen in 3 Minuten erklärt Kanal youknow Rechte am Video beim Kanal, Einbettung über den YouTube-Player
7HZbGReAi5s SQL Tutorial für Anfänger Kanal Programmieren lernen Rechte am Video beim Kanal, Einbettung über den YouTube-Player


Verknüpfte Lernbereiche

Der Kurs verbindet Informatik, Elektrotechnik, Mathematik, Projektmanagement, Technische Dokumentation, Qualitätsmanagement und Wirtschafts- und Sozialkunde. Besonders eng ist die Verknüpfung mit dem Berufsportal Ausbildung – Informationselektroniker sowie mit den Lernbereichen Systementwurf, Funktions- und Systemanalyse und Kundenauftrag.


aiMOOC Projekte



Schulfach+




aiMOOCs



aiMOOC Projekte









MOOCwiki · Deutsch

Nach dem Lernen ist vor dem Lernen

Entdecke direkt den nächsten Lernkurs. Weitere Inhalte erscheinen, wenn Du weiter nach unten scrollst.

Zur MOOCwiki-Hauptseite

Mediathek

Suche verfeinern

Dein Lernplan bestimmt, was oben steht. Alle anderen Inhalte bleiben erreichbar. Seitenaufrufe beeinflussen die Auswahl nicht.

Inhalte werden geladen ...

Mediathek wird aus dem Wiki geladen ...