Zum Inhalt springen
Klausur erzeugen · Abitur 2027 · Hamburg

InformatikErhöhtes Anforderungsniveau

Alle Themen der amtlichen Vorgaben für diesen Jahrgang. Schließ ein, was du üben musst, schließ aus, was sitzt. Was offen bleibt, wird gezogen.

vorläufig, Änderungen möglich

Der Fachlehrkraft werden drei Aufgaben vorgelegt. Aufgabe I (Objektorientierte Modellierung und Programmierung) bearbeitest du immer, dazu wählst du eine der Aufgaben II (Datensicherheit in verteilten Systemen) und III (Intelligente Suchverfahren). Auf erhöhtem Niveau gehören zusätzlich funktionale Programmierung mit Scheme oder Haskell dazu.

Bearbeitungszeit300 Minuten, 5 StundenThemen in den Vorgaben3, davon 1 verbindlich
Themen der Klausur
  • verbindlichwird gezogen

    Aufgabe I: Objektorientierte Modellierung und Programmierung

    Modellieren und Programmieren nach dem objektorientierten Paradigma.

    • Einen Realitätsausschnitt objektorientiert modellieren: Beschreibung analysieren, Objekte sowie deren Eigenschaften und Fähigkeiten angeben
    • Beziehungen („hat-ein“/„benutzt“, „ist-ein“) zwischen Objekten bzw. Klassen modellieren und begründen
    • Klassenmodell entwickeln und mit einem Klassendiagramm visualisieren
    • Kommunikation zwischen Objekten bezüglich eines Modells erläutern
    • Elementare Datentypen, Sammlungsstrukturen (Python: Listen, Tupel, Dictionary; Java: ArrayList, Array) und Kontrollstrukturen zur Implementation von Modellen nutzen
    • Gegebenen Quellcode mit Fachbegriffen erläutern und zielgerichtet modifizieren
    • In UML-Klassendiagrammen geeignete Datentypen für Attribute und Methoden angeben und begründen
    • Klassenbeziehungen (einfache Assoziation, Aggregation, Komposition) erkennen, nutzen und vergleichen
    • Sichtbarkeit von Variablen und Methoden erläutern, auch mit abstrakten Klassen
    • Das Konzept der Polymorphie an Beispielen erläutern
    • Ein Modell hinsichtlich Kohäsion und Kopplung bewerten
  • fakultativwird gezogen

    Aufgabe II: Datensicherheit in verteilten Systemen

    Kommunikation in Netzen, Verschlüsselung und Kryptoanalyse. Wahlaufgabe neben Aufgabe III.

    • Kommunikative Vorgänge mit Modellen (Client-Server-Modell, Schichtenmodell, Netztopologie, Protokoll) analysieren und beschreiben
    • Verfahren zur Sicherung von Vertraulichkeit, Integrität und Authentizität beschreiben
    • Mono- und polyalphabetische, symmetrische und asymmetrische Verschlüsselungsverfahren unterscheiden und zur Chiffrierung und Dechiffrierung anwenden
    • Ein (auch unbekanntes) Verfahren hinsichtlich der Eignung für einen Kommunikationsvorgang beurteilen
    • Angriffsstrategien (brute-force, known-plaintext-attack) und Buchstabenhäufigkeit in der Kryptoanalyse beschreiben
    • Quellcode zum Kontext Kommunikation analysieren und zielgerichtet modifizieren
    • Algorithmen zu mono- und polyalphabetischen Verfahren entwickeln und strukturiert darstellen
    • Beim RSA-Verfahren Schlüsselerzeugung, Schlüsselmanagement, Ver- und Entschlüsselung und Authentifizierung erläutern, einfache Berechnungen durchführen
    • Das Kerckhoffs’sche Prinzip erläutern und bei einem Verfahren prüfen, ob es ihm entspricht
    • Schlüsselaustausch über unsichere Kanäle beschreiben (insbesondere das Diffie-Hellman-Verfahren)
    • Verschlüsselungsverfahren hinsichtlich Sicherheit und Chiffrier- und Dechiffrieraufwand beurteilen
    • Rekursive Prozesse veranschaulichen, Endrekursion erkennen und erläutern
    • Funktionale Modellierungen für kryptologische Verfahren einschließlich RSA entwickeln
    • Einfache Verschlüsselungsverfahren oder Kryptoanalysewerkzeuge implementieren
    • Sprachelemente von Scheme oder Haskell syntaktisch korrekt verwenden, Wiederholungen durch rekursiven Funktionsaufruf implementieren
    • Mit Parametern unterschiedlicher Typen, auch mit Funktionen als Parameter, arbeiten
  • fakultativwird gezogen

    Aufgabe III: Intelligente Suchverfahren

    Suchräume, Datenstrukturen und Suchalgorithmen. Wahlaufgabe neben Aufgabe II.

    • Problemstellungen beschreiben und analysieren, bei denen eine Lösung durch Suche gefunden werden kann
    • Notwendige Datenstrukturen (Listen, Bäume, Stacks, Warteschlangen, Prioritätsschlangen) modellieren, den Suchraum beschreiben und anwendbare Suchverfahren vorschlagen
    • Einfache Suchräume durch Graphen veranschaulichen
    • Das Traversieren eines Suchraums durch ein gegebenes Suchverfahren beschreiben
    • Breiten- und Tiefensuche sowie Prim-, Dijkstra-, Kruskal- und A*-Algorithmus hinsichtlich Arbeitsweise, Datenstrukturen, Vor- und Nachteilen und Optimierungsmöglichkeiten beschreiben und vergleichen
    • Ein vorgegebenes Suchverfahren hinsichtlich seiner Eignung für ein Suchproblem untersuchen
    • Scheme- oder Haskellfunktionen zu einem Kontext mit intelligenten Suchverfahren analysieren und modifizieren
    • Rekursive Prozesse veranschaulichen, Endrekursion erkennen und erläutern
    • Funktionale Modellierungen für Teilprobleme entwickeln
    • Sprachelemente von Scheme oder Haskell syntaktisch korrekt verwenden und Wiederholungen durch rekursiven Funktionsaufruf implementieren
    • Auch mit Funktionen als Parametern arbeiten

Eingeschlossene Themen kommen sicher vor, ausgeschlossene nicht. Der Rest wird gezogen, verbindliche Themen zuerst.

Wortlaut und Quelle der Vorgaben stehen unter Themenvorgaben, die zugelassenen Operatoren unter Operatoren. Die Klausur ist eine Übung, keine echte Prüfungsaufgabe.