Vorbesprechung: Dienstag den 26.10. um 13:30 Uhr in Raum 207 im AVG (Gebäude 50.41)
Aufgabenstellung
Tauchen ist ein schönes, aber auch nicht ganz ungefährliches Hobby. Wenn man zu lange oder zu tief taucht, dann reichert sich das Gewebe des Tauchers mit Stickstoff an. Beim Auftauchen kann es dann passieren, dass der Stickstoff (wie beim Öffnen einer Flasche Sprudel) aus dem Gewebe ausperlt und dadurch starke Schmerzen und Verletzungen verursacht.
Deshalb muss jeder Taucher einen Tauchcomputer mitführen. Dieser misst über einen Drucksensor den Tauchverlauf und bestimmt mit Hilfe eines mathematischen Modells den aktuellen Zustand des Tauchers. Aufgrund des Modells gibt der Tauchcomputer dem Taucher Anweisungen wie er sich zu verhalten hat. Z.B. "Langsames Auftauchen bis auf 20m und dort 10min verweilen.". Da diese Hinweise über das Wohlergehen des Tauchers entscheiden, darf bei deren Berechnung kein Fehler unterlaufen. Hierfür ist bei der Implementierung spezielle Sorgfalt, sowie der Einsatz von geeigneten Softwaretechniken nötig.
Ihre Aufgabe ist die Implementierung eines Tauchcomputers für mobile Java-Geräte. Zur Erprobung des Programms ist als Zielgerät des Tauchcomputers ein Java-fähiges Handy vorgesehen. Darüber hinaus sollen Sie eine Meeressimulation entwickeln, mit der Tauchgänge modelliert werden können und die die entsprechenden Daten an den Tauchcomputer übermittelt. Die Meeressimulation soll als herkömmliche Java-Applikation realisiert werden.
Die Programmiersprache Java existiert nicht nur in ihrer Standardausführung, der Java Standard Edition, sondern auch in einigen verschiedenen Variationen für spezielle Einsatzgebiete, wie etwa Java Card für Smart Cards oder die Java Micro Edition (JavaME) sowie die Android Platform für mobile, vernetzte Geräte wie z.B. Handys.
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.
Vorbesprechung
Die erste Vorbesprechung für alle 4 Teams wird am Dienstag den 26.10. um 13:30 Uhr in Raum 207 im AVG (Gebäude 50.41) stattfinden.
Termine
Datum | Ort | Thema | Unterlagen |
---|---|---|---|
26.10.2010, 13:30 Uhr | SR 207, AVG | Erstes gemeinsames Gruppentreffen | |
29.10.2010, 09:45 Uhr | SR 207, AVG | Tauchcomputer Grundlagen | |
12.11.2010, 09:45 Uhr | SR 207, AVG | Kolloquium: Pflichtenheft | |
10.12.2010, 09:45 Uhr | SR 207, AVG | Kolloquium: Entwurf | |
21.01.2011, 09:45 Uhr | SR 207, AVG | Kolloquium: Implementierung | |
11.02.2011, 09:45 Uhr | SR 207, AVG | Kolloquium: Validierung | |
09.03.2011, 13:00 Uhr | R. 029, AVG | Interne Abnahme | |
30.03.2011, ab 10:00 Uhr (ganztägig) | HS -101, 50.34 | Abschlusspräsentation |
Zeitlicher Ablauf
Die Veranstaltung gliedert sich insgesamt in fünf Phasen. Jede Phase wird durch ein Kolloquium abgeschlossen, in dem die Gruppen ihre Ergebnisse vorstellen. Die Termine für die Kolloquien werden noch bekanntgegeben.Woche | Zeitraum | Phase | Kolloquium |
---|---|---|---|
42 | 18.10. | Auftaktveranstaltung | |
42 | 18.10. - 22.10. | Gruppen- und Aufgabeneinteilung mit WebInScribe | |
43 | 25.10. - 29.10. | Erstes Gruppentreffen mit Betreuer | |
44 - 45 | 01.11. - 12.11. | Pflichtenheft | |
46 - 49 | 15.11. - 10.12. | Entwurf | |
50 - 3 | 13.12. - 21.01. | Implementierung | |
4 - 6 | 24.01. - 11.02. | Qualitätssicherung/Validierung | |
7 - 8 | 14.02. - 25.02. | Klausurpause | |
9 | 28.02. - 04.03. | Interne Abnahme | |
10 | 30.03. | Abschlusspräsentation |
Unterlagen
Nur aus dem Uni-Netz erreichbar. Verwenden Sie ggf. den VPN-Client des KIT.
Thema | Dokumente |
---|---|
Aufgabenstellung | [PDF] |
Tauchcomputer | [PDF] |
Schnittstelle zwischen Tauchcomputer und Simulationsumgebung | [PDF] |
Folien aus dem ersten Gruppentreffen | [PDF] |
Anmerkungen zum Pflichtenheft | [PDF] |
Anmerkungen zum Entwurf | [PDF] |
Anmerkungen zur Implementierung | [PDF] |
Anmerkungen zur Validierung | [PDF] |
Links
Versionsverwaltung
Als Versionsverwaltung empfehlen wir Subversion:Entwurf
- UML Resource Center
- Buch: Thinking in Patterns
- Buch: Design Patterns: Elements of Reusable Object-Oriented Software
- eUML 2 (kostenloses Tool)
- Visual Paradigm (bietet eine kostenlose Grundversion des Tools an)
- ArgoUML (kostenloses Tool)
- Fujaba (kostenloses Tool)
- UMLet (kostenloses Tool)
- StarUML (kostenloses Tool)
- Eclipse Plugins Fast jedes der oben aufgelisteten Tools existiert auch als Eclipse-Plugin.
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:- Cobertura for J2ME
- 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
Threads und GUI
- JavaME Specifications
- Sun Java Wireless Toolkit
- MIDP GUI Programming
- Beginning J2ME: Building MIDlets
- Java 2 Micro Edition and the Mobile Information Device Profile
Infrastruktur: Auszüge aus dem Wiki des Lehrstuhls
- AFS - PPWiki.pdf
- AFS Rechteverwaltung - PPWiki.pdf
- GIT - PPWiki.pdf
- GIT Aufsetzen - PPWiki.pdf
- Kerberos - PPWiki.pdf
- Modules - PPWiki.pdf
- SSH - PPWiki.pdf
- SVN Aufsetzen - PPWiki.pdf
Veranstalter
Lehrstuhlinhaber |
---|
Prof. Gregor Snelting |
Ehemalige Mitarbeiter |
---|
Dr.-Ing. Jürgen Graf |
Dipl.-Inform. Denis Lohner |