Curriculum: Zurzeit gelten noch die Rahmenrichtlinien für das Gymnasium - gymnasiale Oberstufe, die Gesamtschule - gymnasiale Oberstufe, das Fachgymnasium, das Abendgymnasium, das Kolleg vom Niedersächsischen Kultusministerium erschienen im Juni 1993. Inhalte: Dort im Kapitel 3.1 Vorstufe Seite 17 f. heißt es: In den zwei Halbjahren der Vorstufe sollen die Schülerinnen und Schüler sowohl in selbständiger experimenteller Arbeit als auch durch Kommunikation und Kooperation in Kleingruppen möglichst breite Erfahrungen mit dem Fach Informatik sammeln. Inhalte aus den Bereichen: 2.1 Werkzeuge und Methoden der Informatik und 2.3 Anwendungen von Hard- und Software-Systemen und deren gesellschaftliche Auswirkungen sind besonders gut für die Vorstufe geeignet.... Der Informatikunterricht hat zurzeit einen Umfang von zwei Wochenstunden. Unter Berücksichtigung der Thematischen Schwerpunkte im Zentralabitur ist es unabdingbar auch des Bereichs 2.2 Funktionsprinzipien von Hard- und Software-Systemen einschließlich theoretischer bzw. technischer Modellvorstellungen in den Themenkatalog aufzunehmen. Dadurch wird Schülerinnen und Schülern auch ein besserer Überblick zu Inhalten des Faches Informatik in der Kursstufe gegeben. Zum Zeitpunkt der Kurswahlen für die Oberstufe kennen die Schülerinnen und Schüler das Fach gerade erst ein halbes Jahr. Daher empfiehlt es sich, verschiedene der drei Bereiche im ersten Halbjahr einzuführen und im zweiten Halbjahr dann zu vertiefen. Im ersten Halbjahr soll zunächst ein variablenfreier Zugang zur Programmierung verwendet werden (Karol oder Robi oder µu). Die Einführung einer Programmiersprache ist für das zweite Halbjahr vorgesehen. Eine funktionale Sprache wie Miranda oder Haskell soll hier bevorzugt eingesetzt werden. Für den Informatikunterricht in der gymnasialen Oberstufe sind in erster Linie die Kerngebiete eines Grundstudiums relevant; ferner gesellschaftliche Fragen, soweit sie nicht Gegenstand des Unterrichts in Sozialkunde oder Politischer Weltkunde sind, sowie die exemplarische Beschäftigung mit einem komplexeren System - insbesondere zur Ausprägung der Eindrücke, was Programmieren im Grunde heißt. Damit ist der Pflichtbereich abgesteckt: Algorithmen und Datenstrukturen, Rechnersysteme, Automaten und formale Sprachen und Gesellschaftliche der Informatik. Laut Beschluss der Fachkonferenz vom 16. März 2010 gilt folgender Grundsatz: Unter Informatik wird das automatisierte Problemlösen mit Hilfe einer elektronischen Rechenmaschine verstanden, sofern möglich. Daher bilden Problemlösen und Programmieren die wesentlichen Tätigkeiten in diesem Fach. Dabei werden Daten, die von verschiedenen Typen und/ oder Strukturen sind, durch Algorithmen verarbeitet. Für die Problemlösung und Programmierung gibt es bewährte Verfahren, Strukturen und Konzepte. Zur Bildung von langfristig geeigneten Meta-Konzepten und intelligentem Wissen ist eine frühzeitige Verwendung entsprechender Fachtermini und eine explizite Thematisierung von Grundlagenwissen unabdingbar. Automatisierte Problemlösung bedeutet eine Transformation von Sachanalysen in formal korrekte Programmtexte. Sie ist mit allen Problemen menschlicher Kommunikation behaftet und stellt immer ein grundsätzliches Risiko dar. Daher sind die invarianten Grundstrukturen bzw. Kontrollstrukturen zur Problembeschreibung und lösung sowie geeignete Visualisierungen bei jeder sich bietenden Gelegenheit zu verwenden. Im Jahrgang 10 sind insgesamt zwei Klassenarbeiten zu schreiben (pro Schulhalbjahr eine). Leistungsgewichtung mündlich zu schriftlich ist im Verhältnis Zwei zu Eins vorzunehmen. Für die Bewertung der schriftlichen Leistungsüberprüfungen ist der Bewertungsschlüssel aus dem Abitur anzuwenden. Eine Ersatzleistung für eine Klausur gibt es nicht.
[ca.std] 30 1. Werkzeuge und Methoden der Informatik 1.1. Algorithmen und Datenstrukturen 1.2. Strukturierte Zerlegung 1.3. Entwicklung von Lösungen inhaltsbezogene: - Algorithmusbegriff (Endlichkeit, Terminierung, Allgemeinheit, Determiniertheit, Determinismus) - Spezifikation und algorithmische Abstraktion - Atomare Datentypen und arithmetisch-logische Operationen, elementare algorithmische Konstrukte und Typkonstruktoren, Rekursion als Sprachmittel - Ausgewählte Algorithmen. Suchen, Sortieren, - Lösungsstrategien durch Modularisierung (top-down, bottom-up, black-box), Hierarchisierung (Schachtelung, Baumstruktur) u. a. - Formalisierung und Darstellungsformen (natürliche Sprache, grafische Spezifikation Blockdiagramm, Struktogramm, Ablaufplan) - Entwicklung von Lösungen (Problemanalyse, -spezifikation, -entwurf, -darstellung, - implementierung, Testen, Optimieren, Dokumentation) prozessbezogene: - zur Bearbeitung funktionaler Zusammenhänge nutzen - Rekursionen zur Ermittlung von Lösungen im mathematischen Modell verwenden - Rekursive Zusammenhänge darstellen, auch unter Verwendung des eingeführten Taschenrechners, solche Darstellungen interpretieren und nutzen siehe Mathematik Klasse 10 Karol, Robi, Tabellenkalkulation E.Tutorial TurboPascal für Mittelschulen der ETH Zürich
10 2. Funktionsprinzipien von Hard- und Software- Systemen einschließlich theoretischer bzw. technischer Modellvorstellungen 2.1. Rechnermodelle und reale Rechnerkonfiguration 2.2. Theoretische Grundlagen - Informationsdarstellung (Darstellung von Daten und Zahlen, Grundrechenarten) - Codierung von Zeichen und Ziffern, Binärcodes, Darstellung von Zahlen, Dualzahlarithmetik, Hexadezimalzahlen, Gleitkommazahlen - Rechnermodell (von Neumann- Konzept) - Funktionsprinzip EVA - Gesetze der Schaltalgebra, Grundgatter, Schaltfunktionen, einfache Schaltnetze, Analyse und Synthese von Schaltnetzen, evtl. Minimierung - Eigenschaften endlicher Automaten (Zustandsgraph, Realisierung von Modellen, Kellerautomat) - Speichermodell (Stack, Heap) - Ein Blockschaltbild eines v. Neumann- Rechners skizzieren, seine Komponenten benennen und ihre Wechselwirkungen beschreiben können. - Zu einfachen Problemstellungen einen Zustandsgraphen entwerfen und daraus eine Zustandsübergangstabel le ableiten können. Tabellenkalkulation, Kara, Digitalsimulator
10 3. Anwendungen von Hardund Software-Systemen und deren gesellschaftliche Auswirkungen 3.1. Geschichte der Informatik - Ausgewählte der Entwicklung von Rechenmaschinen und Programmen 3.2. Datenschutz und informationelle Selbstbestimmung Grundzüge der Funktionsweise eines historischen Rechenapparates erklären und dieses Beispiel in den Kontext seines historischen Umfeldes stellen oder ausgewählte der technischen Entwicklung elektronischer Rechenmaschinen wiedergeben können. An einem historischen oder einem aktuellen Beispiel den Einfluss von Wissenschaft, Technik oder Wirtschaft auf die Entwicklung von Rechnern und Programmsystemen aufzeigen können. Einen groben Überblick über die Entwicklung des Preis-Leistungs-Verhältnisses von Mikrorechnern in den letzten zwei Jahrzehnten geben können. Den Begriff der "informationellen Selbstbestimmung" im Kontext der Rechtsprechung erläutern können. Grundbegriffe des Datenschutzes aus den Rechtsgrundlagen (z.b. Bundesdatenschutzgesetz, Schuldatenverordnung) extrahieren und an kleinen Fallstudien identifizieren können. Das Postulat nach angemessener Sorgfalt beim Umgang mit Daten anhand aktueller Szenarios vertreten können. Rechtskonzepte in Entwürfen für geeignete Datenstrukturen (z.b. einen Datensatz "SchülerIn") modellieren können. Verschlüsselungsverfahren (Cäsar, Vigenère, public-key) - Tabellenkalkulation, CrypTool
15 Std. 4. Werkzeuge und Methoden der Informatik - Kontext Robotik - 4.1 Algorithmen und Datenstrukturen 4.2 Strukturierte Zerlegung 4.3 Entwicklung von Lösungen inhaltsbezogene: - Anwendungsgebiete der Robotik, Vor- und Nachteile der Automatisierung benennen - Konstruktion von Robotersystemen - Algorithmusbegriff kennen - Bedingte Anweisungen nutzen - Schleifen (Zählschleife, Zeitschleife, Endlosschleife, sensorgesteuerte Schleife) benutzen - Einsatz und Funktion von Sensoren (Tastsensor, Geräuschsensor, Ultraschallsensor, Lichtsensor) kennen - Multitasking (nebenläufige Prozesse) anwenden - Einfache Variablen zur Vereinfachung von Lösungen einsetzen - Lösen von komplexen Problemstellungen (Weg in Labyrinthen, Linienverfolger, Farberkennung, RFID etc.) prozessbezogene: - Problemen analysieren und umgangssprachlich beschreiben - Algorithmen zur Lösung von Problemen (Steuerung von Robotern) entwickeln - Algorithmen mit einer visuellen Programmiersprache implementieren - Überarbeitung und Reduktion von Komplexität eines Algorithmus - Kooperieren und Kommunizieren mit anderen ERGÄNZUNGEN wie Material, Medien, Sozialformen, Projekte, fachübergreifende - LEGO NXT- Roboter - LEGO Mindstorms Software NXT-G - NXT-Lehrerhandbuch - durchgängiges Stammpartnerprinzip