Software Development Practice 2011: Location-Aware Mobile Learning

Project framework

For the practical course in software development (PDE) in the winter semester 011/2012, an Android smartphone will be used to develop a concept and an Android software solution that enables context-dependent (location, situation, etc.) mobile learning for a heterogeneous robot compound system in image evaluation.

© Fraunhofer IOSB

Project goals

A central component of the task is the development of an Android app that captures the current context of the user. Depending on this context, appropriate content is then to be presented on the smartphone.
The context recognition can be done via manually attached markers (2D barcodes) or via pattern recognition methods. The markers uniquely encode the location or the device. Methods from pattern recognition and image processing go beyond that and "recognize" the current location or device only based on the camera images. Within the PSE, first the marker-based method, then the image processing methods are to be implemented.
If the current context is recognized - via a predefined assignment - suitable (learning) content is presented to the user. The goal is context-dependent mobile learning.



  • Conception of a concrete example scenario for an existing project
  • Development of an Android app for contextual mobile learning
  • Implementation of methods for context detection

For context detection the following methods are to be used:

  • Manual barcodes (QR codes). Use of existing libraries (zxing)
  • Image processing algorithms (local features like SIFT, SURF, FAST etc. for object detection). Use of best libraries (e.g. OpenCV for Android)
  • Location detection using other smartphone sensors (WLAN, GPS etc.)


  •  Programming skills (Java), knowledge of Eclipse-IDE
  • Basic knowledge of Android app development
  • Basic knowledge in pattern recognition and image processing (e.g. object recognition
  • Modules "Basic concepts of computer science" and "Programming

Recommendation: PSE should only be taken when all credits from the first two semesters have been earned.


In practice of software development (PDE), a complete software project is carried out according to the state of the art in software technology in a team with 4 to 5 participants. The goal is to apply software design and quality assurance methods in practice, to implement implementation competence, and to work on and cooperate on a project as a team.


The success control is carried out according to § 4 para. 2 No. 3 SPO as graded success control of another kind. The artifacts are graded separately, the proportions of the overall grade are as follows: specification 10%, draft 30%, implementation 30%, quality assurance 20%, final presentation 10%

Method of operation

In order to ensure that the course runs smoothly and to enable cooperation between research and teaching, students are encouraged to work independently and to communicate the progress of their work regularly.

This includes among other things:

  • Regular project team meetings to discuss problems and tasks
  • Timely preparation of the documents to be submitted, such as specifications, design documentation, implementation plan, etc. The documents should be made available to the supervisors in a draft version in good time in advance.
  • Provision of a version management system (e.g. Subversion, git, Mercurial) for version control of development artifacts (models, source code, configuration, reports, etc.)

Time schedule

The event is divided into five phases. Each phase is concluded by a colloquium in which the groups present their results. The schedule has not yet been fixed, but will be based on the specifications of the chair of Professor Snelting. The dates for the colloquia will be discussed with the team and announced afterwards.