Praxis der Softwareentwicklung (PSE)

Wintersemester 2010/2011

Prof. Dr. Bernhard Beckert, Daniel Bruns


Typ: Praktikum
Beginn: Vorbesprechung am 18.10.2010, 15:45 Uhr
ECTS: 6
LVNr.: 24034
Hinweis: Praxis der Softwareentwicklung (PSE) für Bachelor 3. Semester (allgemeine Hinweise)

Aktuelles

03.03.11: Nun auch die Termine der Abnahmephase
10.02.11: Restliche Termine eingetragen
20.01.11: Folien Testing und weitere Hinweise
11.01.11: Aufgabenstellung Validierung
23.12.10: Termine 2011 aktualisiert und Materialliste ergänzt
13.12.10: Papier zu Monopoly verlinkt
03.12.10: Folien zu Spielalgorithmen online
26.11.10: Folien und Links zu JML online
17.11.10: Aufgabenstellung zum Entwurf online
11.11.10: Termine aktualisiert
09.11.10: Regelmäßige Termine
25.10.10: Termin erstes Gruppentreffen
24.09.10: Website online

Inhalt

Erstellung des Pflichtenheftes inkl. Verwendungsszenarien - Objektorientierter Entwurf nebst Feinspezifikation - Implementierung in einer objektorierten Sprache - Funktionale Tests und Überdeckungstests - Einsatz von Werkzeugen (z. B. Eclipse, UML, Java, Junit, Jcov) - Präsentation des fertigen Systems.

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.

Aufgabenstellungen

Realisieren Sie eine eigene Implementierung angelehnt an das bekannte Gesellschaftspiels MONOPOLY®. Am Ende soll es möglich sein, dass eine menschliche Spielerin/ ein menschlicher Spieler gegen den Computer spielen kann. Das System soll nach Server (verwaltet das Spiel) und Clients (GUI für Menschen, KI im Hintergrund) aufgeteilt sein.


Image licensed under CC-BY-NC-SA 2.0 by in_2_the_fray

Minimale Leistungsmerkmale

Spielregeln. Die grundlegenden offiziellen Spielregeln (z. B. Struktur des Spielfeldes, Würfel, Handeln) werden implementiert. Für die deutsche Variante finden Sie sie beispielsweise hier. Sekundäre Merkmale wie Straßennamen oder Geldbeträge sollen aber variabel gehandhabt werden, sodass sie ausgetauscht werden können (z. B. um verschiedene Editionen darzustellen oder das Copyright nicht zu verletzen.)

Künstliche Intelligenz. Mindestanforderung an den KI-Client ist, dass die bekannten, parametrisierten Heuristiken implementiert werden. Diese werden in der Entwurfsphase vorgestellt. Die Implementierung muss es erlauben, zwei KI-Clients eine beliebige Anzahl von Spielen automatisiert spielen zu lassen.

Server/Client-Kommunikation.  Es ist nicht erforderlich, dass der Server und der Client über das Netz kommunizieren. Es ist allerdings erforderlich, dass die Server und Clients der beiden PSE-Teams sich miteinander verständigen können. Ihnen wird später eine Schnittstelle vorgestellt, die Sie implementieren sollen.

Aufgabenbeschreibungen zu den einzelnen Phasen

  • Phase 0: Allgemeine Informationen [PDF]
  • Phase 1: Pflichtenheft [PDF]
  • Phase 2: Entwurf [PDF]
  • Phase 3: Implementierung [PDF]
  • Phase 4: Validierung [PDF]
  • Phase 5: Abnahme [PDF]

Ablauf

Anmeldung

Die Anmeldung läuft zentral über das Studierendenportal (Anmeldeschluss 19.11.). Wichtig: Laut Modulhandbuch müssen die folgenden Module erfolgreich belegt worden sein: Grundbegriffe d. Informatik, Programmieren. Ohne diesen Beleg ist die Teilnahme an PSE nicht möglich. Es ist außerdem dringend empfohlen, dass Sie Algorithmen 1 und Softwaretechnik 1 bereits gehört haben.

Raum und Zeit

Die Gruppen treffen sich wöchentlich mit ihren Betreuern (falls unten nicht anderweitiges steht):

  • Gruppe 3: Donnerstag 17:30 Uhr, Raum 211 (Geb. 50.34)
  • Gruppe 4: Donnerstag 11:30 Uhr, Raum 211 (Geb. 50.34)

Voraussichtlicher Zeitplan

Termin Hinweise
18.10.2010, 15:45 Uhr Auftaktveranstaltung Vorstellung des Projekts (im HSaF)
03.11.2010, 15:45 Uhr Erstes Gruppentreffen Bitte alle erscheinen. Weitere Termine werden hier vereinbart.
11.11.2010 Zwischenbericht Pflichtenheft
18.11.2010 Kolloquium Pflichtenheft
25.11.2010 Vorlesung zu formaler Spezifikation
02.12.2010 Vorlesung zu Methoden der KI Gemeinsame Sitzung beider Gruppen um 17:30 Uhr
09.12.2010 Zwischenbericht Entwurf
16.12.2010 Kolloquium Entwurf
23.12.2010 Treffen entfällt
13.01.2011 Zwischenbericht Implementierung
20.01.2011 Vorlesung zu Testen
27.01.2011 Treffen entfällt
03.02.2011 Kolloquium Implementierung Termin verlegt, Abgabe bis 26.01.
(KW 5) Pause für Klausurenlernen
10.02.2011 Zwischenbericht Validierung
24.02.2011 Kolloquium Validierung
03.03.2011 Treffen entfällt
15.03.2011 Kolloquium interne Abnahme Termin verlegt, Achtung: Dienstag
Gruppe 4: 10:00—11:30 Uhr, Gruppe 5: 11:30—13:00 Uhr
16.03.2011 Abschlussveranstaltung Gemeinsam mit allen Gruppen des ITI, 14:00 Uhr, Hörsaal -101

Materialien

Vorlesungsfolien

Verwendete Tools