HOME | DEUTSCH | IMPRESSUM | KIT

Software Engineering Practice - SudoPhone

Aufgabenstellung

Ihre Aufgabe ist die Implementierung eines Sudoku-Spiels für Smartphones. Sudoku ist ein aus den 80er Jahren stammendes, mittlerweile sehr populäres Logikrätsel, für das es eine ganze Reihe von Lösungsalgorithmen gibt. Ihr Programm soll eine digitale Version des Rätsels sein, welches eine intuitive und komfortable Bedienung sowie einen fortgeschrittenen Lösungsalgorithmus enthält. Weitere Features (z.B. Kandidatenlisten, grafische Zusatzelemente, etc.) des Programms sind von Ihnen frei wählbar.

Ihre Anwendung soll in Java für die Android Plattform entwickelt werden.

Sie werden dabei Ihr System nach dem Stand der Softwaretechnik in einem Team mit ca. 5 Teilnehmern entwerfen und realisieren. Dazu müssen Sie insbesondere Verfahren des Software-Entwurfs und der Qualitätssicherung praktisch einsetzen, sowie Teamarbeit planen und koordinieren. Eingesetzte Methoden und Tools sind z.B.

  • Versionskontrolle mit Tools wie GIT
  • Objektorientierter Entwurf mit UML
  • Unit-Tests mit JUnit
  • Code-Coverage mit Tools wie EMMA

Stichworte: Sudoku, Android, Branch-and-Bound, Constraint-Saturation, GUI, Touch-Control, Java


Termine

Datum Ort Thema
Mittwochs, 11:30 Uhr Raum 024, AVG Gruppentreffen Gruppe 1 (pseg3)
Mittwochs, 14:00 Uhr Raum 024, AVG Gruppentreffen Gruppe 2 (pseg4)
Mi, 26.10.2011, 14:00 Uhr Raum 207, AVG Erstes gemeinsames Gruppentreffen
Fr, 18.11.2011, 09:45 Uhr 207, AVG Kolloquium: Pflichtenheft
Fr, 16.12.2011, 09:45 Uhr 207, AVG Kolloquium: Entwurf
Fr, 27.01.2012, 09:45 Uhr 207, AVG Kolloquium: Implementierung
Fr, 24.02.2012, 09:45 Uhr NN Kolloquium: Qualitätssicherung

Material

Nur aus dem Uni-Netz erreichbar. Verwenden Sie ggf. den VPN-Client des KIT.


Topic Documents
Aufgabenstellung [PDF]
Folien aus dem ersten Gruppentreffen [PDF]
Anmerkungen zum Pflichtenheft [PDF]
Anmerkungen zum Entwurf [PDF]
Anmerkungen zur Implementierung [PDF]
Anmerkungen zur Qualitätssicherung [PDF]

Links

Versionsverwaltung

Als Versionsverwaltung empfehlen wir GIT oder Subversion:

Entwurf

Es existieren Unmengen von Tools zur Erstellung von und zur Generierung von Quellcode aus UML-Diagrammen. Einige der besseren sind nachfolgend aufgelistet:

Testen

Um die Qualität Ihrer Tests zu bestimmen, werden Sie Tools verwenden, die die Anweisungs- und Zweigüberdeckung Ihrer Tests messen. Einige Tools sind nachfolgend aufgelistet:
  • Fürs Testen von Java 1.5 und höher sind unter anderem EMMA oder Clover (als 30-tägige Testversion) geeignet.

Programmieren mit Java

Infrastruktur: Auszüge aus dem Wiki des Lehrstuhls

Personnel

Department Head
Prof. Gregor Snelting
Scientific Staff
Denis Lohner