Deutschland · KMK Bildungsstandards
Klasse 13 Informatik Oberstufe: Komplexe Systeme und Theoretische Grundlagen
Dieser Kurs bereitet Lernende auf die Anforderungen eines Informatikstudiums oder einer Fachausbildung vor. Der Fokus liegt auf der Abstraktion komplexer Probleme, der theoretischen Informatik sowie der ethischen Reflexion technologischer Entwicklungen.

01Theoretische Informatik: Sprachen und Automaten
Untersuchung der formalen Grundlagen der Informatik durch die Analyse von endlichen Automaten und formalen Sprachen.
Die Schülerinnen und Schüler lernen die Grundkonzepte von Automaten und deren Bedeutung für die Informatik kennen.
Die Schülerinnen und Schüler modellieren einfache Systeme mit DFAs und verstehen deren Erkennungsleistung.
Die Schülerinnen und Schüler identifizieren reguläre Sprachen und erstellen entsprechende reguläre Ausdrücke.
Die Schülerinnen und Schüler untersuchen die Eigenschaften von NFAs und deren Äquivalenz zu deterministischen Automaten.
Die Schülerinnen und Schüler wenden Algorithmen zur Minimierung von DFAs an, um effizientere Modelle zu erstellen.
Die Schülerinnen und Schüler untersuchen die Struktur von Programmiersprachen mithilfe kontextfreier Grammatiken.
Die Schülerinnen und Schüler erstellen Ableitungen und Syntaxbäume für Sätze basierend auf kontextfreien Grammatiken.
Die Schülerinnen und Schüler lernen Kellerautomaten als Erkennungsmechanismus für kontextfreie Sprachen kennen.
Die Schülerinnen und Schüler klassifizieren Sprachen nach ihrer Komplexität und Erzeugungsregeln innerhalb der Chomsky-Hierarchie.
Die Schülerinnen und Schüler untersuchen die Turing-Maschine als fundamentales Modell der Berechenbarkeit.
Die Schülerinnen und Schüler diskutieren die Church-Turing-These und ihre Implikationen für die Grenzen der Berechenbarkeit.
Die Schülerinnen und Schüler setzen sich mit dem Halteproblem auseinander und verstehen das Konzept der Unentscheidbarkeit.

02Datenstrukturen und Algorithmen-Analyse
Vertiefung effizienter Datenhaltung und die mathematische Bewertung von Algorithmen.
Die Schülerinnen und Schüler lernen die Notwendigkeit der Analyse von Algorithmen und grundlegende Metriken kennen.
Mathematische Abschätzung des Zeit- und Platzbedarfs von Algorithmen.
Die Schülerinnen und Schüler implementieren und vergleichen Arrays und verkettete Listen.
Die Schülerinnen und Schüler implementieren und vergleichen Stacks und Queues.
Die Schülerinnen und Schüler implementieren und analysieren binäre Suchbäume.
Die Schülerinnen und Schüler untersuchen fortgeschrittene Baumstrukturen zur Optimierung der Suchleistung.
Die Schülerinnen und Schüler lernen verschiedene Darstellungsformen von Graphen und deren grundlegende Eigenschaften kennen.
Die Schülerinnen und Schüler implementieren und vergleichen Breitensuche (BFS) und Tiefensuche (DFS).
Die Schülerinnen und Schüler wenden den Dijkstra-Algorithmus zur Bestimmung kürzester Wege in Graphen an.
Die Schülerinnen und Schüler wenden den Floyd-Warshall-Algorithmus zur Bestimmung kürzester Wege zwischen allen Knoten an.
Die Schülerinnen und Schüler analysieren und vergleichen verschiedene Sortieralgorithmen (z.B. Quicksort, Mergesort).
Die Schülerinnen und Schüler analysieren und vergleichen verschiedene Suchalgorithmen (z.B. binäre Suche, Hashing).

