is-Logo

Einführung in die objektorientierte Modellierung

S. Spolwig
Chr. Steinbrucker

[Home | Unterrichtssequenzen]
Startseite

FIAT LUX !
Taschenlampen und ihre softwaretechnische Abbildung

1. Worum es geht und wie man vorgehen kann

In seiner Dissertation hat M. Thomas rund 150 Skripte zu Veranstaltungen der Fachwissenschaft Informatik untersucht. Er schreibt, daß in 83% aller Skripte das Wort "Modell" in irgendeiner Form durchschnittlich auf jeder 2.-3. Seite vorkommt. Er schließt daraus, daß schon aus der Auftrittshäufigkeit "dem Modell offensichtlich ein zentraler Stellenwert innerhalb der Fachwissenschaft zuzuordnen" ist1). Dieser Stellenwert ist inzwischen in vielen Rahmenlehrplänen verankert worden. Liest man die Synopse zur informatischen Modellbildung bei Thomas weiter, kann einem schwindlig werden ob der verwirrenden Vielfalt von rund 50 Modellbegriffen und Modellierungstechniken. Keinesfalls kann es Aufgabe des Informatikunterrichts sein, unter Modellierung das Abklappern oder Trainieren z. B. aller UML-Diagramme für eine Aufgabe zu verstehen.

Nach wie vor ist die übergeordnete Kompetenz das Problemlösen. So wie Modellbildung ohne Problemlösen nicht stattfinden sollte, so sollte auch Problemlösen ohne Modellbildung im Informatikunterricht nicht vorkommen. Wie immer ist auch hier die klassische Werkzeugwahl angesagt. Wer ein Zahnrädchen in eine Uhr einsetzen will, sollte wissen, ob er dazu eine Kneifzange, eine Pinzette oder einen Hammer braucht. Und er braucht Übung dazu - viel Übung. Auf dem Weg dahin soll dieses Beispiel helfen, das die objektorientierte Modellierung zum Thema hat.

Bertrand Meyer, einer der Väter der objektorientierten Programmierung, hat einmal sinngemäß gesagt, daß es keiner akademischen Diskussion bedürfe, um Objekte zu finden, sie lägen uns zu Füßen und brauchten nur aufgehoben zu werden. Da ist viel Wahres dran, aber so leicht es scheint, häufig genug muß der Software-Entwickler Entscheidungen treffen, ob dieses oder jenes Objekt überhaupt gebraucht wird und wie es für das Programm gestaltet sein muß. Diese Entwicklung und Entscheidungen stellen einen Prozeß der Abstraktion dar, das Hauptgeschäft der Softwareentwicklung, welches mit dem Begriff der Modellierung beschrieben wird. Zeitgemäßer Informatikunterricht stellt diese Kompetenzen in den Mittelpunkt.

Das Projekt Taschenlampe

Es soll ein Programm erstellt werden, das eine traditionelle Taschenlampe mit ihren Funktionen simuliert und auf dem Bildschirm darstellt2).

An diesem Beispiel sollen in aufeinanderfolgenden Versionen mögliche Varianten der Modellierung gezeigt werden als ein Entwicklungsprozeß der von einer hochgradigen Vereinfachung (Abstraktion) zu einem immer weiter verbesserten, realitätsnäheren Modell führt. Für eine derartige Simulation werden vereinfachende Annahmen getroffen, es gilt aber immer, daß das Modell isomorph bleibt und nicht bis zur Unkenntlichkeit reduziert wird.

Bei dem Projekt wurde darauf geachtet, daß zunächst eine tragfähige Struktur gefunden wird, die durchgängig beibehalten werden kann. Weitere Änderungen oder Verbesserungen der Algorithmen können so auf leicht zu lokalisierende Weise in den  jeweiligen Klassen vorgenommen werden, teilweise dergestalt, daß andere Klassen gar nicht verändert werden müssen. Darin liegt einer der großen Vorteile objektorientierter Modellierung. Als Entwicklungsmodell wurde das evolutionäre Prototyping gewählt, das sich im Unterricht bewährt hat und für kleinere (Schul)Projekte ideal ist.

- Als Einführung in die Programmierung

Das Projekt ist so angelegt, daß es als Einführung in die Programmierung genutzt werden kann. Dann beginnt man mit der Version 1.0 und geht bis zum Ende oder so weit, wie es nötig scheint. Dabei wird der Lehrer wohl richtigen Unterricht daraus machen müssen. Das Material ist durch ergänzende und vertiefende Materialien angereichert und kann daher auch zum selbstorganisierten Lernen genutzt werden.

Die Lerneinheit enthält (bis auf Polymorphie) alle wichtigen Elemente der OOP, Datentypen und Algorithmen soweit sie hier benötigt werden. In der Version 1 werden Hinweise zur Programmierung mit DELPHI gegeben, in den weiteren wird darauf verzichtet. Der gesamte Code ist im Anhang enthalten.

- Zur Vertiefung oder als kleines Softwareprojekt

 Nach einer Einführung und Vorkenntnissen in OOP kann man bei V. 1.2 anfangen und weiter gehen.

- Als Softwarepraktikum

Für ein fortgeschrittenes fächerübergreifendes Softwareprojekt wird die Aufgabe gestellt, anhand der Anforderungsdefinition ein Programm auf dem Niveau der Version 1.3.2 selbständig zu entwickeln und zu implementieren.

--------------

1) Thomas, M.: Informatische Modellbildung. Modellieren von Modellen als ein zentrales Element der Informatik für den
    allgemeinbildenden Schulunterricht. Dissertationsschrift, S. 48
    http://ddi.uni-muenster.de/Personen/marco/Informatische_Modellbildung_Thomas_2002.pdf, S. 48

2) Das Projekt basiert auf der Unterrichtssequenz von
    Steinbrucker, Chr.: Objektorientierung im Anfangsunterricht!!! - Simulation einer Taschenlampe mit Delphi.
    IN: LOG IN, Nr. 131/132 (2004).

 

©  05. Oktober 2008    Siegfried Spolwig

page_top next page