Mobile System Programming
2012-2013 - IMT3661 - 5 ECTS


  •  IMT1031 Introduction to Programming or
  •  IMT1241 Basic Java Programming

On the basis of

  •  IMT1082 Object Oriented Programming or equivalent
  •  IMT2291 Web Technologies or equivalent

Expected learning outcomes

On completion of this course the students will:

  • Understand and be able to describe the performance limitations of mobile devices.
  • Understand the special user interface requirements of mobile devices
  • Have a deeper understanding of the development process for a specific mobile platform.
  • Be able to use an integrated development environment (IDE) to implement simple applications on mobile devices.
  • Be able to access and use the variety of input devices found in mobile devices.
  • Understand the ethical and social impact of mobile devices on society
  • Developed an appreciation of the potential for innovation in mobile services, and the impact this could have on society.
  • Cross compile code for at least two different mobile Operating Systems. Android, MeeGo, Phone7 or iOS


The field of mobile system development changes rapidly. Thus the topics covered need to be flexible. In this course these include, but are not limited to:

  •  Limitations of Mobile Devices
  •  Programming Design Patterns for mobile systems
  •  Layout and UI for mobile screen
  •  Using alternative input interfaces
  •  Sensor integration - GPS, accelerometer, tilt, magnetic field, compass and camera
  •  Signal processing.
  •  OpenGL ES - 3D graphics on mobile devices
  •  Managing multiple product SKU's
  •  OS specific development issues. iPhone, Android, MeeGo, and Phone7

Teaching Methods

Net Support Learning
Project work

Teaching Methods (additional text)

Student will receive an overview of the mobile development process on a range of devices, but will select one for in depth study. Some mobile devices will be available for testing, but it would be beneficial for the student to have access to a personal mobile device (for example iPhone/iPad which requires an apple computer, android 2.2 device or above, Phone7, or MeeGo)

Form(s) of Assessment

Written exam, 3 hours
Evaluation of Project(s)

Form(s) of Assessment (additional text)

Two assignments (2x20%), and final exam (60%).
The first assignment is an individual assignment focused on developing a simple app which accesses both sensor data and Internet resources. The second assignment is a group project implementing a new application, such as a game, visualisation tool, media production app, or productivity tool. The assignments are each worth 20% and must both be passed to sit the exam worth 60%. The group project will be on a phone/mobile device of the students choice. All parts must be passed to pass the course.

Grading Scale

Alphabetical Scale, A(best) – F (fail)

External/internal examiner

Internal examiner with periodic external examination on the written exam.

Re-sit examination

Normal continuation exam

Teaching Materials

Web resources from Apple, Google, Microsoft and Nokia as well as other online tutorial sites.