summaryrefslogtreecommitdiff
path: root/doc/hamster/A5 - Doku: gs-Herbert und Robbi - Kapitel 2
diff options
context:
space:
mode:
Diffstat (limited to 'doc/hamster/A5 - Doku: gs-Herbert und Robbi - Kapitel 2')
-rw-r--r--doc/hamster/A5 - Doku: gs-Herbert und Robbi - Kapitel 2389
1 files changed, 389 insertions, 0 deletions
diff --git a/doc/hamster/A5 - Doku: gs-Herbert und Robbi - Kapitel 2 b/doc/hamster/A5 - Doku: gs-Herbert und Robbi - Kapitel 2
new file mode 100644
index 0000000..52526d6
--- /dev/null
+++ b/doc/hamster/A5 - Doku: gs-Herbert und Robbi - Kapitel 2
@@ -0,0 +1,389 @@
+#limit (11.0)##pagelength (16.5)##block#
+#start (2.0,0.0)#
+#page (6)#
+#headodd#
+#center#gs-Herbert und Robbi#right#%
+
+#end#
+#headeven#
+%#center#gs-Herbert und Robbi
+
+#end#
+#center#2
+
+#center#Allgemeines
+#center#zum
+#center#Hamster-/Robotermodell
+
+
+2.1 Entstehung
+
+ Das Hamster - Modell wurde in der Gesellschaft für
+Mathematik und Datenverarbeitung (GMD), einer Großfor­
+schungseinrichtung des Bundes und des Landes Nord­
+rhein-Westfalen, von Lothar Oppor in Anlehnung an das
+Modell 'Karel the Robot' von Richard E. Pattis (Stanford
+University, USA) entwickelt und zunächst innerhalb der
+GMD und schon bald im Schulbereich eingesetzt.
+ Wolfgang Weber, Lehrer an der Gesamtschule Leopolds­
+höhe bei Bielefeld, entwickelte in Zusammenhang mit sei­
+ner Arbeit am Landesinstitut für Schule und Weiterbil­
+dung in Soest dieses Modell seit 1984 weiter. Sein Ziel war
+es, das Modell um solche Komponenten zu erweitern, daß es
+auch für Schüler der Sekundarstufe I im Anfangsunter­
+richt eingesetzt werden kann. Besondere Bedeutung kam
+dabei der Entwicklung einer komfortablen, einfach zu be­
+dienenden Benutzerschnittstelle zu, die es dem Anfänger
+ermöglicht, sich von Beginn an mit der eigentlichen Pro­
+blemstellung auseinanderzusetzen, ohne von Betriebssy­
+stem oder gar Hardware-Eigenheiten abgelenkt zu werden.
+ Mit dem vorliegenden Programm #on("b")#gs-Herbert und Robbi#off("b")#,
+das in die komfortable, menuorientierte Benutzer­
+schnittstelle #on("b")#gs-DIALOG#off("b")# eingebettet ist, dürfte diese Ar­
+beit vorerst zu einem Abschluß gebracht sein. Mit diesem
+Programm liegt nun eine Modellumgebung vor, die den
+gestellten Anforderungen gerecht wird.
+
+
+2.2 Kurzbeschreibung des Hamster-/Roboter-Modells
+
+ Das Hamster- und das Roboter - Modell sind analog
+aufgebaut und in Art und Umfang der Befehle identisch.
+Im ersten Modell kann 'Herbert der Hamster', im zweiten
+Modell 'Robbi der Roboter' auf dem Bildschirm durch vier
+sogenannte Basisbefehle gesteuert werden - 'Herbert' in
+einer 'Landschaft', 'Robbi' auf einem 'Arbeitsfeld' - beides
+Ebenen, die aus 23 x 40 Kacheln bestehen.
+ Auf dieser Ebene können sich noch Hindernisse und
+'Körner' (für Herbert) oder 'Werkstücke' (für Robbi) befin­
+den. Die Hindernisse stellen auf dem Bildschirm Barrieren
+dar, die umgangen werden müssen. Die Körner bzw. Werk­
+stücke können von Herbert in seinen 'Backentaschen' bzw.
+von Robbi in seinem 'Behälter' aufgenommen oder daraus
+(wieder) abgelegt werden.
+
+
+2.2.1 Befehle und Tests
+
+ Für die Steuerung von Herbert bzw.Robbi stehen vier
+Basisbefehle zur Verfügung (die in beiden Modellvarian­
+ten gleich sind):
+
+#on("u")#vor#off("u")#
+ Gehe eine Kachel (einen Schritt) in Laufrichtung vor.
+
+#on("u")#links um#off("u")#
+ Drehe Dich, wo Du stehst, um 90 Grad nach links.
+
+#on("u")#nimm#off("u")#
+ Nimm da, wo Du stehst, ein Korn/Werkstück auf.
+
+#on("u")#gib#off("u")#
+ Lege da, wo Du stehst, aus den Backentaschen/dem Be­
+ hälter ein Korn/Werkstück ab.
+
+ Da nur dort ein Korn/Werkstück aufgenommen werden
+kann, wo auch eines vorhanden ist oder nur vorgegangen
+werden kann, wenn die nächste Kachel noch zur Land­
+schaft/zum Arbeitsfeld gehört und nicht blockiert ist,
+sind die Befehle 'nimm', 'gib' und 'vor' nicht uneinge­
+schränkt ausführbar. Aus diesem Grunde sind noch die
+folgenden #on("u")#Basistests#off("u")# definiert:
+
+#on("u")#vorn frei#off("u")#
+ testet, ob die vor ihm liegende Kachel frei ist.
+
+#on("u")#korn da / werkstueck da#off("u")#
+ testet, ob auf der Kachel, auf der er steht, mindestens
+ ein Korn/Werkstück liegt.
+
+#on("u")#backen leer /behaelter leer#off("u")#
+ testet, ob kein Korn/Werkstück in den Backentaschen/im
+ Behälter ist.
+
+ Darüberhinaus können Sie bei der Installation des
+Systems noch festlegen, ob die folgenden #on("u")#Zusatztests#off("u")# zur
+Verfügung stehen sollen oder nicht:
+
+#on("u")#links frei#off("u")#
+ testet, ob die Kachel links neben ihm frei ist.
+
+#on("u")#rechts frei#off("u")#
+ testet, ob die Kachel rechts neben ihm frei ist.
+
+#on("u")#hinten frei#off("u")#
+ testet, ob die Kachel hinter ihm frei ist.
+
+#on("u")#korn vorn / werkstueck vorn#off("u")#
+ testet, ob auf der Kachel vor ihm mindestens ein Korn/
+ Werkstück liegt.
+
+#on("u")#korn links / werkstueck links#off("u")#
+ testet, ob auf der Kachel links neben ihm mindestens
+ ein Korn/ Werkstück liegt.
+
+#on("u")#korn rechts / werkstueck rechts#off("u")#
+ testet, ob auf der Kachel rechts neben ihm mindestens
+ ein Korn/Werkstück liegt
+
+#on("u")#korn hinten / werkstueck hinten#off("u")#
+ testet, ob auf der Kachel hinter ihm mindestens ein
+ Korn/Werkstück liegt.
+
+ Es gibt #on("u")#keinen#off("u")# Testbefehl, mit dem überprüft werden
+kann, ob der Rand der Ebene erreicht ist.
+
+
+2.2.2 Landschaftsgestaltung/Arbeitsfeldgestaltung
+
+ Der Benutzer kann selber Landschaften/Arbeitsfelder
+erstellen, auf denen Herbert bzw. Robbi bewegt werden
+kann. Es können aber auch fertige Ebenen verändert wer­
+den.
+ Eine Landschaft/ein Arbeitsfeld ist eine Ebene aus
+23 x 40 Kacheln. Eine Kachel kann auf dem Bildschirm so
+aussehen:
+
+ Leere Kachel : Blank und Punkt (" .")
+ Kornkachel : Blank und kleines o (" o")
+ Hindernis : zwei Nummernzeichen ("\#\#")
+
+ In dieser Landschaft steht auf einer der Kacheln Her­
+bert bzw. Robbi:
+
+ "A" mit Blickrichtung nach oben
+ ">" mit Blickrichtung nach rechts
+ "V" mit Blickrichtung nach unten
+ "<" mit Blickrichtung nach links
+
+
+#on("u")#Beispiel:#off("u")# Ausschnitt aus einer Landschaft:
+
+#on("b")#
+ . . . . . . . . . . . . . . . . . . . .
+ . . o o o o o o o o o o . . . . . . . .
+ . . o . . . . . . . . o . . . . . . . .
+ . . o . . . . . . . . o . . . . . . . .
+ . o o .\#\#\#\#\#\#\#\#\#\#\#\# . o . . . . . . . .
+ . o . .\#\# .V. . .\#\# . o o o o o o o . .
+ . o . .\#\# . o . .\#\# . . . . . . . o . .
+ . o o o o o o . .\#\# . . . o o o o o . .
+ . . . .\#\# . . . .\#\# . . . o . . . . . .
+ . . . .\#\# . . . .\#\# . . . o o o o . . .
+ . . . .\#\#\#\#\#\#\#\#\#\#\#\# . . . . . . o o . .
+ . . . . . . . . . . . . . . . . . . . .
+
+Während der Landschaftsgestaltung wirken folgende
+Tasten:
+
+<h> halt, beende die Landschafts-/Arbeitsfeld­
+ gestaltung
+<\#> setze ein Hindernis und gehe ein Feld
+ weiter
+<LEERTASTE> leere das Feld und gehe ein Feld weiter
+<g> lege hier ein Korn/Werkstück ab
+<n> nimm ein Korn/Werkstück auf (falls hier
+ welche liegen)
+<z> zeige, wie viele Körner/Werkstücke hier
+ liegen
+<k> ersetze diese Landschaft/diese Arbeitsfeld
+ durch die Kopie einer bereits vorhandenen
+ anderen Landschaft/eines bereits vorhan­
+ denen anderen Arbeitsfeldes
+
+- Durch Drücken der Fragezeichentaste (<?>) während der
+ Landschafts-/Arbeitsfeldgestaltung, können Sie sich
+ diese Hinweise auch auf dem Bildschirm einblenden
+ lassen.
+
+- Mit den Pfeiltasten kann Herbert/Robbi bewegt und
+ seine Richtung verändert werden.
+
+- Die Landschaftsgestaltung wird durch Tippen der
+ Taste <h> abgeschlossen. Die Position und die Blick­
+ richtung, die Herbert bzw. Robbi zu diesem Zeitpunkt
+ innehat, wird als Startposition vermerkt.
+
+- Auf dem Bildschirm wird dann noch die Zahl der Kör­
+ ner/Werkstücke erfragt, die Herbert bzw.Robbi zu Be­
+ ginn des Laufes in seinen Backentaschen/in seinem
+ Behälter haben soll. Hier muß eine Zahl zwischen 0 und
+ 32767 eingegeben werden.
+
+
+2.3 Einsatzbereich
+
+ Das Hamster-/Roboter-Modell soll dazu dienen, die
+Grundelemente des algorithmischen Problemlösens (Folge,
+Auswahl, Wiederholung etc.) #on("u")#einfach#off("u")# und #on("u")#spielerisch#off("u")# zu
+erlernen und sie in der Programmiersprache ELAN zu co­
+dieren. In der Bildschirmdarstellung erinnert das Ham­
+ster-/Roboter-Modell zunächst an ein einfaches Tele­
+spiel, eine Anwendung des Computers, die sicher bekannt
+ist. Darüberhinaus lassen sich leicht Bezüge zur Steue­
+rung von Industrierobotern herstellen.
+ Durch die komfortable Benutzerschnittstelle wird dem
+Anwender in der Anfangsphase eine Auseinandersetzung
+mit dem Betriebssystem "erspart". Die Arbeit mit dem Mo­
+dell setzt #on("u")#keine Vorerfahrungen und Kenntnisse#off("u")# voraus.
+Das Modell ist schon nach weniger als einer halben Stun­
+de für den Anfänger überschaubar. Er kann dann schon
+Aufgaben lösen, sich selbst Aufgaben stellen bzw. die
+gegebene Aufgabenstellung erweitern.
+ Das Modell zielt auf die Aktivierung des Lernenden
+und die Mitarbeit in allen Punkten: Aufgabenstellung,
+Lösungsgestaltung, Lösungstest und -verifizierung. Der
+Lernfortschritt kann in stärkerem Maße als im "herkömm­
+lichen Programmierunterricht" von den Lernenden selbst
+bestimmt werden. Der spielerische Anfang, die Veran­
+schaulichung der Programmausführung auf dem Bild­
+schirm, die Möglichkeit Fehler direkt und eigenständig
+zu erkennen, fördern die Motivation, die Kreativität und
+die Fehler- und Frustrationstoleranz.
+
+
+2.4 Hinweise für den Einsatz in der Ausbildung
+
+ Das Hamster-/Roboter-Modell ist angelegt für "Pro­
+grammieren" mit Bleistift und (kariertem) Papier. Für die
+Überlegungen, die anzustellen sind, ist der Computer
+selbst in der Anfangsphase #on("u")#nicht notwendig#off("u")#. Man kann
+Kachel-Landschaften / Kachel-Arbeitsfelder aufzeich­
+nen und vorgegebene oder sich selbst gestellte Aufgaben
+lösen. Die erstellten Programme werden ausgeführt, indem
+man z.B. eine kleine Büroklammer als Hamster/Roboter auf
+dem Papier oder der Folie dem Programm entsprechend ver­
+schiebt. Heftzwecken oder Pfennigstücke können als Kör­
+ner/ Werkstücke und Streichholzstücke als Hindernisse
+dienen.
+ #on("b")#gs-Herbert und Robbi#off("b")# verfügt auch über die Möglich­
+keit, den Hamster/Roboter interaktiv zu steuern. Auch
+hierüber ist ein Einstieg in den Umgang mit dem Modell
+möglich. Bei der interaktiven Steuerung kann der Ham­
+ster/Roboter von Hand durch Tastendruck auf dem Bild­
+schirm bewegt werden. Dabei können nur die vier Basisbe­
+fehle ('vor', 'links um', 'nimm' und 'gib') verwendet werden.
+Während der Steuerung von Hand wird ein "Protokoll" der
+ausgeführten Befehle angelegt - und zwar gleich in Form
+eines ablauffähigen ELAN-Programms. Dadurch hat der
+Benutzer einerseits die Möglichkeit, die Anweisungen, die
+durch Tastendruck gegeben wurden, zu kontrollieren,
+andererseits kann anschließend die Folge der eingegebe­
+nen Anweisungen auch als Programm vom Computer ausge­
+führt werden ('Teach in').
+
+ Nach diesem "ersten Kennenlernen des Modells" sollte
+man dann aber bei Problemstellungen, die ein systemati­
+sches Vorgehen erfordern, die Arbeit mit dem Computer
+unterbrechen und die Algorithmen jeweils auf dem Papier
+entwerfen. Auf die Ausführung der erstellten Anwei­
+sungsfolgen von Hand auf Papier/Folie sollte man #on("u")#auf
+keinen Fall gänzlich verzichten#off("u")# - auch, um den Lernen­
+den zu verdeutlichen, daß die Befehlsfolgen sowohl vom
+"Prozessor Mensch" als auch vom "Prozessor Computer"
+ausgeführt werden können; der Computer also nur ein
+Hilfswerkzeug ist.
+ Erst wenn das Bilden eigener benannter Anweisungen
+(Refinements/Prozeduren) den Lernenden hinreichend ver­
+traut ist, ist es sinnvoll, umfangreichere Problemstel­
+lungen anzugehen. Da dann auch die Programmausführung
+von Hand mühsam wird und ihren Reiz verliert, sollte man
+(wieder) zum Computermodell übergehen, um mit dessen Hil­
+fe die Programme auszuführen und zu überprüfen.
+ Nachdem die Lernenden die Basisbefehle sicher beherr­
+schen und eigene benannte Anweisungen unter Verwendung
+der Basisbefehle konstruieren können, können dann nach
+und nach die vorgegebenen Tests und damit auch die ande­
+ren Elemente der Algorithmenentwicklung (Auswahl, Wie­
+derholung etc.) in den Unterricht eingebracht werden.
+ Als notwendig hat es sich erwiesen, von Anfang an auf
+eine saubere Strukturierung und Modularisierung der
+Algorithmen zu achten. Gerade Lernende mit "Program­
+miererfahrung" neigen dazu, möglichst "kurze" Program­
+me schreiben zu wollen. Besonderen Wert sollten Sie auf
+eine treffende Namensgebung der einzelnen Module legen,
+selbst wenn die Lernenden das oft als "lästige Schreibar­
+beit" empfinden. Aufgaben können ein Einzel-, Partner-
+und Gruppenarbeit bearbeitet werden. Dabei hat sich die
+Arbeit in kleinen Gruppen als besonders effektiv erwie­
+sen. Die Lernenden sind untereinander zumeist sehr kri­
+tisch und fordern sich gegenseitig auf, "lesbare" Pro­
+gramme zu schreiben. Ein Austausch der Programme unter
+den Gruppen kann diesen Anspruch noch zusätzlich för­
+dern.
+
+
+2.5 Aufgabenmaterial
+
+ Zum Hamster-Roboter-Modell sind inzwischen eine Rei­
+he von Aufgaben / Aufgabensystemen enstanden. An dieser
+Stelle soll auf zwei Veröffentlichungen hingewiesen
+werden, in denen Sie solche Aufgaben / Aufgabensysteme
+finden können:
+
+Weber, Wolfgang et al., Das Hamster-/Roboter-Modell,
+ in: Landesinstitut für Schule und Weiterbildung
+ (Hrsg.), Materialien zur Lehrerfortbildung in
+ Nordrhein-Westfalen, Heft 1, Neue Technologien
+ - Informations- und Kommunikationstechnologi­
+ sche Inhalte im Wahlpflichtunterricht der Klas­
+ sen 9/10, Soest, 1986
+
+Ambros, Wolfgang, Der Hamster, Programmieren lernen in
+ einer Modellwelt, J.B. Metzlersche Verlagsbuch­
+ handlung, Stuttgart, 1987
+
+
+2.6 Erfahrungen mit dem Hamster-/Roboter-Modell
+
+ Seit 1982 wird das Hamster - Modell in der GMD zur
+Programmierausbildung eingesetzt. Die Ergebnisse sind
+hervorragend: Die Teilnehmer bewältigen in derselben
+Zeit erheblich mehr Inhalte als früher ohne Modell. Moti­
+vation, Selbständigkeit und Initiative prägen sich er­
+heblich früher und merklich stärker aus. Außerdem sind
+die am Modell erworbenen Kenntnisse tiefer und sicherer.
+ Seit 1983 wird das Hamster - Modell auch in mehreren
+Schulen mit sehr gutem Erfolg eingesetzt. Der Erfolg ist
+am größten im Blockunterricht (3 - 5 Tage z.B. in Projekt­
+wochen, Schullandheimaufenthalten etc.). Aber auch im
+stundenweisen Unterricht wird das Hamster-/Roboter-
+Modell mit gutem Erfolg eingesetzt.
+ Beide Zugänge, der Einstieg über das Arbeiten mit
+Bleistift und Papier und der Einstieg über die interakti­
+ve Steuerung des Hamsters/Roboters, haben sich als prak­
+tikabel erwiesen. Der Zugang über die interaktive Steue­
+rung bietet den Vorteil, die zumeist sehr hohe Motivation
+der Lernenden, "endlich mit dem Computer arbeiten zu
+können", auszunutzen. Sie lernen dabei das Computermo­
+dell auf einfache Weise kennen und haben einen ersten
+Umgang mit Bildschirm und Tastatur. Kleine, einfache
+Problemstellungen können von ihnen durch die interak­
+tive Steuerung schnell und sicher bearbeitet werden.
+"Nebenbei" lernen sie, neben der Wirkung der Basisbefeh­
+le, durch das mitgeführte Protokoll auch die Codierung
+in der Programmiersprache kennen. Allerdings verliert
+die interaktive Steuerung relativ schnell ihren Reiz,
+wenn die Lernenden erkennen, daß nur sehr einfache Pro­
+blemstellungen damit bearbeitet werden können. Dann
+sollte aber zur Arbeit mit Papier und Bleistift überge­
+gangen werden.
+ Die Entscheidung, ganz auf das Arbeiten mit Papier
+und Bleistift zu verzichten, hat sich als sehr nachteilig
+erwiesen. Die Lernenden "hacken" die Programme in die
+Maschine und handeln eher nach dem "Prinzip von Versuch
+und Irrtum" als nach sorgfältigen Überlegungen. Bei
+komplexeren Problemstellungen scheitern diese Teilneh­
+mer zumeist.
+ Erfahrungsgemäß nimmt nach einiger Zeit der Wunsch
+stark zu, eigene Ausgaben auf dem Bildschirm zu erzeugen
+und andere Problembereiche zu bearbeiten (zum "richtigen
+Programmieren" überzugehen). Sie sollten diesen Schritt
+dann auch nicht zu lange hinauszögern und das Modell
+auf keinen Fall überstrapazieren. Da das Modell selbst
+und auch der Umgang damit sehr einfach ist, besteht auch
+später die Möglichkeit, zum Modell zurückzukehren, um
+hieran weitere Elemente der Algorithmenentwicklung in
+einfacher und anschaulicher Form einzuführen.
+
+