Übersicht | Praktikum Programmiermethodik SS 2001LernzieleDas Praktikum Programmiermethodik soll einen Einblick in den Softwareentwicklungsprozeß vermitteln. Am Beispiel einer komplexen Problemstellung üben Programmierteams die Umsetzung der einzelnen Phasen Problemanalyse, Softwaredesign, Implementierung und Test. Ziel ist die Erstellung einer lauffähigen, gut dokumentierten Software. Wir wollen Techniken und Werkzeuge vermitteln, die für diese Aufgabe notwendig sind. Dazu gehören beispielsweise Tools zur Verwaltung von Quelltexten und Dokumentationen im Team (z.B. Concurrent Versions System (CVS)), Techniken zur Problemanalyse und zu Softwaredesign (z.B. Unified Modeling Language UML, Design-Patterns wie Model-View-Controller) und Dokumentationswerkzeuge (z.B. javadoc). Das Praktikum soll aber auch einen Einblick in die in Java enthaltenen Bibliotheken zur Oberflächenentwicklung (AWT bzw. Swing), Thread-Programmierung und Kommunikation über Netzwerke (TCP) geben. Aufgabenstellung im ÜberblickFür das Praktikum im Sommersemester 2001 haben wir uns die Entwicklung eines verteilten Spiels als Aufgabe herausgesucht. Grundlage ist das bekannte Gesellschaftsspiel "Cluedo". Ziel des Praktikums ist es, eine netzwerkfähige Computerversion dieses Spiels in Java zu implementieren.
Dafür werden die folgenden Module benötigt:
Jede Gruppe des Praktikums hat die Aufgabe, eines der drei Module zu planen und zu implementieren. Wir stellen das Kommunikationsprotokoll zwischen Client und Server zur Verfügung. Es ist zwingend notwendig, daß alle Implementierungen dieses Protokoll unterstützen. Organisation im ÜberblickGruppen. Eine Praktikumsgruppe besteht aus 6-8 Studierenden. Sie wird von einem Tutor/einer Tutorin betreut. Die Gruppen treffen sich wöchentlich mit ihrem Tutor. Die Treffen dienen dazu, Fragen zu klären und die Zusammenarbeit der Gruppenmitglieder zu koordinieren. Bei diesen Treffen müssen 3-4 Gruppenmitglieder anwesend sein. Metagruppen. Zusätzlich sind Gruppen zu Metagruppen zusammengefaßt. In jeder Metagruppe gibt es Gruppen, die Server, Clients und Robots entwickeln. Die Metagruppen haben den Zweck, Tests zwischen Client-, Server- und Robotentwicklern zu ermöglichen. Zusätzlich kann Funktionalität identifiziert werden, die in verschiedenen Modulen benötigt wird. So benötigen sowohl Client als auch Robot die gleiche Kommunikationsfunktionalität. Eine Metagruppe wird jeweils von genau einem Tutor/einer Tutorin betreut. Die Koordination innerhalb der Metagruppe wird durch den Tutor organisiert. Abgaben. In regelmäßigen Abständen finden Abgaben statt. Zu diesen Terminen muß jede Gruppe bestimmte Dokumente und Implementierungen angefertigt haben. Die Ergebnisse werden jeweils den Tutoren vorgestellt, dabei besteht Anwesenheitspflicht für alle Gruppenmitglieder. Kolloquium. Am Ende des Semester findet für jede Gruppe ein Kolloquium statt. Hier präsentiert die Gruppe die Ergebnisse des Praktikums vor dem jeweiligen Tutor und Lehrstuhlmitarbeitern. Es besteht Anwesenheitspflicht für die gesamte Gruppe. Jedes Gruppenmitglied muß bei der Präsentation mitwirken und Fragen beantworten können. Mailingliste. Alle
Praktikumsteilnehmer sollten sich auf unserer Mailingliste
Last modified: Thu Apr 19 14:55:48 CEST 2001 |