module specification

CS6051 - Mobile Applications (2018/19)

Module specification Module approved to run in 2018/19
Module title Mobile Applications
Module level Honours (06)
Credit rating for module 15
School School of Computing and Digital Media
Total study hours 150
 
45 hours Scheduled learning & teaching activities
69 hours Guided independent study
36 hours Assessment Preparation / Delivery
Assessment components
Type Weighting Qualifying mark Description
Coursework 20%   Program Assignment, Part 1 - Initial Application Proposal (500 words) and Presentation
Practical Examination 20%   Time-constrained lab-based Practical Test (1.5 hours)
Coursework 60%   Program Assignment, Part 2 - Final Application Report (2000 words excluding program code) and Presentation
Running in 2018/19
Period Campus Day Time Module Leader
Spring semester North Thursday Afternoon

Module summary

This module introduces a range of specialist programming techniques as applied to mobile platforms. Specific areas of study will include: programming strategies for resource-limited portable devices – including reviewing key components through the development of exemplar applications using an appropriate mobile-based programming platform such as Java ME and Google Android. The key skills and knowledge to be gained are:
• Understanding theoretical concepts related to the work of software in wireless networks and the use of different protocols, frameworks and tools for building mobile applications
• Learning techniques for programming mobile applications using standard technological frameworks, development tools, mobile device emulators and handsets
• Acquiring practical skills in developing mobile applications which utilize wireless services and mobile Internet
• Applying analytical knowledge and practical skills for building typical mobile applications
• Developing ability to compare protocols, models and paradigms for mobile applications and estimate trade-offs during design using different design patterns, development frameworks and programming techniques
• Building professional competence and increasing the employability through the use of industrial standard technologies and tools for software development

Syllabus

• Introduction to Programming Mobile Devices LO1,LO2
• Mobile Platform Fundamentals LO4
• Mobile User Interface Programming LO1,LO2
• Multithreading Requirements LO4
• Mobile Games Programming LO1,LO2
• Persistent Data Storage for Mobile Devices LO3
• Web Connectivity and Internetworking LO1,LO2,LO3,LO4,LO5
• Personal Area Networking with Bluetooth LO1,LO2,LO3,LO4,LO5
• Performance Tuning LO1,LO2,LO3,LO4,LO5
• Deployment Strategies LO1,LO2,LO3,LO4,LO5

Balance of independent study and scheduled teaching activity

Combination of

• Lectures for defining concepts, describing methods and discussing alternatives
• Workshops for demonstrating software tools, configuring working environments, prototyping solutions, discussing alternatives and acquiring hands-on experience
• Individual coursework for reporting technological research and technical solutions, comparing design alternatives and personal reflection
• Blended learning through the use of Virtual Learning Environments (VLE) for setting problem scenarios, providing prepared solutions, submitting assessment materials and obtaining feedback
• Public demonstration of software solutions for evaluation and reflection of individual practice

Learning outcomes

On successful completion of this module the student should be able to:

LO1: Develop mobile applications that meet business needs for typical mobile devices.
LO2:Integrate existing software components, wireless and Internet services for implementing distributed mobile systems using suitable frameworks, development tools and software APIs
LO3: Deploy mobile software applications to mobile devises running typical operating system such as Google Android
LO4:Use industrial IDE for development, integration, testing and deployment of mobile applications on mobile devices.
LO5: Compare alternatives for implementation of mobile applications using different application level protocols, software architectures, programming techniques and development tools, estimate trade-offs, make justified decisions and critically evaluate their impact at different stages of software product lifecycle

Assessment strategy

The assessment strategy in the module is based on combining
• regular formative assessment of the progression through demonstrating of the prepared solution of workshop tasks to be recorded at the end of the module (LO1-LO4)
• summative assessment of the practical skills acquired through a coursework dedicated to solving relatively large practical problems (LO1-LO5)
• final summative assessment of the overall achievements in the end of the Academic Year through examination (LO1-LO3, LO5)
Standard formative and summative feedback, provided in written form or by electronic means.

Bibliography

Where possible, the most current version of reading materials is used during the delivery of this module.  Comprehensive reading lists are provided to students in their handbooks.  Reading Lists will be updated annually.
Textbooks:
Core Text:
• J.F. DiMarzio, 2017, beginning android programming with android studio, john wiley& Sors Ltd, fourth edition,  ISBN 9781118705599.
• Joseph Annuzzi, Jr. etc. 2016, Introduction to Android Application Development: Android Essentials, 5th Edition, ISBN-13: 9780134433646
Other Texts:
• Joseph Annuzzi, Jr. etc. 2015, Advanced Android Application Development, 4th Edition ISBN-13: 9780134076416
Journals:
• The Computer Journal of the British Computer Society, ISSN 1460-2067 (Electronic); Publisher: Oxford: Oxford Journals, Oxford, UK : Oxford University Press.
Websites:
• .F. DiMarzio, 2017, beginning android programming with android studio book website:
http://files.hiitech.com/book/Android/Beginning%20Android%20Programming%20with%20Android%20Studio,%204th%20Edition.pdf
https: //www.tutorialspoint.com/android/
https://developer.android.com/guide/index.html
https://o7planning.org/en/11007/android
http://www.oracle.com/technetwork/java/javame/
http://www.google.com/mobile/android/
https://www.w3schools.com/php/php_examples.asp

Electronic Databases (available from the University Library)
• ACM Digital Library
• IEEE Xplore/IET Digital Library
Other