Software Engineering Lab (PSE) |
In the Software Engineering Lab (PSE) you will learn how to develop a software-project using state-of-the-art software engineering techniques in teams of 5 to 6 students. The goal of the lab is to get familiar with design and software quality assurance methods and to implement the designed medium-sized software project as a team. |
|
Motivation: |
Android Dev 1 Phones |
Nexus One |
Smartphones have recently become very popular and powerful. Two examples are the "HTC Dream" (Android Dev 1 Phone, T-Mobile G1) and the "HTC Passion" (Google Nexus One) phones. Such phones can be programmed using Java, the Android API, and modern software engineering techniques and will be used in this lab. | |
Assignment: |
Your assignment is the design and implementation of a program which makes it possible to exchange applications with other, nearby phones, in an ad-hoc fashion. |
In particular you will need to design and implement: |
|
|
- A discovery mechanism to find nearby phones
- A mechanism to download application lists and applications/patches
- A Public Key Infrastructure and signature checking
- Installation/patching
- Installation
- GUI/configuration
|
Optional features include: |
- Continuation of unsuccessful downloads
- Binary patches (e.g. the use of algorithms like xdelta, rsync)
- Rollback of installed applications
| |
Schedule: |
Weekly meetings will take place on Friday at 14:30 o'clock. |
16.04. |
First appointment with the advisor |
07.05. |
Functional specification |
04.06. |
Design |
02.07. |
Implementation |
23.07. |
Validation/testing |
30.07. |
Presentation | |
Links: |
Praxis der Softwareentwicklung |
|
Advisor: |
Simon Kellner <kellnerHyt8∂kit edu> |