Mobile System Programming
2010-2011 - IMT3661 - 5 ECTS

Prerequisite(s)

  • 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 be able to:

  • Describe the performance limitations of mobile devices
  • Implement simple applications on mobile devices
  • Develop applications within the limitations of mobile devices
  • Cross compile code for at least two different mobile Operating Systems. Android, Maemo or iPhone / iPad
  • Understand the process of developing for mobile platforms with an in depth focus on a student selected platform.

Topic(s)

The field of mobile system development changes rapidly. Thus the topics covered need to be flexible also. 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, Maemo, and Symbian

Teaching Methods

Lectures
Net Support Learning
Project work

Teaching Methods (additional text)

Student will receive and 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/iPod touch, HTC Dream/Hero/Touch, Nokia 5800 or above.)

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.

Grading Scale

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

External/internal examiner

Internal examiner with periodic external examination. First time external examination is autumn 2010.

Re-sit examination

None

Teaching Materials

Textbook: TBA

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