Veranstaltung: | 08117 (Fortgeschrittenenpraktikum) |
Vorbesprechung: | keine |
Termin: | Dienstag 17 ct bzw. nach Vereinbarung (Rechnerübung nach Zuteilung) |
Beginn: | 16. April 2002 |
Ort: | Ü2 (für die Besprechungen) |
Dozent: | Karsten Stahl und Martin Steffen |
Abstract:
Softwareentwicklung wie überhaupt die Entwicklung größerer technischer Systeme ist in erster Linie ein kollaboratives Unterfangen. Neben die Beherrschung des unverzichtbaren Handwerkszeug jeden Programmierers wie Kenntnisse der verschiedene grundlegenden Datenstrukturen und Algorithmen, Beherrschung der Programmiersprache, Übersicht über verschiedene Programmierparadigmen, und ähnliches, treten in der Praxis demnach weitere Aspekte der Softwareentwicklung in den Vordergund:Entsprechend dem modularen Programmierstil zerfällt die Programmieraufgabe in
- Definition, Konzeption und Entwurf einer größeren Programmieraufgabe.
- Strukturierung und Gliederung in einzelne Teile, Module, Komponenten oder ähnliches.
- Verwendung von vorhandenen Bibliotheken.
- Kooperation in Hinblick auf das gemeinsame Ziel.
Gegenstand des Praktikums wird pro Semester ein Projekt sein, die von Größe und Zeitaufwand her nur im Team gelöst werden kann. Das Projekt wird für jede Veranstaltung aufs neue in Form eines Pflichtenheftes definiert unter den Teilnehmern verteilt, indem die Aufgabe von den Übungsleitern in Module unterteilt und die Schnittstellen zwischen den Gruppen grob festgelegt werden. Anschließend werden die Gruppen an ihren Teilaufgaben arbeiten, wobei die Schnittstellen zu anderen Gruppen zu beachten sind.
- Programmierung der Module, auch als programming-in-the-small bezeichnet und
- Zusammenbau und Verwendung der Module, auch als programming-in-the-large bezeichnet, sowie
- die Verwirklichung beider Konzepte in Teamarbeit bezeichnet man als programming-in-the-many.
Die verwendete Programmiersprache ist i.d.R. Java, wobei möglichst mehrere Bereiche der Programmierung abgedeckt werden sollen, z.B.
- Strukturierungskonzepte wie Klassen und Objekte, Vererbung, Interfaces ...
- Verwendung des Java AWT (abstract windowing toolkit)
- Nebenläufigkeit (threads)
Projekt: Die Beschreibung, das Pflichtenheft und die Dokumentation des diessemestrigen Projektes befinden sich auf einer gesonderten Seite: Sequential Function Charts Modeling Environment Slime
This document was translated from LATEX by HEVEA and HACHA.