Fachübungen 10 – Informationstechnische Systeme programmieren - Informationselektroniker
Fachübungen 10 – Informationstechnische Systeme programmieren - Informationselektroniker
QR-Code
Einleitung

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

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.

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

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.

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.

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
Offene Aufgaben
Leicht
- Anforderungen markieren: Kennzeichne in einem kurzen synthetischen Kundenauftrag Eingaben, Ausgaben, Grenzwerte und Akzeptanzkriterien.
- Programmablaufplan erstellen: Zeichne für eine Temperaturprüfung mit den Zuständen ungültig, OK und Warnung einen vollständigen Programmablaufplan.
- Testdaten auswählen: Erstelle für den Bereich 0 bis 50 °C mindestens sieben begründete Normal-, Grenz- und Fehlerwerte.
- SQL-Abfrage erklären: Erläutere Feld für Feld, was eine vorgegebene SELECT-Abfrage mit Filter und Sortierung ausgibt.
Standard
- Messwertfunktion programmieren: Implementiere mit einer frei wählbaren Sprache eine Funktion für die Prüfung synthetischer Temperatur- und Feuchtewerte.
- ER-Modell entwickeln: Modelliere Geräte, Messwerte und Fehlerprotokolle mit Entitäten, Attributen, Schlüsseln und Kardinalitäten.
- Fehlerdiagnose durchführen: Untersuche ein vorbereitetes Programm mit einem Indexfehler und dokumentiere Ursache, Korrektur und Nachtest.
- Technische Dokumentation erstellen: Verfasse eine Übergabeseite mit Zweck, Voraussetzungen, Datenformat, Teststand, Grenzen und Sicherheitsvermerk.
Schwer
- Mock-API integrieren: Verbinde ein Programm mit einer lokalen oder simulierten API, behandle Zeitüberschreitung und Schemafehler und verhindere doppelte Speicherung.
- Datenschutzkonzept entwerfen: Begründe Datenfelder, Rollen, Protokollumfang, Aufbewahrung und Löschung für einen vollständig synthetischen Servicefall.
- Regressionstests automatisieren: Erstelle eine wiederholbare Testsuite für Normalwerte, Grenzen, falsche Datentypen und Datenbankfehler.
- 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 |


Lernkontrolle
- Anforderungsprüfung: Formuliere aus „Das System soll zuverlässig sein“ drei messbare Akzeptanzkriterien und begründe ihre Aussagekraft.
- Algorithmusanalyse: Prüfe einen Pseudocode auf Endlichkeit, Vollständigkeit und korrekte Reihenfolge der Validierungen.
- 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.
- Datenbanktransfer: Überführe ein gegebenes ER-Modell in Tabellen und begründe die Position jedes Fremdschlüssels.
- SQL-Sicherheit: Vergleiche eine zusammengesetzte SQL-Zeichenkette mit einer parametrisierten Abfrage und leite Schutzmaßnahmen ab.
- Grenzwertstrategie: Entwickle für zwei gekoppelte Eingabebereiche eine minimale, aber aussagekräftige Testmenge.
- Fehlerdiagnose: Erstelle aus Symptom, Logauszug und Versionsvergleich eine Hypothesenliste und plane die Reihenfolge der Prüfungen.
- 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
- KMK-Rahmenlehrplan Informationselektroniker und Informationselektronikerin – Lernfeld 10, drittes Ausbildungsjahr, 100 Stunden.
- BIBB-Berufsprofil Informationselektroniker und Informationselektronikerin – Ausbildungsdauer, Einsatzgebiete und Rechtsgrundlagen.
- Informationselektronikerausbildungsverordnung – Ausbildungsstruktur und Gesellenprüfung.
- Informationselektronikerausbildung-Erprobungsverordnung – aktuelles Variantenmodell im Kundenauftrag.
- Relationale Datenbank und Entity-Relationship-Modell – frei zugängliche Vertiefung.
- Softwaretest – Grundlagen zu Testprozess und Fehlernachweis.
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-HauptseiteMediathek
Mediathek wird aus dem Wiki geladen ...
Keine passenden Inhalte gefunden. Bitte ändere Suche oder Filter.
NEWSLernweltNOAH fragenInhalt melden · Hinweise zu Fehlern, Quellen, Medienrechten oder Dubletten
