Im Rahmen eines Schülerpraktikums soll ein “Rennspiel” entwickelt werden. Als Entwicklungsumgebung wird Scratch verwendet. Da Scratch in immer mehr Schulen auch im Unterricht eingesetzt wird, haben die Schüler hier oft schon Vorkenntnisse. Wenn nicht, ist der Einstieg nicht all zu schwer. Diese (Lern-)Ergebnisse soll das Projekt am Ende für den Praktikanten bieten:
- Ein funktionierendes Rennspiel,
- Einführung in grundlegende Programmiertechniken (z. B. Bedingungen, Schleifen, Events, Variablen, Operatoren),
- Unterschied zwischen “klassischen” und “agilen” Projektherangehensweisen,
- Vorstellen seines Projektergebnis und
- Recherche im Internet.
Der Artikel ist für den Betreuer gedacht. Da es “Überraschungen” und “Planänderungen” im Projekt gibt, sollte der Praktikant die Aufgaben nur portionsweise bekommen (Spoilerwarnung). Im Artikel werden keine kaum technische Tipps oder Lösungen gegeben. Bisher haben alle Praktikanten die Lösungen mit etwas theoretischem Austausch mit dem Betreuer und Internetrecherche selbst gefunden. Jeder hatte einen leicht anderen Lösungsansatz – das möchte ich mit einer Musterlösung nicht einschränken.
Stufe 1: Scratch kennenlernen
Abhängig von den Vorkenntnissen des Praktikanten, sollte hier Scratch vorgestellt und erklärt werden. Wenn der Praktikant bereits Erfahrung mit Scratch hat, soll er die Vorstellung übernehmen. So erhält der Betreuer einen Einblick über den Wissenstand des Praktikanten.
Stufe 2: Programmiere ein Autorennspiel
Die Programmieraufgaben “Programmiere ein Autorennspiel” soll bewusst unkonkret gehalten werden. In der Regel fragen die Schüler nicht nach Details oder was tatsächlich gewünscht ist. Dies bietet im Nachgang der Stufe die Möglichkeit, den Praktikanten darauf hinzuweisen, dass es bei einer Aufgabe sehr wichtig ist, die Erwartungshaltung des Auftraggebers möglichst genaue zu kennen.
Intuitiv haben bisher die meisten Praktikanten einen ersten Entwurf des Rennspiels so gestaltet, dass sich ein Auto von links nach rechts über den Bildschirm bewegen lässt. Hier können noch
- ein schönerer Hintergrund,
- ein schöneres Auto,
- eine Ziellinie, die das Spiel beendet und
- ein zweites Auto
- verlangt werden, um den Praktikanten etwas zu fordern und ihm die Möglichkeit zu geben mit Scratch vertraut zu werden.
Stufe 3: Sicht von oben
Nachdem der Praktikant die bisherigen Anforderungen erfolgreich umgesetzt hat, wird es Zeit ihm mitzuteilen, dass eigentlich für das Rennspiel eine Vogelperspektive gewünscht ist. Hier lässt sich ein Exkurs einfügen, welche Vorteile ein agiles Vorgehen, bei komplexen Projekten mit sich häufig ändernden Anforderungen hat. Jedoch ohne zu theoretisch zu werden. Für das weitere Vorgehen, kann sich der Betreuer mit dem Praktikanten auf ein agiles Modell einigen um es in der Praxis zu erproben um diese Anforderungen schrittweise umzusetzen:
- Sicht von oben, ein Bildschirm, Rennstrecke eingezeichnet
- Ein steuerbares Auto
- Rennstreckenbegrenzung nicht passierbar
- Beschleunigung für das Auto (Maximalgeschwindigkeit)
- Eine Ziellinie als Rundenzähler (nur komplette Runden dürfen gezählt werden)
- Ein zweites steuerbares Auto
- Ein selbstfahrendes Auto (nicht auf vorgegebener Strecke)
- Siegbedingung abhängig vom Rundenzähler mit Siegbildschirm
- Sand auf der Fahrbahn (verlangsamt das Fahrzeug)
- Öl auf der Fahrbahn (zufällige Auswirkung auf die Lenkung)
Bei den Kollisionsabfragen (Strecke, Öl, Sand, …) bietet Scratch die Möglichkeit auf das Berühren einer Farbe zu prüfen. Bei älteren Schülern kann auf Vektoren zur vorausschauenden Kollisionsberechnung verwiesen werden (wie muss die Geschwindigkeit/der Bewegungsvektor angepasst werden, damit das Hindernis nicht berührt/geschnitten wird?).
Stufe 4: Präsentation des Arbeitsergebnisses
Zum Abschluss der Arbeit soll der Praktikant seine Ergebnisse und seine Herangehensweise zur Problemlösung präsentieren. In der ersten Runde nur dem Betreuer. So hat dieser die Möglichkeit Rückmeldung zu der Präsentation bezüglich Struktur und Inhalt zu geben. In der zweiten Runde präsentiert der Praktikant die überarbeitete Präsentation vor einer 2-4-köpfigen Gruppe, die nach der Präsentation auch wohlwollend! Fragen zum Inhalt und den Problemlösungsansätzen stellt. Diese Präsentation kann der Praktikant, auch in der Schule halten. Durch die Vorbereitung und Übung, sollte eine gute Note recht sicher sein.