Probleme lösen, Lösungen prüfen
Verfasst von Raimond Reichert
Inhalt
Programmieren ist ein Mittel zum Zweck, um Probleme zu lösen. Die zugrunde liegenden Problemlöseverfahren sind nicht Informatik-spezifisch. Pair Programming und Peer Reviews sind äusserst nützliche Methoden, um die Qualität von Problemlösungen zu steigern.
Ziele
Was sind Testfälle für bestimmte Aufgaben? Wie kann überprüft werden, ob ein endlicher Automat alle relevanten Fälle abdeckt? Wie kann die Korrektheit eines Automaten für eine bestimmte Aufgabe überprüft werden?
Strukturiertes Vorgehen für Problemlösen kennen. Komplexere Aufgaben mit strukturiertem Vorgehen lösen. Gegenseitige Code Reviews durchführen.
Ablauf
1 Lektion | Vorträge | Strukturiertes Vorgehen und Pair Programming |
1 Lektion | Papierübung |
Mittelschwere Aufgabe zu zweit auf Papier lösen Peer Review bzw. gegenseitiges Feedback geben Korrigierte Lösung am PC überprüfen |
1 Lektion | Übung |
Mittelschwere bis schwere Aufgabe wie Pascal-Dreieck oder Pilzschieben Abschluss mit Ausblick in Chaostheorie: Langtons Ameise |
Literatur
R. Reichert, J. Nievergelt, W. Hartmann (2004): Programmieren mit Kara. Ein spielerischer Zugang zur Informatik. 2. erweiterte Auflage. Kapitel 4.
Downloads
Vortrag Programmieren: Strukturiertes Vorgehen | Powerpoint [1 MB] · PDF [309 KB] | |
Vortrag Pair Programming, Peer Reviews | Powerpoint [1 MB] · PDF [795 KB] | |
Musterlösung zu Aufgabe "Kleeblattsuche II": Problemanalyse | PDF [292 KB] | |
Vorlage für Automaten auf Papier: Leere Zustände | Word [39 KB] · PDF [108 KB] | |
Kara herunterladen und starten | JAR [4 MB] |
Links
Probleme strukturiert lösen | |
How to Solve It von George Pólya: Mathematische Probleme schrittweise lösen (Wikipedia) | |
Erklärungen zum Thema Software Review (Wikipedia) |