Gwybodaeth Modiwlau

Module Identifier
CS31520
Module Title
Mobile Development with iOS
Academic Year
2018/2019
Co-ordinator
Semester
Semester 1
Mutually Exclusive
Pre-Requisite
Other Staff

Course Delivery

Delivery Type Delivery length / details
Practical 20 x 2 Hour Practicals
Lecture 10 x 1 Hour Lectures
 

Assessment

Assessment Type Assessment length / details Proportion
Semester Exam 2 Hours   Written Exam  40%
Semester Assessment 50 Hours   Programming Assignment  60%
Supplementary Assessment 2 Hours   Written Exam  Students should resit failed components  40%
Supplementary Assessment 50 Hours   Programming Assignment  Students should resit failed components  60%

Learning Outcomes

On successful completion of this module students should be able to:

1. Compare, critically evaluate and discuss different options for implementation and deployment of a mobile app idea.

2. Design, implement and evaluate the human user interface of a mobile application against manufacturers’ guidelines and current best practice.

3. Select and apply relevant design patterns in mobile app implementation.

4. Build and test mobile applications for either iOS or Android, using appropriate language features.

5. Build iOS apps that function as part of a larger distributed architecture.

Brief description

The module will explore the different ways in which people are using handheld devices such as phones and tablets, and the larger systems those devices are part of. The module will cover types of devices and users, the importance of user interface issues, the different kinds of trade-offs that are made when building for mobile devices, and techniques for building an app as part of a distributed system. It will ground these issues in the practical development of either iOS apps built using Swift.

Aims

Mobile phones and tablets have become the most numerous form of computer, and the most frequently used. Designing for such a small device involves a range of skills that students do not often exercise in other contexts. This module will explore the techniques and design choices involved in building apps, and give concrete experience of doing so for one of the main phone app development environments.

Content

1. Introduction.
Scope of mobile systems, mobile web, native apps, design choices, main platforms, overview of implications.

2. Software Engineering for mobile
Relevant design patterns, platform design considerations, handling data, handling device variation, using sensors and location.

3.User interfaces for mobile
Developing your ideas, getting the interface right, appropriate user interface guidelines. Accessibility.

4. Learning Swift
Basic language features. Playgrounds. Collection types. Classes, Structures and Enumerations. Optionals. Protocols. Closures.

5. iOS App development
Building and debugging in Xcode. Finding solutions to problems. Displaying data in your app. Laying your app out flexibly. Segues and navigation controllers. Working with tables and data. Working with the web. Animation. Testing.

Module Skills

Skills Type Skills details
Application of Number Inherent to the module.
Communication Program produced must be understandable.
Improving own Learning and Performance Continuous examples of what is being learnt enable self-evaluation.
Information Technology Inherent to the module.
Personal Development and Career planning Experience of module will enhance students' career prospects.
Problem solving Inherent to the module.
Research skills Need to find information on how to address specific programming challenges.
Subject Specific Skills Module focuses on useful subject specific skills.
Team work None.

Notes

This module is at CQFW Level 6