Dieses Übungsblatt dient als Vorbereitung für das Programmierprojekt. Neben den technischen Belangen zählt hierzu auch die Arbeit im Team. Es empfiehlt sich, alle untenstehenden Punkte zu bearbeiten. Die Reihenfolge kann frei gewählt werden. Einige Punkte wurden bereits auf vorhergehenden Übungsblättern angesprochen und sind hier nur der Vollständigkeit halber nochmals erwähnt.
Hinweis: Sofern Sie am Projekt teilnehmen wollen und noch keinem Team angehören, sollten Sie sich jetzt um die Bildung eines Teams kümmern und dieses bis zum Anmeldeschluß anmelden.
Da Sie üblicherweise nicht ausschließlich an einem Rechner sondern an mehreren, verteilt arbeiten werden, benötigen Sie eine Möglichkeit Dateien untereinander auszutauschen. Nicht nur deshalb bietet es sich an einen zentralen Server zur Verwaltung und Versionierung der gemeinsamen Daten (ein sogenanntes "Repository") zu verwenden. In Eclipse ist bereits ein Client für das verbreitete CVS (Concurrent Versions System) integriert, welches den Zugriff auf ein zentrales Repository (bspw. im Home-Account eines Teammitglieds) ermöglicht.
Legen Sie mit Hilfe der Anleitung zu CVS (oder SVN) und ACLs ein Repository für ihr Team an und machen Sie sich mit der Funktionweise vertraut.
Bereits auf Übungsblatt 2 sollten Sie sich mit UML-Diagrammen und deren Notation vertraut machen, die auch in der Vorlesung (und bei der Softwareentwicklung im Allgemeinen) eine große Rolle spielen. Falls Sie es noch nicht getan haben, machen Sie sich mit einem UML-Werkzeug ihrer Wahl vertraut, beispielsweise indem Sie ihre Lösung von Blatt 2 mit diesem Werkzeug modellieren. Auf unseren Webseiten finden Sie eine Auflistung von diversen UML-Werkzeugen, einige davon sind im RBG-Pool verfügbar.
Wenn Sie Eclipse und EclipseUML verwenden wollen, benutzen Sie unsere Installationshinweise oder nutzen Sie die im Pool installierte Version. Falls Sie (Lizenz-)Probleme mit EclipseUML haben können Sie natürlich auch ein anderes UML-Modellierungswerkzeug verwenden.
Bezüglich der im folgenden aufgeführten Technologien bietet es sich eventuell an die Themen auf die Teammitglieder zu verteilen und die Ergebnisse und Erfahrungen danach vorzustellen und zu besprechen.
Wenn sich ihr Team zusammengefunden hat, empfiehlt es sich einige Aspekte der Zusammenarbeit zu besprechen und die Ergebnisse festzuhalten. Dazu zählen beispielsweise Programmierrichtlinien (Coding Style und Verwendung der Versionsverwaltung) sowie die Arbeitsweise (grobe Zeitplanung, Ausfallzeiten während des Semesters einplanen, Arbeitszeiten festlegen, etc.).
Weitere Informationen finden Sie in unserem Helpdesk u.a. auf den Seiten Dateimanagement und Tips und Tricks. Bei der Entwicklung von Software im Team haben sich einige Techniken aus dem Extreme Programming (XP) als sehr hilfreich erwiesen. Informationen zu diesem und anderen Prozessmodellen sind ebenfalls aus dem Helpdesk heraus verfügbar. Sie müssen im Rahmen des Programmierprojekt kein Prozessmodell vollständig umsetzen, sollten sich jedoch über den Sinn solcher Vorgehensweisen klar werden.