Software Engineering Practice - Praxis der Softwareentwicklung
Praktikum im Wintersemester 2009/2010
Prof. Dr. Bernhard Beckert, Dr. Vladimir Klebanov, Daniel Bruns
Aktuelles
09.03.10: Die Abschlussveranstaltung findet jetzt am Donnerstag, 25. März um 14:00 Uhr im HS -101 statt.
15.02.10: Aufgabenstellung zur Validierung.
15.01.10: Termine aktualisiert
15.12.09: Vortrag vom 2.12. und einige Wortlisten aus dem Netz online
02.12.09: Material zu Spielalgorithmen online (s.u.)
27.11.09: Informationen zur Entwurfsphase: Die Aufgabenbeschreibung steht online. In der Woche vor Abgabe veranstalten wir noch einen Zwischentermin (siehe unten).
27.11.09: Nächste Woche Mittwoch (2.12.) findet um 17:30 Uhr in HS -101 die Vorlesung zu KI-Algorithmen statt.
13.11.09: Weiteres Organisatorisches online. Die regelmäßigen Treffen finden ab jetzt in Raum 211 statt.
11.11.09: Die Aufgabenstellung und Hinweise zum Pflichtenheft stehen auf der Webseite zur Verfügung.
30.10.09: Das erste Treffen findet am Freitag 6.11. um 15:45 Uhr (nicht um 14:00 !) in Seminarraum 131 im Informatikgebäde statt.
29.10.09: Am 6.11.2009 um 14:00 findet das erste Treffen der Gruppen statt. Der Raum wird noch bekannt gegeben. Bei Fragen wenden Sie sich bitte an Daniel Bruns.
01.10.09: Am 20.10.2009 findet um 15:45 die Auftaktveranstaltung im HS a.F. (Hörsaal am Fasanengarten, Gebäude 50.35) statt. Dort werden die verschiedenen Aufgaben vorgestellt und erklärt, wie die Gruppen eingeteilt werden.
Allgemeines
In "Praxis der Softwareentwicklung" (PSE) lernen die Teilnehmer, ein vollständiges Softwareprojekt nach dem Stand der Softwaretechnik in einem Team mit 5 bis 6 Teilnehmern durchzuführen. Ziel ist es insbesondere, Verfahren des Software-Entwurfs und der Qualitätssicherung praktisch einzusetzen, Implementierungskompetenz umzusetzen, und arbeitsteilig im Team zu kooperieren.
Aufgabenstellung
Ihre Aufgabe ist Entwicklung eines Scrabble-ähnlichen Spiels. Es sollen ein Server (der das Brett verwaltet) und zwei Clients implementiert werden. Der interaktive Client soll von einem Menschen über eine grafische Oberfläche bedient werden; mit dem AI-Client kann man den Computer spielen lassen. Implementierungssprache ist Java. Bewertet werden gleichermaßen die Spielstärke wie die Qualität des Code und anderer erstellter Artefakte.
Allgemeine Aufgabenstellung: aufgabe.pdf-
1. Phase - Pflichtenheft
Das Pflichtenheft muss bis zum 25.11.09 erstellt werden.
Hinweise zum Pflichtenheft: pflichtenheft.pdf -
2. Phase - Entwurf
Die Entwurfsdokumente müssen bis zum 18.12.09 bzw. 23.12.09 erstellt werden.
Hinweise zum Entwurf: entwurf.pdf - 3. Phase - Implementierung
-
4. Phase - Validierung
Die Validierung wird auf dem Kolloquium am 3. bzw. 12. März präsentiert.
Hinweise zur Validierung: validierung.pdf
Ablauf
Anmeldung
Die formelle Anmeldung erfolgt am Treffen 25. bzw. 27.11. Dazu müssen alle Teilnehmenden einen blauen Prüfungsschein und Notenauszug (beides erhältlich im Studienbüro) vorlegen. Laut Modulhandbuch müssen die folgenden Module erfolgreich belegt worden sein: Grundbegriffe d. Informatik, Programmieren, Algorithmen 1, Softwaretechnik 1. Ohne diesen Beleg ist die Teilnahme an PSE nicht möglich.
Raum und Zeit
Die Gruppen treffen sich mit ihren Betreuern an unten stehenden Terminen:- Gruppe 6: Mittwochs, 9:45 Uhr, Raum 211
- Gruppe 5: Freitags, 9:45 Uhr, Raum 211
Zeitplan (vorläufig)
Wann |
Was |
6.11.2009, 15:45 | Erstes Treffen der einzelnen Teams mit ihrem Betreuer |
18./20.11.2009 | Pflichtenheft (Zwischentermin) |
25./27.11.2009 | Pflichtenheft (Abgabe), Anmeldung |
02.12.2009, 17:30 | Vorlesung KI-Algorithmen (HS -101) |
09./11.12.2009 | Entwurf (Zwischentermin) |
18./23.12.2009 | Entwurf (Abgabe) |
15./20.01.2010 | Implementierung (Zwischentermin) |
03./05.02.2010 | Implementierung (Abgabe) |
24./26.02.2010 | Validierung (Vorbesprechung) |
03./12.03.2010 | Validierung (Abgabe) |
17./19.03.2010 | Interne Abnahme der entwickelten Software |
25.03.2010, 14:00, HS -101 | Abschlussveranstaltung |
Materialien
Spielalgorithmen
- Die Präsentation und Notizen zum Tafelanschrieb vom 2. Dezember
- Brian Sheppard: World-championship-caliber Scrabble (2001) (abrufbar innerhalb der Uni)
- Andrew Appel: The world's fastest Scrabble program (1988) (abrufbar innerhalb der Uni)
Wörterlisten
- https://www.math.toronto.edu/jjchew/scrabble/lists/ (nach Länge; einige Statistiken)
- https://www.torontoscrabbleclub.com/lists/prob09.html (Wörter mit 9 Buchstaben, nach Wahrscheinlichkeit)
- https://www.isc.ro/en/commands/lists.html (komplette Turnierliste; auch nach Länge)
Verwendete Tools
- LaTeX: Kurzbeschreibung (dt., PDF)
- Subversion: diverse Tutorials im Internet
- Ansonsten lohnt sich auch mal ein Blick in die Lehrbuchsammlung in der UB!
Tipp für LaTeX: Um Papier zu sparen, sollte der Textbereich vergrößert werden, etwa mit folgenden Zeilen in der Präambel:
\addtolength{\textheight}{20mm}
\addtolength{\topmargin}{-10mm}
\addtolength{\textwidth}{20mm}
\addtolength{\evensidemargin}{-7.5mm}
\addtolength{\oddsidemargin}{-7.5mm}
Dafür kann dann ein größerer Schriftgrad gewählt werden, z.. B. \documentclass[a4paper,12pt]{article} einstellen (A4-Papier sollte in jedem Fall verwendet werden).