Softwareprojekt e-fish
Personaleinsatzplaner |
GK - 121 |
[Home
| Gymn. Oberstufe |
Informatik |
Unterrichtsmaterialien |
index] |
1. Informatische Ziele 2. Pädagogische Ziele 3. Die Kursteilnehmer 4. Projektverlauf 4.1 Systemanalyse 4.2 Anforderungsdefinition 4.3 Entwurf 4.4 Implementation 5. Dokumentation online im Web 6. Das Produkt 7. Eingesetzte Werkzeuge und Ressourcen 1. Informatische ZieleDas Halbjahr 13/1 ist in Gänze dem Softwareprojekt vorbehalten. Im Projektsemester sollen die Methoden und Probleme des Software Engineering an Beispielen mit realitätsnaher Komplexität vertieft werden. Die Komplexität liegt in drei Ebenen:
Die informatischen Ziele sind
Als Softwareprojekte kommen drei Möglichkeiten in Frage: a) Neues ProjektthemaAlle Phasen von der Analyse bis zum fertigen Produkt werden erstmalig
durchlaufen. b) Fortführung eines früheren ProjektesHier kann es sich um den Ausbau oder die Vervollständigung eines bereits angefangenen oder auch fertigen Systems handeln. c) Wartung eines fertigen SoftwareproduktesDieser als auch der vorige Fall sind in der Praxis wohl die häufigsten,
wenn man an die scheinbar endlose Folge von Versionen denkt, mit der der
Markt überschüttet wird. Beide Projektformen finden bei Schülern wenig
Gegenliebe, weil man ja nicht Eigenes vorzeigen kann. Obwohl die Phasen des
Software Life Cycles auch hier abgearbeitet werden können, geht der
schöpferische Akt deutlich unter. Außerdem weiß jeder Praktiker, dass es
häufig einfacher ist, ein System neu zu konzipieren als sich in ein schlecht
dokumentiertes und vielleicht chaotisch zusammengestricktes System
einzudenken. Voraussetzung für diese Projekttypen sind das Vorliegen einer
präzisen und hinreichenden Dokumentation und eine Softwarearchitektur nach
dem Datenabstraktionsprinzip. Nur dann können Module sauber ausgewechselt,
ergänzt und in das System eingehängt werden. Ein ablauforientierter Entwurf
dürfte in der Regel nicht zu entwirren sein. 2. Pädagogische Ziele
Das Softwareprojekt im Informatikunterricht bietet eine nahezu einmalige
Gelegenheit, über einen langen Zeitraum an einem Thema zu arbeiten,
traditionelle Unterrichtsformen "außer Betrieb" zu setzen und dafür Lern-
und Arbeitsformen aufzunehmen, die sich aus der Aufgabenstellung ergeben und
nicht über künstliche Lernarrangements oder angeordnete Projekttage als
methodische Volten inszeniert werden müssen. Hier kann handlungsorientierter
Unterricht par excellence stattfinden. Es lohnt sich für alle Beteiligten,
gemeinsam durch das Spannungsfeld von Motivation und Frustration zu gehen,
ohne exakt vorherbestimmen zu können, wo die Probleme und ihre Lösungen
auftauchen werden. Obwohl am Ende immer ein fertiges Produkt stehen sollte,
hat es bisher noch nie tiefe Enttäuschungen gegeben, wenn einmal das
gemeinsame Ziel am Ende doch nicht ganz erreicht wurde, weil das Produkt aus
Zeitgründen in der projektierten Version nicht fertig codiert wurde. Um die Teamleistung herauszustellen, wurden mit den Schülern gemeinsam die Ziele abgesteckt und vereinbart, dass die Teamleistung zur Hälfte in die AT-Semesternote eingeht. Der erreichte Endstand wurde mit gut bewertet.
3. Die KursteilnehmerSchüler des Grundkurses Informatik, die mit einer Ausnahme eher ein distanziertes Interesse an Informatik haben, aber im allgemeinen gut mitarbeiten. Bis auf einen hoch motivierten Schüler mit weitgehenden Kenntnissen in C und Pascal sind die reinen Programmierfähigkeiten eher schwach. Die Kenntnisse in Modellierungsfragen sind durchweg gut. Die Mitarbeit war insgesamt gut und besser, vermutlich deshalb, weil hier zur Unterrichtszeit das übliche Lehrer-Schüler-Scenario für ein halbes Jahr außer Kraft gesetzt war und die Atmosphäre durch eine völlig schul-untypische Arbeitssituation ersetzt ist. 4. ProjektverlaufAlle Phasen des Software Life Cycle wurden mit einem vertiefenden Referat eingeleitet oder begleitet, so dass immer ein Bezug zwischen Theorie und praktischer Umsetzung erzielt wurde. 4.1 SystemanalyseWie oben schon erwähnt brachte ein engagierter Schüler reale Planungsunterlagen mit, anhand derer die Analyse zügig erstellt werden konnte. Dabei zeigte sich, dass das dort bisher verwendete Planungsmaterial unzureichend war und einer verbesserten Darstellung bedurfte. Positiv wirkt sich auch aus, dass Schüler eines Wirtschaftgymnasiums Kenntnisse in Betriebswirtschaft haben. 4.2 EntwurfEs wurde in diesem Halbjahr OOA- und OOD-Phase erstmalig strikt getrennt und zunächst das reine OOA-Modell erstellt, was zu einer deutlichen Verbesserung des Verständnisses des Systems beigetragen hat. Erst danach wurden die notwendigen Erweiterungen des OOD hinzugefügt. Deshalb und aufgrund der vorhandenen guten Kenntnisse gestalteten
sich OOA- und OOD-Phase ohne große Umwege. Hierzu trug auch der Einsatz
eines neuen interaktiven Entwurfstools (GO) bei. Das OOD-Modell wurde bei
den Methoden nicht ganz vollständig ausgearbeitet, um frühzeitiger in die
Implementierung zu gehen. 4.3 ImplementationWie immer bei einem guten OOD-Entwurf zeigten sich bei der Implementation keine besonderen Schwierigkeiten. Insofern bestätigte die Implementation die Qualität des Entwurfs. Das gesamte Projekt besteht überwiegend aus ineinander geschachtelten Listen. Ohne die Vererbungsmöglichkeiten und das Vorliegen von abstrakten statischen und dynamischen Listen aus eigener Bibliothek wäre es kaum zu realisieren. Bis zum Semesterende wurde die Version 1 von den Schülern fertig
gestellt. Hier zeigte sich wieder deutlich die mangelnde Programmierpraxis,
auf die wegen der Zeitknappheit verzichtet werden muss. 5. Dokumentation online im WebBisher wurden Softwareprojekte in herkömmlicher Weise dokumentiert; d.h. alle erforderlichen Dokumente wurden mit einer Textverarbeitung oder Editor geschrieben, ausgedruckt und in einem allgemein zugänglichen Leitzordner abgelegt. In diesem Semester wurde erstmalig auf jede papierne Dokumentation verzichtet. Alle Texte und Grafiken wurden in HTML geschrieben und ins LAN/WWW gestellt. Protokolle und andere Dokumente wurden simultan erstellt und per Mailinglisten (und forwards auf Privatadressen) an die Teilnehmer versandt. Da die überwiegende Mehrheit privaten Internetzugang besitzt, konnte auch von zu Hause auf alle projektrelevanten Dokumente und Arbeitsmaterialien über das Web zugegriffen werden. Diese Form der Projektorganisation hat sich in jeder Hinsicht bewährt und wurde von allen geschätzt. Da die Erstellung und Einbindung aller Webseiten einen sehr großen Arbeitsaufwand verursacht, hat die Aufgabe des Projektsekretärs der Lehrer übernommen. 6. Das ProduktDas Ergebnis liegt in zwei Versionen vor, einer Schüler- und Lehrerversion. 7. Eingesetzte Werkzeuge und RessourcenFrontpage 2000, Delphi 4, GO (Generating Objects) UML-Designer , UML Organisationsform: Chefprogrammierer-Team Modulbibliothek |