Rhein-Sieg-Gymnasium Sankt Augustin - Schulinterner Lehrplan für die gymnasiale Oberstufe Informatik
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
Rhein-Sieg-Gymnasium Sankt Augustin
Schulinterner Lehrplan
für die gymnasiale Oberstufe
Informatik
Stand: 31.10.2019
Seite 1 von 451 Die Fachgruppe Informatik des Rhein-Sieg-Gymnasiums
Die Fachschaft Informatik des Rhein-Sieg-Gymnasiums bietet in der Jahrgangsstufe 5 und 6
Informatik für alle Schülerinnen und Schüler an. Im Fokus steht die Förderung des
algorithmischen Denkens. Dazu werden Programmierstrukturen erarbeitet und angewandt.
Zur Förderung der Medienkompetenz stehen darüber hinaus Aspekte zu Verschlüsselung,
Codierung, Office-Anwendungen, die Funktionsweise von Rechner- und Dateisystemen sowie
ein verantwortungsvoller Umgang mit dem Internet im Mittelpunkt.
Ab der Jahrgangsstufe 8 kann im Wahlpflichtbereich II Informatik gewählt werden. In diesem
zweijährigen Kurs werden in altersstufengerechter Weise unter anderem die Grundlagen der
Algorithmik am Beispiel verschiedener didaktischer Lernumgebungen (Kara, Roboter-
Programmierung mit Lego-Mindstorms) sowie die technische Informatik am Beispiel von
Schaltwerken und Schaltnetzen (LOCAD) thematisiert. Des Weiteren erhalten die
Schülerinnen und Schüler dieses Differenzierungskurses einen tiefergehenden Einblick in
Tabellenkalkulationen sowie die Gestaltung und Programmierung von Internetseiten.
Durch dieses Informatikangebot in den Jahrgangsstufen 5, 6, 8 und 9 verfügen nahezu alle
Schülerinnen und Schüler unabhängig von der Fächerwahl in der Oberstufe über ein breit
angelegtes Wissen zu den Grundlagen der Informations- und Kommunikationstechnologien,
auf die im Unterricht der Sekundarstufe II aufgebaut werden kann.
Das Fach Informatik wird in der Sekundarstufe II am Rhein-Sieg-Gymnasium als Wahlfach
angeboten. In der Einführungsphase und Qualifikationsphase können die Schülerinnen und
Schüler das Fach als dreistündigen Grundkurs belegen. Seit dem Schuljahr 2014/2015 wird in
Kooperation mit dem Albert-Einstein-Gymnasium auch ein Leistungskurs angeboten.
In der Einführungsphase sind keine Vorkenntnisse aus der Sekundarstufe I zum erfolgreichen
Bestehen des Kurses erforderlich.
Durch projektartiges Vorgehen, offene Aufgaben und Möglichkeiten, Problemlösungen zu
verfeinern und zu optimieren, entspricht der Informatikunterricht in besonderem Maße den
Erziehungszielen, Leistungsbereitschaft zu fördern ohne zu überfordern.
Darüber hinaus trägt er zu einer breitgefächerten Allgemeinbildung bei, bietet gleichzeitig
Raum für individuelle Spezialisierungen und ermöglicht verantwortungsvolles Handeln in
einer sich schnell wandelnden und von technischen Fortschritten geprägten Welt.
Die gemeinsame Entwicklung von Materialien und Unterrichtsvorhaben, die Evaluation von
Lehr- und Lernprozessen sowie die stetige Überprüfung und eventuelle Modifikation des
schulinternen Curriculums durch die Fachkonferenz Informatik stellt einen wichtigen Beitrag
zur Qualitätssicherung und -entwicklung des Unterrichts dar.
In den Kursen des Faches Informatik werden zwischen 15 und 26 Schülerinnen und Schüler
unterrichtet. Leistungskurse sind in der Regel kleiner. Die sehr gute Ausstattung unserer
beiden Praxisräume ermöglicht jeder Schülerin und jedem Schüler über einen eigenen
Arbeitsplatz verfügen zu können.
Seite 2 von 452 Entscheidungen zum Unterricht
2.1 Unterrichtsvorhaben
Die Darstellung der Unterrichtsvorhaben im schulinternen Lehrplan besitzt den Anspruch,
sämtliche im Kernlehrplan angeführten Kompetenzen abzudecken. Dies entspricht der
Verpflichtung jeder Lehrkraft, Schülerinnen und Schülern Lerngelegenheiten zu ermöglichen,
so dass alle Kompetenzerwartungen des Kernlehrplans von ihnen erfüllt werden können.
Die entsprechende Umsetzung erfolgt auf zwei Ebenen: der Übersichts- und der
Konkretisierungsebene.
Im „Übersichtsraster Unterrichtsvorhaben“ (Kapitel 2.1.1) wird die für alle Lehrerinnen und
Lehrer gemäß Fachkonferenzbeschluss verbindliche Verteilung der Unterrichtsvorhaben
dargestellt. Das Übersichtsraster dient dazu, den Kolleginnen und Kollegen einen schnellen
Überblick über die Zuordnungen der Unterrichtsvorhaben zu den einzelnen Jahrgangsstufen
sowie den im Kernlehrplan genannten Kompetenzen, Inhaltsfeldern und inhaltlichen
Schwerpunkten zu verschaffen. Der ausgewiesene Zeitbedarf versteht sich als grobe
Orientierungsgröße, die nach Bedarf über- oder unterschritten werden kann. Um Spielraum
für Vertiefungen, besondere Schülerinteressen, aktuelle Themen bzw. die Erfordernisse
anderer besonderer Ereignisse (z. B. Praktika, Kursfahrten o. ä.) zu erhalten, wurden im
Rahmen dieses schulinternen Lehrplans nur ca. 75 Prozent der Bruttounterrichtszeit verplant.
Während der Fachkonferenzbeschluss zum „Übersichtsraster Unterrichtsvorhaben“ zur
Gewährleistung vergleichbarer Standards sowie zur Absicherung von Lerngruppenübertritten
und Lehrkraftwechseln für alle Mitglieder der Fachkonferenz Bindekraft entfalten soll, besitzt
die exemplarische Ausweisung „konkretisierter Unterrichtsvorhaben“ (Kapitel 2.1.2)
empfehlenden Charakter. Referendarinnen und Referendaren sowie neuen Kolleginnen und
Kollegen dienen diese vor allem zur standardbezogenen Orientierung in der neuen Schule,
aber auch zur Verdeutlichung von unterrichtsbezogenen, fachgruppeninternen Absprachen zu
didaktisch-methodischen Zugängen, fachübergreifenden Kooperationen, Lernmitteln und
Lernorten sowie vorgesehenen Leistungsüberprüfungen, die im Einzelnen auch den Kapiteln
2.2 bis 2.3 zu entnehmen sind.
Abweichungen von den vorgeschlagenen Vorgehensweisen bezüglich der konkretisierten
Unterrichtsvorhaben sind im Rahmen der pädagogischen Freiheit der Lehrkräfte jederzeit
unter Berücksichtigung der Kompetenzerwartungen des Kernlehrplans möglich.
Da in den folgenden Unterrichtsvorhaben Inhalte in der Regel anhand von Problemstellungen
in Anwendungskontexten bearbeitet werden, werden in einigen Unterrichtsvorhaben jeweils
mehrere Inhaltsfelder angesprochen.
2.1.1 Übersichtsraster Unterrichtsvorhaben
I) Einführungsphase – Grundkurs
Zu jedem Unterrichtvorhaben ist eine Anknüpfung an den Kernlehrplan Informatik in Form
von Kompetenzbezügen gegeben. Die aufgeführten Kompetenzen sind dabei so zu verstehen,
Seite 3 von 45dass das entsprechende Unterrichtsvorhaben zum Erwerb derselben beiträgt.
Kompetenzerwerb ist ein kontinuierlicher und kumulativer Prozess, der sich über längere
Zeiträume hinzieht und die wiederholte Beschäftigung mit entsprechenden fachlichen
Gegenständen und Themen in variierenden Anwendungssituationen oder auf zunehmenden
Anforderungsniveaus voraussetzt. Es kann daher nicht der Anspruch erhoben werden, dass
die aufgeführten Kompetenzen nach Abschluss lediglich eines Unterrichtsvorhabens
vollständig erworben wurden.
Kompetenzerwartungen und inhaltliche Schwerpunkte
(Kernlehrplan Informatik für die Sek. II Gymn./Ges. in NRW, S.18)
Im Folgenden werden die dargestellten Kompetenzbereiche mit ihrem Anfangsbuchstaben
abgekürzt.
Seite 4 von 45Übersichtsraster Unterrichtsvorhaben: Einführungsphase – Grundkurs:
Unterrichtsvorhaben E-I Unterrichtsvorhaben E-II
Thema: Überblick über das Fach Informatik, Thema: Grundlagen der imperativen Programm-
Grundlagen von Informatiksystemen und ierung mit Java, einfache Algorithmik und
Geschichte der Informatik Datenstrukturen
Zentrale Kompetenzen: Zentrale Kompetenzen:
Argumentieren Argumentieren
Darstellen und Interpretieren Modellieren
Kommunizieren und Kooperieren Implementieren
Darstellen und Interpretieren
Inhaltsfelder: Kommunizieren und Kooperieren
Informatiksysteme
Informatik, Mensch und Gesellschaft Inhaltsfelder:
Daten und ihre Strukturierung
Inhaltliche Schwerpunkte: Algorithmen
Digitalisierung Formale Sprachen und Automaten
Einzelrechner Informatiksysteme
Dateisysteme
Internet Inhaltliche Schwerpunkte:
Einsatz von Informatiksystemen Analyse, Entwurf und Implementierung einfacher
Wirkungen der Automatisierung Algorithmen mit Java
Geschichte der automatischen Datenverarbeitung Syntax und Semantik einer Programmiersprache
Zeitbedarf: 6 Stunden Zeitbedarf: 34 Stunden
Unterrichtsvorhaben E-III Unterrichtsvorhaben E-IV
Thema: Grundlagen der objektorientierten Thema: Aufbau einfacher Such- und
Modellierung und Implementierung Sortierverfahren sowie ihre Anwendung auf die
Datenstruktur Array
Zentrale Kompetenzen:
Argumentieren Zentrale Kompetenzen:
Modellieren Argumentieren
Implementieren Modellieren
Darstellen und Interpretieren Implementieren
Kommunizieren und Kooperieren Darstellen und Interpretieren
Kommunizieren und Kooperieren
Inhaltsfelder:
Daten und ihre Strukturierung Inhaltsfelder:
Algorithmen Daten und ihre Strukturierung
Formale Sprachen und Automaten Algorithmen
Formale Sprachen und Automaten
Inhaltliche Schwerpunkte:
Objekte und Klassen Inhaltliche Schwerpunkte:
Analyse, Entwurf und Implementierung einfacher Analyse, Entwurf und Implementierung einfacher
Algorithmen Algorithmen
Syntax und Semantik einer Programmiersprache Syntax und Semantik einer Programmiersprache
Algorithmen zum Suchen und Sortieren
Zeitbedarf: 30 Stunden
Zeitbedarf: 18 Stunden
Summe Einführungsphase: 88
Seite 5 von 45II) Qualifikationsphase – Grundkurs/Leistungskurs
Qualifikationsphase I
Unterrichtsvorhaben Q1-I Unterrichtsvorhaben Q1-II
Thema: Prinzipielle Arbeitsweise eines Thema: Rekursive Algorithmen und Backtracking
Computers und maschinennahe Sprachen in Anwendungskontexten
Zentrale Kompetenzen: Zentrale Kompetenzen:
Argumentieren Argumentieren
Kommunizieren und Kooperieren Modellieren
Implementieren
Inhaltsfelder: Darstellen und Interpretieren
Informatiksysteme Kommunizieren und Kooperieren
Informatik, Mensch und Gesellschaft
Inhaltsfelder:
Inhaltliche Schwerpunkte: Algorithmen
Einzelrechner und Rechnernetzwerke Formale Sprachen und Automaten
Informatiksysteme
Zeitbedarf: 10 Stunden Informatik, Mensch und Gesellschaft
Inhaltliche Schwerpunkte:
Analyse, Entwurf und Implementierung von
Algorithmen
Algorithmen in ausgewählten informatischen
Kontexten
Syntax und Semantik einer Programmiersprache
Nutzung von Informatiksystemen
Grenzen der Automatisierung
Zeitbedarf: 15/25 Stunden
Unterrichtsvorhaben Q1-III Unterrichtsvorhaben Q1-IV
Thema: Modellierung und Implementierung Thema: Modellierung und Implementierung
dynamischer Listenstrukturen und deren dynamische nichtlineare Datenstrukturen am
Anwendungen Beispiel der Binärbäume
Zentrale Kompetenzen: Zentrale Kompetenzen:
Argumentieren Argumentieren
Modellieren Modellieren
Implementieren Implementieren
Darstellen und Interpretieren Darstellen und Interpretieren
Kommunizieren und Kooperieren Kommunizieren und Kooperieren
Inhaltsfelder: Inhaltsfelder:
Daten und ihre Strukturierung Daten und ihre Strukturierung
Algorithmen Algorithmen
Formale Sprachen und Automaten Formale Sprachen und Automaten
Informatiksysteme Informatiksysteme
Inhaltliche Schwerpunkte: Inhaltliche Schwerpunkte:
Objekte und Klassen Objekte und Klassen
Analyse, Entwurf und Implementierung von Analyse, Entwurf und Implementierung von
Algorithmen Algorithmen
Seite 6 von 45Algorithmen in ausgewählten informatischen Algorithmen in ausgewählten informatischen
Kontexten Kontexten
Syntax und Semantik einer Programmiersprache Syntax und Semantik einer Programmiersprache
Nutzung von Informatiksystemen Nutzung von Informatiksystemen
Zeitbedarf: 25/30 Stunden Zeitbedarf: 15/25 Stunden
Q1-V Unterrichtsvorhaben Q1-V/Q1-VI
Thema: Modellierung und Implementierung Thema: Modellierung und Nutzung relationaler
dynamischer nichtlinearer Datenstrukturen am Datenbanken in Anwendungskontexten
Beispiel der Graphen
Zentrale Kompetenzen:
Zentrale Kompetenzen: Argumentieren
Argumentieren Modellieren
Modellieren Implementieren
Implementieren Darstellen und Interpretieren
Darstellen und Interpretieren Kommunizieren und Kooperieren
Kommunizieren und Kooperieren
Inhaltsfelder:
Inhaltsfelder: Daten und ihre Strukturierung
Daten und ihre Strukturierung Algorithmen
Algorithmen Formale Sprache und Automaten
Formale Sprachen und Automaten Informatiksysteme
Informatiksysteme Informatik, Mensch und Gesellschaft
Inhaltliche Schwerpunkte: Inhaltliche Schwerpunkte:
Objekte und Klassen Datenbanken
Analyse, Entwurf und Implementierung von Algorithmen in ausgewählten informatischen
Algorithmen Kontexten
Algorithmen in ausgewählten informatischen Syntax und Semantik einer Programmiersprache
Kontexten Nutzung von Informatiksystemen
Sicherheit
Zeitbedarf: 15 Stunden Wirkung der Automatisierung
Zeitbedarf: 20/30 Stunden
Summe Qualifikationsphase I: 85 (135)
Qualifikationsphase II
Unterrichtsvorhaben Q2-I Unterrichtsvorhaben Q2-II
Thema: Sicherheit und Datenschutz in Thema: Endliche Automaten und Formale
Netzstrukturen und Modellierung und Sprachen, Grenzen der Automatisierbarkeit
Implementierung von Client-Server-
Anwendungen Zentrale Kompetenzen:
Argumentieren
Zentrale Kompetenzen: Modellieren
Argumentieren Implementieren
Modellieren Darstellen und Interpretieren
Implementieren Kommunizieren und Kooperieren
Darstellen und Interpretieren
Kommunizieren und Kooperieren Inhaltsfelder:
Daten und ihre Strukturierung
Inhaltsfelder: Algorithmen
Daten und ihre Strukturierung Formale Sprachen und Automaten
Seite 7 von 45Algorithmen Informatiksysteme
Formale Sprachen und Automaten
Informatiksysteme Inhaltliche Schwerpunkte:
Informatik, Mensch und Gesellschaft Endliche Automaten (und Kellerautomaten)
Grammatiken regulärer (und kontextfreier)
Inhaltliche Schwerpunkte: Sprachen
Objekte und Klassen Scanner, Parser und Interpreter für eine
Analyse, Entwurf und Implementierung von reguläre Sprache
Algorithmen Möglichkeiten und Grenzen von Automaten
Algorithmen in ausgewählten informatischen und formalen Sprachen
Kontexten Nutzung von Informatiksystemen
Syntax und Semantik einer Programmiersprache Grenzen der Automatisierung
Einzelrechner und Rechnernetzwerke
Sicherheit Zeitbedarf: 30/40 Stunden
Nutzung von Informatiksystemen, Wirkungen der
Automatisierung
Zeitbedarf: 30/40 Stunden
Summe Qualifikationsphase II: 60 (80)
Seite 8 von 452.1.2 Konkretisierte Unterrichtsvorhaben
Hinweis: Thema, Inhaltsfelder, inhaltliche Schwerpunkte, Kompetenzen und Absprachen zur vorhabenbezogenen Konkretisierung hat die
Fachkonferenz verbindlich vereinbart. In allen anderen Bereichen (Unterrichtssequenzen und verwendeten Beispiele, Medien und Materialien) sind
Abweichungen von den vorgeschlagenen Vorgehensweisen möglich. Darüber hinaus enthält dieser schulinterne Lehrplan in den Kapiteln 2.2 bis 2.3
übergreifende sowie z. T. auch jahrgangsbezogene Absprachen zur fachmethodischen und fachdidaktischen Arbeit, zur Leistungsbewertung und zur
Leistungsrückmeldung. Je nach internem Steuerungsbedarf können solche Absprachen auch vorhabenbezogen vorgenommen werden. Der jeweils
angegebene Zeitbedarf stellt eine Schätzung dar und kann je nach Lernvoraussetzung im Kurs davon abweichen.
I) Einführungsphase – Grundkurs
Im Folgenden sollen die in Abschnitt 1 aufgeführten Unterrichtsvorhaben konkretisiert werden. Diese Konkretisierung hat vorschlagenden
Charakter, ohne die pädagogische Freiheit des Lehrenden einschränken zu wollen.
Die übergeordneten Kompetenzen des Kompetenzbereichs „Kommunizieren und Kooperieren“ werden in jedem Unterrichtsvorhaben erworben
bzw. vertieft und sind daher nicht jedes Mal erneut aufgeführt.
Kommunizieren und Kooperieren (K)
Schülerinnen und Schüler
verwenden Fachausdrücke bei der Kommunikation über informatische Sachverhalte,
kommunizieren und kooperieren in Gruppen und in Partnerarbeit,
präsentieren Arbeitsabläufe und Arbeitsergebnisse.
Seite 9 von 45Unterrichtsvorhaben Nr. 1
Thema: Überblick über das Fach Informatik, Grundlagen von Informatiksystem und Geschichte der Informatik
Leitfragen: Mit welchen Themen befasst sich das Fach Informatik in der Schule? Wie funktioniert ein moderner Computer? Welche Entwicklung
durchlief die moderne Datenverarbeitung?
Zeitbedarf: 6 Stunden
Vorhabenbezogene Konkretisierung:
Das erste Unterrichtsvorhaben stellt eine allgemeine Einführung in das Fach Informatik dar. Da einige Schülerinnen und Schüler das Fach zum ersten
Mal in der Einführungsphase belegen, wird zu Beginn ein Überblick über die Themen des Schulfachs Informatik gegeben. Unter anderem wird auf
den zentralen Begriff der Information eingegangen und die Möglichkeit der Codierung von Daten, insbesondere wird die Binärdarstellung von Zahlen
thematisiert. Stationen der geschichtlichen Entwicklung werden angesprochen wie z.B. von-Neumann-Architektur und das EVA-Prinzip. Außerdem
werden die Schülerinnen und Schüler in die konkrete Nutzung der Informatiksysteme an der Schule eingewiesen.
Seite 10 von 45Unterrichtssequenzen zu entwickelnde Kompetenzen Beispiele, Medien,
Materialien
1. Allgemeine Einführung Die Schülerinnen und Schüler Schulnetzwerk
a) Übersicht über das Fach nutzen die im Unterricht eingesetzten Informatiksysteme selbstständig, Lernplattform moodle
b) Einführung in die sicher, zielführend und verantwortungsbewusst (D),
Informatiksysteme der Schule nutzen das verfügbare Informatiksystem zu strukturierten Verwaltung und
gemeinsamen Verwendung von Daten unter Berücksichtigung der
Rechteverwaltung (K),
nutzen das Internet zur Recherche, zum Datenaustausch und zur
Kommunikation (K).
2. Grundlagen von Die Schülerinnen und Schüler Beispiel: Algebra im Binär-
Informatiksystemen und stellen ganze Zahlen und Zeichen in Binärcodes dar (D), und Dezimalsystem
Überblick über die Geschichte interpretieren Binärcodes als Zahlen und Zeichen (D),
der Informatik beschreiben und erläutern den strukturellen Aufbau und die Arbeits-weise
a) Darstellung von Zahlen im singulärer Rechner am Beispiel der „Von-Neumann-Architektur“ (A).
Binärsystem erläutern wesentliche Grundlagen der Geschichte der digitalen
b) Von-Neumann-Architektur Datenverarbeitung (A).
c) Geschichte der
Datenverarbeitung
Unterrichtsvorhaben Nr. 2
Thema: Grundlagen der imperativen Programmierung mit Java, einfache Algorithmik und Datenstrukturen
Leitfragen:Wie ist ein Java-Programm aufgebaut? Welche Datentypen und Kontrollstrukturen stehen in Java zur Verfügung und wie nutzt man
diese? Wie verläuft der Entwicklungsprozess eines Java-Programms? Wie kann man zusammengehörige Daten gleichen Typs strukturiert speichern?
Zeitbedarf: 34 Stunden
Seite 11 von 45Vorhabenbezogene Konkretisierung:
Die Schülerinnen und Schüler erarbeiten die Grundlagen der imperativen Programmierung mit Java anhand einer grafischen
Programmierumgebung. Zu den Grundlagen zählen: einfache Datentypen, Variablenkonzept, Wertzuweisungen, Kontrollstrukturen und das
Methodenkonzept. Die Schülerinnen und Schüler wenden ihr Wissen kontextbezogen auf kleinere Problemstellungen an. Dabei durchlaufen sie den
kontinuierlichen Prozess von Entwurf, Implementieren, Compilieren und Testen.
Unterrichtssequenzen zu entwickelnde Kompetenzen Beispiele, Medien,
Materialien
1. Einführung in die Die Schülerinnen und Schüler Java-Hamster-Simulator
Programmierung analysieren und erläutern einfache Algorithmen und Programme (A), Leitprogramm „Einführung
a) Erste Schritte modifizieren einfache Algorithmen und Programme (I), in die Programmierung“
b) Programmaufbau entwerfen einfache Algorithmen und stellen sie umgangssprachlich JavaEditor
c) Datentypen und Operationen und grafisch dar (M), Lerntagebuch
d) Variablen implementieren Algorithmen unter Verwendung von Variablen und Struktogramme
e) Verzweigungen Wertzuweisungen, Kontrollstrukturen sowie Methodenaufrufen (I), Lehrbuch
f) Schleifen testen Programme schrittweise anhand von Beispielen (I).
g) Methoden
h) Array
Unterrichtsvorhaben Nr. 3
Thema: Grundlagen der objektorientierten Modellierung und Implementierung
Leitfragen: Was sind Objekte, was sind Klassen? Wie programmiert man objektorientiert? Was bedeutet Kapselung, Polymorphie und Vererbung?
Wie lassen sich Datenflüsse und Beziehungen zwischen Objekten und Klassen realisieren und visualisieren?
Zeitbedarf: 30 Stunden
Vorhabenbezogene Konkretisierung:
Seite 12 von 45Zunächst erarbeiten die Schülerinnen und Schüler die Bedeutungen der Begriffe Objekt und Klasse anhand alltäglicher Beispiele. Sie modellieren
und implementieren einfache Klassen und stellen diese mithilfe von UML-Diagrammen und Implementationsdiagrammen dar. Neben der Erzeugung
von Objekten erlernen sie auch deren Benutzung und Interaktionen untereinander.
Komplexere Modelle werden im Rahmen eines Softwareprojektes selbstständig umgesetzt. Hier können zum Beispiel Umgebungen wie BlueJ oder
Greenfoot eingesetzt werden. Die Klassen des Projektes werden schrittweise durch Vererbung konkretisiert und deren Funktion implementiert.
Dabei werden die bereits erlernten Grunddatentypen und verschiedenen Arten von Methoden in anderem Zusammenhang angewendet und
eingeübt. Insbesondere wird das Geheimnisprinzip vertieft. Das Projekt wird dabei geeignet dokumentiert.
Unterrichtssequenzen zu entwickelnde Kompetenzen Beispiele, Medien,
Materialien
1. Einführung in die Die Schülerinnen und Schüler Moodle
Objektorientierung ermitteln bei der Analyse einfacher Problemstellungen Objekte, ihre BlueJ
a) Was ist ein Objekt? Was ist Eigenschaften, ihre Operationen und ihre Beziehungen (M), Greenfoot
eine Klasse? modellieren Klassen mit ihren Attributen, ihren Methoden und JavaEditor
b) Objekte erzeugen Assoziationsbeziehungen (M),
c) Darstellung / Verhalten von modellieren Klassen unter Verwendung von Vererbung (M),
Objekten ordnen Attributen, Parametern und Rückgaben von Methoden einfache
d) Methoden und Attribute Datentypen, Objekttypen oder lineare Datensammlungen zu (M),
e) Objektinteraktion ordnen Klassen, Attributen und Methoden ihren Sichtbarkeitsbereich zu
f) Objektreferenzen (M),
g) Vererbung beobachten den Zustand eines Objekts dar (D),
h) Geheimnisprinzip stellen Klassen, Assoziations- und Vererbungsbeziehungen in
Diagrammen grafisch dar (D),
dokumentieren Klassen durch Beschreibung der Funktionalität der Me-
thoden (D),
analysieren und erläutern eine objektorientierte Modellierung (A),
implementieren Klassen in einer Programmiersprache auch unter
Nutzung dokumentierter Klassenbibliotheken (I).
Unterrichtsvorhaben Nr. 4
Seite 13 von 45Thema: Aufbau einfacher Such- und Sortierverfahren sowie ihre Anwendung auf die Datenstruktur Array
Leitfragen: Wie geht man beim Suchen und Sortieren von Datenmengen vor? Wie kann man Daten in einem Array suchen und sortieren? Wie
effizient ist ein Algorithmus hinsichtlich seines Laufzeitverhaltens?
Zeitbedarf: 18 Stunden
Vorhabenbezogene Konkretisierung:
Aufbauend auf den programmiertechnischen Grundlagen des letzten Unterrichtsvorhabens können die Schülerinnen und Schüler nun ihr Wissen
kontextbezogen anwenden:
Die Schülerinnen und Schüler erarbeiten die Grundlagen von mindestens zwei einfachen Sortierverfahren selbstständig und individuell. Sie
analysieren das Laufzeitverhalten und Speicherbedarf der Algorithmen.
Unterrichtssequenzen zu entwickelnde Kompetenzen Beispiele, Medien,
Materialien
1. Funktionsweise und Analyse Die Schülerinnen und Schüler Leitprogramm der ETH
von Such- und analysieren Such- und Sortieralgorithmen und wenden sie auf Beispiele Zürich Sortierverfahren
Sortieralgorithmen an (D),
beurteilen die Effizienz von Algorithmen am Beispiel von
Sortierverfahren hinsichtlich Zeitaufwand und Speicherplatzbedarf (A).
2. Implementierung und Die Schülerinnen und Schüler Moodle
Analyse einfacher Sortier- und implementieren Algorithmen zum Suchen und Sortieren (I). JavaEditor
Suchverfahren auf Arrays
Seite 14 von 45II)/III) Qualifikationsphase – Grundkurs/Leistungskurs
Die Aufstellung der Unterrichtsvorhaben erfolgt für den Grundkurs und den Leistungskurs
kombiniert.
Die folgenden Kompetenzen aus dem Bereich Kommunizieren und Kooperieren werden in
allen Unterrichtsvorhaben der Qualifikationsphase vertieft und sollen aus Gründen der
Lesbarkeit nicht in jedem Unterrichtsvorhaben separat aufgeführt werden:
Die Schülerinnen und Schüler
verwenden die Fachsprache bei der Kommunikation über informatische Sachverhalte (K),
nutzen bereitgestellte Informatiksysteme und das Internet reflektiert zur Erschließung,
Aufbereitung und Präsentation fachlicher Inhalte (D),
nutzen das verfügbare Informatiksystem zur strukturierten Verwaltung von
Dateien unter Berücksichtigung der Rechteverwaltung
/Daten, zur Organisation von Arbeitsabläufen sowie zur Verteilung und
Zusammenführung von Arbeitsanteilen (K),
organisieren und koordinieren kooperatives und eigenverantwortliches Arbeiten (K),
strukturieren den Arbeitsprozess, vereinbaren Schnittstellen und führen Ergebnisse
zusammen (K),
beurteilen Arbeitsorganisation, Arbeitsabläufe und Ergebnisse (K),
präsentieren Arbeitsabläufe und -ergebnisse adressatengerecht (K).
Ebenso bieten fast alle Unterrichtsvorhaben, in denen Programme implementiert werden,
die Gelegenheit, die folgenden Kompetenzen zu erwerben bzw. zu vertiefen:
Schülerinnen und Schüler
nutzen die Syntax und Semantik einer Programmiersprache bei der Implementierung und
zur Analyse von Programmen (I),
beurteilen die syntaktische Korrektheit und die Funktionalität von Programmen (A),
interpretieren Fehlermeldungen und korrigieren den Quellcode (I),
wenden eine didaktisch orientierte Entwicklungsumgebung (didaktisch orientierte
Entwicklungsumgebungen) zur Demonstration, zum Entwurf, zur Implementierung und
zum Test von Informatiksystemen an (I),
entwickeln mit didaktisch orientierten Entwicklungsumgebungen einfache
Benutzungsoberflächen zur Kommunikation mit einem Informatiksystem (M).
15Unterrichtsvorhaben Q1-I
Thema: Prinzipielle Arbeitsweise eines Computers und maschinennahe Sprachen
Leitfragen: Was sind die strukturellen Hauptbestandteile eines Computers und wie kann man sich die Ausführung eines maschinenahen Programms
mit diesen Komponenten vorstellen? Welche Möglichkeiten bieten Informatiksysteme und wo liegen ihre Grenzen?
Zeitbedarf: 10 Stunden
Absprachen zur vorhabenbezogene Konkretisierung:
Anhand einer von-Neumann-Architektur und einem maschinennahen Programm wird die prinzipielle Arbeitsweise von Computern verdeutlicht.
Ausgehend von den prinzipiellen Grenzen endlicher Automaten liegt die Frage nach den Grenzen von Computern bzw. nach Grenzen der
Automatisierbarkeit nahe. Es werden Vor- und Nachteile der Grenzen der Automatisierbarkeit angesprochen und der Einsatz von
Informatiksystemen hinsichtlich prinzipieller Möglichkeiten und prinzipieller Grenzen beurteilt.
Lernmittel / Materialien:
Arbeitsblätter in der moodle-Plattform
geeigneter Modellrechner (z. B. Johnny, WinAli, Microprocessor Simulator, o. a.)
16Unterrichtssequenzen zu entwickelnde Kompetenzen Beispiele, Medien,
Materialien
1. Von-Neumann-Architektur und die Ausführung Die Schülerinnen und Schüler geeigneter Modellrechner
maschinennaher Programme: erläutern die Ausführung eines einfachen Johnny
prinzipieller Aufbau einer von Neumann-Architektur mit maschinennahen Programms sowie die WinAli
CPU, Rechenwerk, Steuerwerk, Register und Hauptspeicher Datenspeicherung auf einer „Von- Microprocessor
einige maschinennahe Befehlen und ihre Repräsentation in Neumann-Architektur“ (A), Simulator
einem Binär-Code, der in einem Register gespeichert untersuchen und beurteilen Grenzen des
werden kann Problemlösens mit Informatiksystemen (A).
Analyse und Erläuterung der Funktionsweise eines
einfachen maschinennahen Programms
17Unterrichtsvorhaben Q1-II
Thema: Rekursive Algorithmen und Backtracking in Anwendungskontexten
Leitfragen: Wie können komplexe, rekursiv definierte Probleme informatisch gelöst werden? Gibt es schnelle (rekursiv definierte) Sortier- und
Suchverfahren?
Zeitbedarf: 15/25 Stunden
Absprachen zur vorhabenbezogene Konkretisierung:
Ausgehend vom einem Problem wie z. B. "Türme von Hanoi" wird Rekursion als fundamentale Idee der Informatik zunächst im mathematischen,
danach aber auch im informatischen Zusammenhang angewendet. Dabei wird zwischen linearen und verzweigten Rekursionen unterschieden und
das Laufzeitverhalten bei hoher Rekursionstiefe analysiert.
Verschiedene NP-vollständige Probleme (wie z. B. Rucksack, n-Damen, Springer, Irrgarten, etc.) werden algorithmisch rekursiv formuliert und als
Backtracking-Algorithmus implementiert.
Bereits bekannte Such- und Sortierverfahren (z. B. Sortieren durch Einfügen, Sortieren durch Auswahl, Sequentielle Suche) werden rekursiv
formuliert und durch leistungsfähigere Verfahren (z. B. Quicksort, Mergesort, Heapsort, Binäre Suche) ergänzt. Die neuen Verfahren werden
implementiert.
Lernmittel / Materialien:
Arbeitsblätter in der moodle-Plattform
eine didaktische Entwicklungsumgebung (z. B. Java-Editor o. a.)
18Unterrichtssequenzen zu entwickelnde Kompetenzen Beispiele, Medien, Materialien
1. Entwicklung der Rekursion als fundamentale Idee Die Schülerinnen und Schüler Türme von Hanoi mit
der Informatik analysieren und erläutern Algorithmen und Schwerpunkt auf
rekursive Formeln Programme (A), Zahl der
rekursive Funktionen / Methoden modifizieren Algorithmen und Programme (I), Versetzungsoperationen
rekursive Programmierung Protokollierung der
Versetzungen
2. Rekursion in mathematischen und informatischen Die Schülerinnen und Schüler Fakultätsfunktion (lineare
Kontexten analysieren und erläutern Algorithmen und Rekursion)
Rekursion in mathematischen Kontexten Programme (A), Fibonacci-Funktion
Analyse und Darstellung des rekursiven Ablaufs modifizieren Algorithmen und Programme (I), (verzweigte Rekursion)
einer Methode stellen iterative und rekursive Algorithmen ggT (verzweigte Rekursion)
Analyse des Laufzeitverhaltens linearer und umgangssprachlich und grafisch dar (D), evtl. Fraktale (Kochkurve,
verzweigter Rekursion testen Programme systematisch anhand von Sierpinskidreieck, etc.)
Beispielen und mit Hilfe von Testanwendungen (I).
untersuchen und beurteilen Grenzen des
Problemlösens mit Informatiksystemen (A).
3. NP-vollständige Probleme lösen mit Backtracking Die Schülerinnen und Schüler Rucksackproblem
Erarbeitung verschiedener NP-vollständiger analysieren und erläutern Algorithmen und Irrgartenproblem
Probleme Programme (A), Projektarbeit zu einer
Algorithmische Beschreibung einer Lösungsidee modifizieren Algorithmen und Programme (I), Problemstellung
Implementierung eines Problems als stellen iterative und rekursive Algorithmen
Backtrackingalgorithmus umgangssprachlich und grafisch dar (D),
entwickeln iterative und rekursive Algorithmen
unter Nutzung der Strategien „Modularisierung“
und „Teilen und Herrschen“ und "Backtracking"
(M)
testen Programme systematisch anhand von
Beispielen und mit Hilfe von Testanwendungen (I).
untersuchen und beurteilen Grenzen des
Problemlösens mit Informatiksystemen (A).
194. Effiziente Sortierverfahren / Suchverfahren Die Schülerinnen und Schüler Demonstrationsprogramm
Wiederholung bereits bekannter Sortier- und analysieren und erläutern Algorithmen und zur Visualisierung von
Suchverfahren als rekursiver Algorithmus Programme (A), Sortierverfahren
Erarbeitung eines Sortierverfahrens der Laufzeit modifizieren Algorithmen und Programme (I), Quicksortvisualisierung zur
O(n*log(n)) stellen iterative und rekursive Algorithmen Erarbeitung der Idee
Erarbeitung eines Suchverfahrens der Laufzeit umgangssprachlich und grafisch dar (D), Suchspiel zur Erarbeitung der
O(log(n)). entwickeln iterative und rekursive Algorithmen Binären Suche
unter Nutzung der Strategien „Modularisierung“
und „Teilen und Herrschen“ und "Backtracking"
(M),
testen Programme systematisch anhand von
Beispielen und mit Hilfe von Testanwendungen (I).
implementieren und erläutern iterative und
rekursive Such- und Sortierverfahren
unterschiedlicher Komplexitätsklassen
(Speicherbedarf und Laufzeitverhalten) (I),
beurteilen die Effizienz von Algorithmen unter
Berücksichtigung des Speicherbedarfs und der
Zahl der Operationen (A),
untersuchen und beurteilen Grenzen des
Problemlösens mit Informatiksystemen (A).
20Unterrichtsvorhaben Q1-III
Thema: Modellierung und Implementierung dynamischer Listenstrukturen und deren Anwendungen
Leitfragen: Wie können beliebig viele linear angeordnete Daten im Anwendungskontext verwaltet werden?
Zeitbedarf: 25/30 Stunden
Absprachen zur vorhabenbezogene Konkretisierung:
Nach Analyse einer Problemstellung in einem geeigneten Anwendungskontext, in dem Daten nach dem Last-In-First-Out-Prinzip verwaltet
werden, werden der Aufbau von Stapeln am Beispiel dargestellt und die Operationen der Klasse Stack anhand der Abiturklasse erläutert.
Anschließend werden für die Anwendung notwendige Klassen modelliert und implementiert.
Anschließend wird die Anwendung modifiziert, um den Umgang mit der Datenstruktur zu üben. Anhand einer Anwendung, in der Daten nach dem
First-In-First-Out-Prinzip verwaltet werden, werden Unterschiede zwischen den Datenstrukturen Schlange und Stapel erarbeitet. Dabei werden
die Operationen der Datenstruktur Schlange thematisiert und die entsprechende Abiturklasse Queue verwendet.
Um einfacher an Objekte zu gelangen, die zwischen anderen gespeichert sind, wird die Klasse List gemäß der Abiturklasse eingeführt und in einem
Anwendungskontext verwendet.
(Je nach thematisierten Anwendungskontexten ist eine andere Reihenfolge bei der Behandlung der oben genannten Datenstrukturen möglich und
zulässig.)
In mindestens einem weiteren Anwendungskontext wird die Verwaltung von Daten in Schlangen, Stapeln oder Listen vertieft. Modellierungen
werden dabei in Entwurfs- und Implementationsdiagrammen dargestellt.
Lernmittel / Materialien:
Arbeitsblätter in der moodle-Plattform
eine didaktische Entwicklungsumgebung (z. B. Java-Editor o. a.)
Zeigermodell
Modellprogramm zur Visualisierung dynamischer Listenstrukturen
Seite 21 von 45Unterrichtssequenzen zu entwickelnde Kompetenzen Beispiele, Medien, Materialien
1. Die Datenstruktur Stapel im Anwendungskontext Die Schülerinnen und Schüler Visualisierungsprogramm zu
unter Nutzung der Klasse Stack ermitteln bei der Analyse von Problemstellungen dynamischen Datenstrukturen
Analyse der Problemstellung, Ermittlung von Objekte, ihre Eigenschaften, ihre Operationen und
Objekten, ihren Eigenschaften und Operationen ihre Beziehungen (M),
Erarbeitung der Funktionalität der Klasse Stack stellen lineare und nichtlineare Strukturen
Modellierung und Implementierung der grafisch dar und erläutern ihren Aufbau (D),
Anwendung unter Verwendung der Klasse Stack. modellieren Klassen mit ihren Attributen,
Implementierung der Klasse Stack Methoden und ihren Assoziationsbeziehungen
2. Die Datenstruktur Schlange im Anwendungskontext unter Angabe von Multiplizitäten (M), Visualisierungsprogramm zu
unter Nutzung der Klasse Queue ordnen Attributen, Parametern und Rückgaben dynamischen Datenstrukturen
Analyse der Problemstellung, Ermittlung von von Methoden einfache Datentypen, Objekttypen
Objekten, ihren Eigenschaften und Operationen sowie lineare und nichtlineare Datensammlungen
Erarbeitung der Funktionalität der Klasse Queue zu (M),
Modellierung und Implementierung der ordnen Klassen, Attributen und Methoden ihre
Anwendung unter Verwendung der Klasse Queue. Sichtbarkeitsbereiche zu (M),
Implementierung der Klasse Queue stellen die Kommunikation zwischen Objekten
3. Die Datenstruktur lineare Liste im grafisch dar (D), Visualisierungsprogramm zu
Anwendungskontext unter Nutzung der Klasse List stellen Klassen und ihre Beziehungen in dynamischen Datenstrukturen
Erarbeitung der Vorteile der Klasse List im Diagrammen grafisch dar (D), Einfache Oberfläche zur
Gegensatz zu den bereits bekannten linearen dokumentieren Klassen (D), Visualisierung der linearen Liste,
Strukturen analysieren und erläutern objektorientierte z. B. die Verwaltung einer
Modellierung und Implementierung einer Modellierungen (A), Namensliste
kontextbezogenen Anwendung unter implementieren Klassen in einer
Verwendung der Klasse List. Programmiersprache auch unter Nutzung
Implementierung der Klasse List dokumentierter Klassenbibliotheken (I).
analysieren und erläutern Algorithmen und
Programme (A),
modifizieren Algorithmen und Programme (I),
stellen iterative und rekursive Algorithmen
umgangssprachlich und grafisch dar (D),
implementieren iterative und rekursive
Algorithmen auch unter Verwendung von
dynamischen Datenstrukturen (I),
Seite 22 von 45 testen Programme systematisch anhand von
Beispielen und mit Hilfe von Testanwendungen (I).
erläutern Operationen dynamischer (linearer
oder/und nicht-linearer) Datenstrukturen (A),
implementieren Operationen dynamischer
(linearer oder nicht-linearer) Datenstrukturen (I),
4. Vertiefung / Anwendung einer linearen zusätzlich: Die Schülerinnen und Schüler Umsetzung in einem größeren
Datenstruktur im Anwendungskontext. modellieren abstrakte und nicht abstrakte Klassen Projekt
unter Verwendung von Vererbung durch
Spezialisieren und Generalisieren (M),
verwenden bei der Modellierung geeigneter
Problemstellungen Möglichkeiten der
Polymorphie (M),
Seite 23 von 45Unterrichtsvorhaben Q1-IV
Thema: Modellierung und Implementierung von Anwendungen mit dynamischen, nichtlinearen Datenstrukturen am Beispiel der Binärbäume
Leitfragen: Wie können Daten im Anwendungskontext mit Hilfe binärer Baumstrukturen verwaltet werden? Wie kann dabei der rekursive Aufbau
der Baumstruktur genutzt werden? Welche Vor- und Nachteile haben Suchbäume für die geordnete Verwaltung von Daten?
Zeitbedarf: 15/25 Stunden
Absprachen zur vorhabenbezogene Konkretisierung:
Anhand von Beispielen für Baumstrukturen werden grundlegende Begriffe eingeführt und der rekursive Aufbau binärer Bäume dargestellt.
Anschließend werden für eine Problemstellung in einem der Anwendungskontexte Klassen modelliert und implementiert. Dabei werden die
Operationen der Datenstruktur Binärbaum thematisiert und die entsprechende Klasse BinaryTree der Vorgaben für das Zentralabitur NRW
verwendet. Klassen und ihre Beziehungen werden in Entwurfs- und Implementationsdiagrammen dargestellt. Die Funktionsweise von Methoden
wird anhand grafischer Darstellungen von Binärbäumen erläutert.
Unter anderem sollen die verschiedenen Baumtraversierungen (Pre-, Post- und Inorder) implementiert werden. Unterschiede bezüglich der
Möglichkeit, den Baum anhand der Ausgabe der Bauminhalte via Pre-, In- oder Postorder-Traversierung zu rekonstruieren, werden dabei ebenfalls
angesprochen, indem die fehlende Umkehrbarkeit der Zuordnung Binärbaum => Inorder-Ausgabe an einem Beispiel verdeutlicht wird.
Eine Tiefensuche wird verwendet, um einen in der Baumstruktur gespeicherten Inhalt zu suchen.
Zu einer Problemstellung in einem entsprechenden Anwendungskontext werden die Operationen der Datenstruktur Suchbaum thematisiert und
unter der Verwendung der Klasse BinarySearchTree der Vorgaben für das Zentralabitur weitere Klassen oder Methoden in diesem Kontext
modelliert und implementiert. Die Suchbäume werden wie zuvor auch grafisch dargestellt.
Die Verwendung von binären Bäumen und Suchbäumen wird anhand weiterer Problemstellungen oder anderer Kontexten weiter geübt.
Lernmittel / Materialien:
eine didaktische Entwicklungsumgebung (z. B. Java-Editor o. a.)
Arbeitsblätter und Demonstrationsprogramme in der moodle-Plattform
Modellprogramm zur Visualisierung dynamischer Listenstrukturen
Seite 24 von 45Unterrichtssequenzen zu entwickelnde Kompetenzen Beispiele, Medien, Materialien
1. Analyse von Baumstrukturen in verschiedenen Die Schülerinnen und Schüler Demoprogramm und
Kontexten ermitteln bei der Analyse von Problemstellungen Arbeitsblätter zum Projekt
Grundlegende Begriffe (Grad, Tiefe, Höhe, Blatt, Objekte, ihre Eigenschaften, ihre Operationen und ihre Akinator
Inhalt, Teilbaum, Ebene, Vollständigkeit) Beziehungen (M),
Aufbau und Darstellung von binären Bäumen stellen lineare und nichtlineare Strukturen grafisch dar
anhand von Baumstrukturen in verschiedenen und erläutern ihren Aufbau (D),
Kontexten modellieren Klassen mit ihren Attributen, Methoden
und ihren Assoziationsbeziehungen unter Angabe von
2. Die Datenstruktur Binärbaum im Arbeitsblätter zur
Multiplizitäten (M),
Anwendungskontext unter Nutzung der Klasse Projektarbeit Akinator
modellieren abstrakte und nicht abstrakte Klassen
BinaryTree
unter Verwendung von Vererbung durch Spezialisieren
Traversierungsverfahren
Analyse der Problemstellung, Ermittlung von und Generalisieren (M), Projektarbeit Morsebaum
Objekten, ihren Eigenschaften und Operationen ordnen Attributen, Parametern und Rückgaben von
im Anwendungskontext Methoden einfache Datentypen, Objekttypen
Modellierung eines Entwurfsdiagramms und sowie/oder lineare und nichtlineare
Entwicklung eines Implementationsdiagramms Datensammlungen zu (M),
Erarbeitung der Klasse BinaryTree und verwenden bei der Modellierung geeigneter
beispielhafte Anwendung der Operationen Problemstellungen Möglichkeiten der Polymorphie
Implementierung der Anwendung oder von Teilen (M),
der Anwendung ordnen Klassen, Attributen und Methoden ihre
Traversierung eines Binärbaums im Pre-, In- und Sichtbarkeitsbereiche zu (M),
Postorderdurchlauf stellen Klassen und ihre Beziehungen in Diagrammen
Implementierung der Standardoperationen der grafisch dar (D),
Klasse BinaryTree dokumentieren Klassen (D),
3. Die Datenstruktur binärer Suchbaum im analysieren und erläutern objektorientierte Arbeitsblätter zum binären
Modellierungen (A),
Anwendungskontext unter Verwendung der Klasse Suchbaum
implementieren Klassen in einer Programmiersprache
BinarySearchTree Arbeitsblätter zum
auch unter Nutzung dokumentierter
Analyse der Problemstellung, Ermittlung von Baumsortieren und zu
Klassenbibliotheken (I).
Objekten, ihren Eigenschaften und Operationen Traversierungsverfahren
analysieren und erläutern Algorithmen und
Modellierung eines Entwurfsdiagramms und Programme (A),
Entwicklung eines Implementationsdiagramm, modifizieren Algorithmen und Programme (I),
grafische Darstellung eines binären Suchbaums
und Erarbeitung der Struktureigenschaften
Seite 25 von 45 Erarbeitung der Klasse BinarySearchTree und stellen iterative und rekursive Algorithmen
Einführung des Interface Item zur Realisierung umgangssprachlich und grafisch dar (D),
einer geeigneten Ordnungsrelation entwickeln iterative und rekursive Algorithmen unter
Implementierung der Anwendung oder von Teilen Nutzung der Strategien „Modularisierung“ und „Teilen
der Anwendung inklusive einer sortierten und Herrschen“ und „Backtracking“ (M),
Ausgabe des Baums implementieren iterative und rekursive Algorithmen
auch unter Verwendung von dynamischen
Implementierung ausgewählter
Datenstrukturen (I),
Standardoperationen der Klasse BinarySearchTree
testen Programme systematisch anhand von
4. Übung und Vertiefungen der Verwendung von
Beispielen und mit Hilfe von Testanwendungen (I).
Projektarbeiten zu einem der
Binärbäumen oder binären Suchbäumen anhand Themen Termbäume,
erläutern Operationen dynamischer (linearer oder/und
weiterer Problemstellungen nicht-linearer) Datenstrukturen (A), Morsebäume,
implementieren Operationen dynamischer (linearer Stichwortbaum, Ahnenbaum
oder nicht-linearer) Datenstrukturen (I),
Seite 26 von 45Unterrichtsvorhaben Q1-V
Thema: Modellierung und Implementierung dynamischer nichtlinearer Datenstrukturen am Beispiel der Graphen
Leitfragen: Bei welchen Problemstellungen reichen die bekannten Datenstrukturen nicht aus? Welche Möglichkeiten gibt es, flexibel miteinander
verknüpfte Informationen zu verwalten? Wie hängen die Datenstrukturen Graph, Baum und Liste zusammen?
Zeitbedarf: 15 Stunden
Absprachen zur vorhabenbezogene Konkretisierung:
Nach Analyse einer Problemstellung in einem geeigneten Anwendungskontext (z. B. das Eulerkreisproblem), in dem Daten in Form eines Graphen
verwaltet werden, werden der Aufbau und die Darstellungsformen von Graphen am Beispiel dargestellt und ausgewählte Problemstellungen
exemplarisch analysiert.
Die Operationen der Klasse Graph werden erläutert und im Anwendungszusammenhang bei der Lösung grundlegender Probleme (wie z.B. der
Traversierung eines Graphen) genutzt.
Lernmittel / Materialien:
Arbeitsblätter in der moodle-Plattform
eine didaktische Entwicklungsumgebung (z. B. Java-Editor o. a.)
27Unterrichtssequenzen zu entwickelnde Kompetenzen Beispiele, Medien, Materialien
1. Die Datenstruktur des Graphen im Die Schülerinnen und Schüler Eulerkreisproblem:
Anwendungskontext ermitteln bei der Analyse von Problemstellungen Arbeitsblätter zum
Grundbegriffe (Knoten, Kanten und anderes) Objekte, ihre Eigenschaften, ihre Operationen und ihre Eulerweg / Eulerkreis
Darstellungsformen eines Graphen Beziehungen (M), Visualisierungsprogramm
stellen lineare und nichtlineare Strukturen grafisch dar für Graphen
und erläutern ihren Aufbau (D),
modellieren Klassen mit ihren Attributen, Methoden
und ihren Assoziationsbeziehungen unter Angabe von
Multiplizitäten (M),
modellieren abstrakte und nicht abstrakte Klassen unter
Verwendung von Vererbung durch Spezialisieren und
Generalisieren (M),
ordnen Attributen, Parametern und Rückgaben von
Methoden einfache Datentypen, Objekttypen sowie
lineare und nichtlineare Datensammlungen zu (M),
verwenden bei der Modellierung geeigneter
Problemstellungen Möglichkeiten der Polymorphie (M),
ordnen Klassen, Attributen und Methoden ihre
Sichtbarkeitsbereiche zu (M),
stellen die Kommunikation zwischen Objekten grafisch
dar (D),
stellen Klassen und ihre Beziehungen in Diagrammen
grafisch dar (D),
dokumentieren Klassen (D),
analysieren und erläutern objektorientierte
Modellierungen (A),
implementieren Klassen in einer Programmiersprache
auch unter Nutzung dokumentierter
Klassenbibliotheken (I).
28 analysieren und erläutern Algorithmen und Programme
(A),
modifizieren Algorithmen und Programme (I),
stellen iterative und rekursive Algorithmen
umgangssprachlich und grafisch dar (D),
entwickeln iterative und rekursive Algorithmen unter
Nutzung der Strategien „Modularisierung“ und „Teilen und
Herrschen“ und „Backtracking“ (M),
implementieren iterative und rekursive Algorithmen
auch unter Verwendung von dynamischen
Datenstrukturen (I),
testen Programme systematisch anhand von Beispielen
und mit Hilfe von Testanwendungen (I).
erläutern Operationen dynamischer (linearer oder/und
nicht-linearer) Datenstrukturen (A),
2. Die Datenstruktur des Graphen im Projektarbeit in einem
Anwendungskontext unter Nutzung der Klasse größeren Kontext:
Graph Navigationssystem
Modellierung von Anwendungssituationen als Weiterführung des
Graph Eulerkreisproblems
Analyse der Problemstellung, Ermittlung von Arbeitsblätter in der moodle-
Objekten, ihren Eigenschaften und Plattform zu:
Operationen Tiefensuche / Breitensuche
Erarbeitung der Funktionalität der Klasse kürzeste Wege mit Dijkstra
Graph mögliche Vertiefungen:
Modellierung und Implementierung Traveling Salesman Problem
verschiedener Problemstellungen unter minimale Spannbäume
Verwendung der Klasse Graph.
29Unterrichtsvorhaben Q1-VI/Q1-V
Thema: Modellierung und Nutzung relationaler Datenbanken in Anwendungskontexten
Leitfragen: Wie können Fragestellungen mit Hilfe einer Datenbank beantwortet werden? Wie entwickelt man selbst eine Datenbank für einen
Anwendungskontext?
Zeitbedarf: 20/30 Stunden
Absprachen zur vorhabenbezogene Konkretisierung:
Ausgehend von einer konkreten Anwendungssituation entwickeln die Schülerinnen und Schüler Ideen zur Modellierung von Daten und erkennen
die Vorzüge von Datenbanksystemen.
In weiteren Anwendungskontexten müssen Datenbanken entwickelt werden, um Daten zu speichern und Informationen für die Beantwortung von
möglicherweise auftretenden Fragen zur Verfügung zu stellen. Dafür ermitteln Schülerinnen und Schüler in den Anwendungssituationen Entitäten,
zugehörige Attribute, Relationen und Kardinalitäten und stellen diese in Entity-Relationship-Modellen dar. Entity-Relationship-Modelle werden
interpretiert und erläutert, modifiziert und in das Relationale Modell überführt.
An einem Beispiel wird verdeutlicht, dass in Datenbanken Redundanzen unerwünscht sind und Konsistenz gewährleistet sein sollte. Die 1. bis 3.
Normalform wird als Gütekriterium für Datenbankentwürfe eingeführt. Datenbankschemata werden hinsichtlich der 1. bis 3. Normalform
untersucht und (soweit nötig) normalisiert.
Ausgehend von einer vorhandenen Datenbasis, für die eine Datenbank angelegt und mit den Daten gefüllt wird, entwickeln Schülerinnen und
Schüler für sie relevante Fragestellungen, die mit dem vorhandenen Datenbestand beantwortet werden sollen. Zur Beantwortung dieser
Fragestellungen wird die vorgegebene Datenbank von den Schülerinnen und Schülern analysiert und die notwendigen Grundbegriffe für
Datenbanksysteme sowie die erforderlichen SQL-Abfragen werden erarbeitet.
Mit Hilfe von SQL-Anweisungen können anschließend im Kontext relevante Informationen aus der Datenbank extrahiert werden. Die Operationen
der Relationenalgebra werden mit SQL-Abfragen simuliert.
Seite 30 von 45Anhand von Fallbeispielen werden Probleme bei der Nutzung von Datenbanksystemen aufgezeigt und im Hinblick auf gesellschaftliche
Auswirkungen diskutiert.
(Die exakte Abfolge der Teilvorhaben sowie die Verzahnung theoretischer und praktischer Anteile kann hierbei je nach Anwendungskontext
flexibel angepasst werden.)
Lernmittel / Materialien:
Arbeitsblätter und Demonstrationsprogramme in der moodle-Plattform
Datenbankserver (z. B. XAMPP)
SQL-Tutorial (z. B. die Seite SQL-Zoo, VideoCenter-Datenbank)
Seite 31 von 45Unterrichtssequenzen zu entwickelnde Kompetenzen Beispiele, Medien, Materialien
1. Modellierung von relationalen Datenbanken Die Schülerinnen und Schüler Arbeitsblätter zur Einführung in
Entity-Relationship-Diagramm: ermitteln für anwendungsbezogene Datenbanken in der moodle-
Ermittlung von Entitäten, zugehörigen Problemstellungen Entitäten, zugehörige Attribute, Plattform
Attributen, Relationen und Kardinalitäten in Relationen und Kardinalitäten (M),
Anwendungssituationen und Modellierung stellen Entitäten mit ihren Attributen und die
eines Datenbankentwurfs in Form eines Entity- Beziehungen zwischen Entitäten mit Kardinalitäten
Relationship-Diagramms in einem Entity-Relationship-Diagramm grafisch dar
(D),
Erläuterung und Modifizierung einer
Datenbankmodellierung modifizieren eine Datenbankmodellierung (M),
Entwicklung einer Datenbank aus einem modellieren zu einem Entity-Relationship-
Diagramm ein relationales Datenbankschema (M),
Datenbankentwurf:
bestimmen Primär- und Sekundärschlüssel (M),
Modellierung eines relationalen
analysieren und erläutern eine
Datenbankschematas zu einem Entity-
Datenbankmodellierung (A),
Relationship-Diagramm inklusive der
erläutern die Eigenschaften normalisierter
Bestimmung von Primär- und
Datenbankschemata (A),
Sekundärschlüsseln
überprüfen Datenbankschemata auf vorgegebene
Redundanz, Konsistenz und Normalformen: Normalisierungseigenschaften (D),
Untersuchung einer Datenbank hinsichtlich überführen Datenbankschemata in die 1. bis 3.
Konsistenz und Redundanz in einer Normalform (M).
Anwendungssituation.
Überprüfung von Datenbankschemata
hinsichtlich der 1. bis 3. Normalform und
Normalisierung (um Redundanzen zu
vermeiden und Konsistenz zu gewährleisten)
2. Nutzung von relationalen Datenbanken Die Schülerinnen und Schüler Arbeitsblätter zur Einführung in
Aufbau von Datenbanken und Grundbegriffe: modifizieren eine Datenbankmodellierung (M), SQL in der moodle-Plattform
Entwicklung von Fragestellungen zur bestimmen Primär- und Sekundärschlüssel (M), Tutorial der Seite SQL-Zoo
vorhandenen Datenbank implementieren ein relationales Datenbankschema (http://sqlzoo.net/wiki/Main_Page)
Analyse der Struktur der vorgegebenen als Datenbank (I), VideoCenter-Datenbank
Seite 32 von 45Datenbank und Erarbeitung der Begriffe analysieren und erläutern eine
Tabelle, Attribut, Datensatz, Datentyp, Datenbankmodellierung (A),
Primärschlüssel, Fremdschlüssel, ermitteln Ergebnisse von Datenbankabfragen über
Datenbankschema mehrere verknüpfte Tabellen (D),
SQL-Abfragen: analysieren und erläutern die Syntax und Semantik
Analyse vorgegebener SQL-Abfragen und einer Datenbankabfrage (A),
Erarbeitung der Sprachelemente von SQL verwenden die Syntax und Semantik einer
(SELECT (DISTINCT) …FROM, WHERE, AND, OR, Datenbankabfragesprache, um Informationen aus
NOT) auf einer Tabelle einen Datenbanksystem zu extrahieren (I).
Analyse und Erarbeitung von SQL-Abfragen auf erläutern Eigenschaften und Aufbau von
Datenbanksystemen unter dem Aspekt der sicheren
einer und mehrerer Tabelle zur Beantwortung
Nutzung (A),
der Fragestellungen (JOIN, UNION, AS, GROUP
BY,ORDER BY, ASC, DESC, COUNT, MAX, MIN,
SUM, Arithmetische Operatoren: +, -, *, /, (…),
Vergleichsoperatoren: =, , >, =,Sie können auch lesen