HOME | ENGLISH | IMPRESSUM | KIT

Praxis der Softwareentwicklung - Smartphoneprogrammierung in Java

Aufgabenstellung

Ihre Aufgabe ist die Implementierung eines Rubik-Würfels für Smartphones. Der Rubik-Würfel ist ein in den 80er Jahren sehr populäres Denkspiel, für den es mittlerweile eine Reihe von Lösungsalgorithmen gibt, die auf der Gruppentheorie basieren. Ihr Programm soll einen Rubik-Würfel auf einem Handy simulieren und als Hilfestellung für den Spieler einen Lösungsalgorithmus Ihrer Wahl verwenden.

Ihre Anwendung soll in Java für die Android Platform (oder alternativ: für die Java Micro Edition JavaME) entwickelt werden. Für die Visualisierung des Rubik-Würfels kann z.B. das OpenGL ES API verwendet 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 Subversion
  • Objektorientierter Entwurf mit UML
  • Unit-Tests mit JUnit
  • Code-Coverage mit Tools wie EMMA


Fertiggestellte Projekte

Im Sommersemester 2011 wurde eine Gruppe von 5 Studierenden bei der Umsetzung eines Rubik-Würfels betreut. Das Ergebnis ist auf den privaten Websites der Gruppe verfügbar:

Termine

Datum Ort Thema
19.04.2011, 13:00 Uhr 024, AVG Erstes gemeinsames Gruppentreffen
13.05.2011, 14:00 Uhr 207, AVG Kolloquium: Pflichtenheft
14.06.2011, 10:00 Uhr 207, AVG Kolloquium: Entwurf
15.07.2011, 14:00 Uhr 207, AVG Kolloquium: Implementierung

Unterlagen

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


Thema Dokumente
Aufgabenstellung [PDF]
Folien aus dem ersten Gruppentreffen [PDF]
Einführung OpenGL ES [PDF]
OpenGl-Beispielprogramm [ZIP]
Auszug: Subversion Commit Policies [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:

Spezifikation

Eine Reihe von Tools bieten werkzeugunterstütztes Testen für JavaME an:

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:

Programmieren mit Java

Threads und GUI

Infrastruktur: Auszüge aus dem Wiki des Lehrstuhls

Veranstalter

Wissenschaftliche Mitarbeiter
Martin Hecker
Denis Lohner