Software Development for Mobile Devices


This module develops a critical understanding of software development practices which can be used to develop applications for a range of smart and mainly mobile devices. Students will develop and evaluate the techniques used to implement mobile applications.


The aim of this module is to provide the student with: the ability to design, develop and critically evaluate software for the mobile platform.

Learning Outcomes

By the end of this module the student should be able to:

1.  Design and implement mobile software incorporating appropriate UI design for multi-device applications using frameworks and libraries;

2.  Discuss the devices, designs and languages relevant to smart and mobile operating systems;

3.  Use network programming constructs including sockets and protocols to include security, location and privacy functionality in mobile applications;

4.  Critically appraise usability and accessibility in mobile applications, identifying and exemplifying good practice.

Indicative Content

1 Background to Smart and Mobile Development:

Challenges in developing for smart including mobile devices. Development strategies, emulators and development environments. Use of the application abstraction to allow easier development.

2 User Interfaces:

Development of interfaces for user-interaction including UI controls (buttons, forms) and underlying hardware controls (key presses, touch screen). Basic control of a mobile device using the high user interface. Use of commands and forms to gain data from the client. Use of low level features to display data to the user. Use of key presses to control real-time application.

3 Storage:

Consideration of storage requirements for mobile devices. Saving and retrieving local and remote storage. Overview of database design. Use of remote databases, and how to use server side databases in an internet application. Use of internet based scripting to generate server side text for the client

4 Location awareness

Utilising the network location capabilities of mobile devices to develop feature rich applications

5 Telephony SMS

Understanding the telephony and sms stack on the mobile device and the use of api’s required for their access and control

6 Communication Networks

Using short and long distance networks for communication and understanding of the limitations and benefits of each

7 Security

Consider the security implications of mobile and smart platforms, how these can be exploited and development considerations to improve resilience.

8 Performance

Methods for testing the functionality and performance of applications on mobile devices.

9 Mobile Web Application Development

Explore and evaluate a range of mobile solution options from response design, jQuery mobile, and Javascript based applications.

Statement on Teaching, Learning and Assessment

Students will receive a series of lectures supported by practical laboratory sessions. Underpinning theory and concepts will be introduced in lectures and further reinforced through the practical sessions. In the laboratory sessions problems and sample applications will be provided with the intention that students develop and extend these applications to explore relevant issues and topics. Towards the middle of the module, students will propose an application idea for their coursework and develop and test this application during the latter part of the module. The class should be timetabled in room 4510. Delivery will be through a variety of mechanisms: • Lectures : lecturer-led; deliver knowledge. • Practicals : lecturer-directed, student-led; undertake specific computer-based experiments/activities to exemplify, explain and/or extend knowledge when applied to a problem context. • Clinics : student-led; discuss issues and/or problems on a programme-wide rather than module-specific basis.

Teaching and Learning Work Loads

Total 200
Lecture 12
Tutorial/Seminar 0
Supervised Practical Activity 26
Unsupervised Practical Activity 0
Assessment 80
Independent 82

Guidance notes

Credit Value – The total value of SCQF credits for the module. 20 credits are the equivalent of 10 ECTS credits. A full-time student should normally register for 60 SCQF credits per semester.


We make every effort to ensure that the information on our website is accurate but it is possible that some changes may occur prior to the academic year of entry. The modules listed in this catalogue are offered subject to availability during academic year 2019/10 , and may be subject to change for future years.