Module code: EEEM024

Module provider

Electrical and Electronic Engineering

Module Leader

SUN Z Prof (Elec Elec En)

Number of Credits


ECT Credits



FHEQ Level 7

JACs code


Module cap (Maximum number of students)


Module Availability

Semester 2

Overall student workload

Independent Study Hours: 110

Lecture Hours: 30

Assessment pattern

Assessment type Unit of assessment Weighting
Examination EXAMINATION - 2HRS 60%

Alternative Assessment

Not applicable: students failing a unit of assessment resit the assessment in its original format.

Prerequisites / Co-requisites


Module overview

Expected prior learning:  EEE3013 – Object-Oriented Design and C+ (6-ood), or equivalent learning.

Assessment Pattern

 2 Units of Assessment

Weighting towards module mark (%)

2-hour, closed-book written examination


Coursework  (2 marked items):

1:  Programming Laboratory, assessed by written technical report (20%).

2:  Programming Assignment, together with written technical report (20%).



Module purpose:  This module covers the areas of operating system and programming for mobile devices (such as mobile phones and smartphones), it also covers the tools used for software development such as SDK, IDE and Device Emulators:


Module aims

To introduce and explain in some depth different operating systems (OS) for mobile device programming and related software development kits (SDK).

To teach basic principles and methods required to develop new applications and services on a different platform.

To provide practical experience based on available integrated development environments (software development, compilation and emulation) and mobile devices.

Learning outcomes

Attributes Developed
Explain the concepts and terminologies associated with mobile operating systems
Develop, debug and test programs using SDKs for mobile applications
Compile and test the programs in an emulated environment
Demonstrate and test programs on real mobile devices

Attributes Developed

C - Cognitive/analytical

K - Subject knowledge

T - Transferable skills

P - Professional/Practical skills

Module content

Indicative content includes the following.

Introduction to mobile systems programming (Characteristics, Overview of different mobile platforms)
Mobile device architecture (Hardware, Software, Platform, Product line)
Basics of software architecting and design concepts (memory management, process management, performance, security, user interfaces)
Programming methods (coding conventions, resource management, application development, infrastructure including servers, dynamic libraries)
Development environment (SDK and tools, Emulator, Target execution platform, Program design and building)
Operating System (Kernel and processes, System memory management)
Application models (Application architecture, inherited classes, Application launch process). Basic programming exercises.
Writing application programs for mobile terminals.


Methods of Teaching / Learning

The learning and teaching strategy is designed to achieve the following aims.


These will enable students to develop cognitive skills, practical skills; and key transferable skills necessary for developing future mobile applications and services.


Learning and teaching methods include the following.

Lectures: 10 weeks teaching of total 30 hours

Labs: To learn the use of different IDEs as well as SDKs and hardware devices. To be able to develop new applications on different devices with different operating systems.

Assignment(s): the students will be asked to develop, debug and test application programs using different programming methods (Arduino, C++ and Java) with different hardware devices to demonstrate their understanding of mobile Operating Systems and capability of developing mobile applications and services.




Assessment Strategy

The assessment strategy for this module is designed to provide students with the opportunity to demonstrate the learning outcomes. The written examination will assess the knowledge and assimilation of terminology, concepts and theory of mobile operating systems and programming, as well as the ability to develop new applications.

The Assignment will assess the ability to use the IDE and SDK for application development. The programming Lab will evaluate the acquired technical skills and expertise required for programming mobile devices.


Thus, the summative assessment for this module consists of:

2 hours closed book written examination

2 x 3-hours of laboratory programming.

Individual formal technical report on selected application programming.


Formative assessment and feedback

For the module, students will receive formative assessment/feedback in the following ways.

During lectures, by question and answer sessions

During tutorials/tutorial classes

By means of unassessed tutorial problem sheets (with answers/model solutions)

During supervised laboratory sessions

During supervised computer laboratory sessions

Via the marking of written reports

Via assessed coursework


Reading list

Reading list for OPERATING SYSTEM FOR MOBILE SYSTEMS PROGRAMMING : http://aspire.surrey.ac.uk/modules/eeem024

Please note that the information detailed within this record is accurate at the time of publishing and may be subject to change. This record contains information for the most up to date version of the programme / module for the 2017/8 academic year.