03Datenbanken und Informationssysteme
Entwurf und Abfrage relationaler Datenbanksysteme unter Berücksichtigung von Konsistenz und Sicherheit.
Die Schülerinnen und Schüler lernen die Architektur und die Komponenten von Datenbanksystemen kennen.
Strukturierung von Daten durch Entity-Relationship-Diagramme und Normalisierung.
Die Schülerinnen und Schüler wenden die ersten beiden Normalisierungsformen an, um Datenbankdesigns zu optimieren.
Die Schülerinnen und Schüler wenden die dritte Normalform und BCNF an, um Datenbankdesigns zu optimieren.
Die Schülerinnen und Schüler lernen grundlegende SQL-Befehle zur Definition von Datenstrukturen kennen.
Die Schülerinnen und Schüler lernen grundlegende SQL-Befehle zur Manipulation von Daten kennen.
Manipulation und Extraktion von Daten mittels Structured Query Language.
Die Schülerinnen und Schüler verstehen die Bedeutung von Transaktionen für die Datenkonsistenz.

04Rechnernetze und Cybersicherheit
Verständnis der Schichtenarchitektur des Internets und Methoden zur Absicherung der Kommunikation.
Die Schülerinnen und Schüler lernen die grundlegenden Konzepte und Komponenten von Rechnernetzen kennen.
Analyse der Datenübertragung vom physikalischen Bit bis zur Anwendung.
Die Schülerinnen und Schüler verstehen die Funktionsweise von IP-Adressen und Subnetting.
Die Schülerinnen und Schüler lernen die Funktionsweise von Routing-Protokollen kennen.
Die Schülerinnen und Schüler vergleichen TCP und UDP und ihre Anwendungsbereiche.
Die Schülerinnen und Schüler lernen grundlegende Konzepte und Prinzipien der Cybersicherheit kennen.
Die Schülerinnen und Schüler lernen symmetrische Verschlüsselungsverfahren kennen und wenden sie an.
Die Schülerinnen und Schüler lernen asymmetrische Verschlüsselungsverfahren kennen und wenden sie an.
Die Schülerinnen und Schüler verstehen die Funktionsweise und Bedeutung digitaler Signaturen und Zertifikate.
Die Schülerinnen und Schüler lernen die Funktionsweise von Firewalls und deren Rolle in der Netzwerksicherheit kennen.
Erkennung und Abwehr von Bedrohungen wie Man-in-the-Middle oder DDoS.

05Künstliche Intelligenz und Machine Learning
Einführung in die Funktionsweise neuronaler Netze und die gesellschaftliche Bedeutung von KI.
Die Schülerinnen und Schüler lernen die Definition, Geschichte und Anwendungsbereiche der KI kennen.
Die Schülerinnen und Schüler verstehen die Konzepte von überwachtem, unüberwachtem und bestärkendem Lernen.
Die Schülerinnen und Schüler lernen grundlegende Machine Learning-Modelle wie lineare Regression und logistische Regression kennen.
Modellierung biologischer Lernprozesse durch Perzeptrone und Backpropagation.
Die Schülerinnen und Schüler lernen Deep Learning-Architekturen und CNNs für Bilderkennung kennen.
Die Schülerinnen und Schüler lernen Methoden zur Bewertung und Optimierung von Machine Learning-Modellen.
Untersuchung von Large Language Models (LLM) und Computer Vision.

06Software-Engineering und Abschlussprojekt
Anwendung agiler Methoden zur Entwicklung eines komplexen Softwaresystems im Team.
Die Schülerinnen und Schüler lernen die Phasen des Softwareentwicklungsprozesses und die Bedeutung von Software-Engineering kennen.
Die Schülerinnen und Schüler lernen, Softwareanforderungen zu erheben, zu dokumentieren und zu verwalten.
Die Schülerinnen und Schüler entwerfen Softwarearchitekturen und wenden Designprinzipien an.
Projektmanagement und iterative Entwicklungsprozesse.
Die Schülerinnen und Schüler lernen den Umgang mit Versionskontrollsystemen zur Teamarbeit und Code-Verwaltung.
Verfahren zur Sicherstellung der Softwarequalität durch Unit-Tests und Code-Reviews.
Die Schülerinnen und Schüler verstehen die Herausforderungen und Strategien der Software-Wartung.