RMIT University

Course Title: iPhone Software Engineering

Part A: Course Overview

Course Title: iPhone Software Engineering

Credit Points: 12.00

Terms

Course Code

Campus

Career

School

Learning Mode

Teaching Period(s)

COSC2471

City Campus

Undergraduate

140H Computer Science & Information Technology

Face-to-Face

Sem 2 2010,
Sem 2 2011,
Sem 2 2012,
Sem 1 2015,
Summer2016,
Sem 1 2016

COSC2471

City Campus

Undergraduate

171H School of Science

Face-to-Face

Sem 2 2017,
Sem 2 2018,
Sem 2 2019,
Sem 2 2020

COSC2471

City Campus

Undergraduate

175H Computing Technologies

Face-to-Face

Sem 2 2023

COSC2472

City Campus

Postgraduate

140H Computer Science & Information Technology

Face-to-Face

Sem 2 2010,
Sem 2 2011,
Sem 2 2012,
Sem 1 2015,
Summer2016,
Sem 1 2016

COSC2472

City Campus

Postgraduate

171H School of Science

Face-to-Face

Sem 2 2017,
Sem 2 2018,
Sem 2 2019,
Sem 2 2020

COSC2472

City Campus

Postgraduate

175H Computing Technologies

Face-to-Face

Sem 2 2023

Flexible Terms

Course Code

Campus

Career

School

Learning Mode

Teaching Period(s)

COSC2471

City Campus

Undergraduate

171H School of Science

Face-to-Face

UGRDFlex17 (ZZZZ)

COSC2471

City Campus

Undergraduate

171H School of Science

Face-to-Face

UGRDFlex18 (ZZZZ)

COSC2472

City Campus

Postgraduate

171H School of Science

Face-to-Face

PGRDFlex17 (ZZZZ)

COSC2472

City Campus

Postgraduate

171H School of Science

Face-to-Face

PGRDFlex18 (ZZZZ)

Course Coordinator: Shekhar Kalra

Course Coordinator Phone: +61 3 9925 9500

Course Coordinator Email: shekhar.kalra@rmit.edu.au

Course Coordinator Location: 14.10.10A

Course Coordinator Availability: By appointment, by email


Pre-requisite Courses and Assumed Knowledge and Capabilities

Enforced Prerequisites:

Undergraduate

COSC1073 Programming 1 OR,

COSC1284 Programming Techniques OR,

COSC2803 Programming Studio 1 

Postgraduate

COSC1295: Advanced Programming


Course Description

A Mac laptop or iMac is required to complete this course. Latest version of ‘Xcode’ will be used to develop applications. Current SWIFT and the Apple iOS SDK will be used as a basis for teaching programming techniques and design patterns related to the development of standalone applications and mobile portals to enterprise and m-commerce systems.

Emphasis is placed on the processes, tools and frameworks required to develop applications for Apple iPhone and iPad Touch devices. You will work at all stages of the software development lifecycle from inception through to implementation and testing. In doing so, you will be required to consider the impact of user characteristics, device capabilities, networking infrastructure and deployment environment, to develop software capable of meeting the requirements of stakeholders.

This is not a course about design principles for a mobile application, it is an advanced programming elective which requires you to have strong programming skills.


Objectives/Learning Outcomes/Capability Development

Program Learning Outcomes

 

This course contributes to the following program learning outcomes:

 

 

 

 

 

 

 


Course Learning Outcomes

 

Upon successful completion of this course you should be able to:

  1. Describe the limitations and challenges of working in a mobile environment as well as the commercial and research opportunities presented by these technologies.
  2. Apply the different types of application models/frameworks used to develop mobile software applications.
  3. Learn about the components and structure of the iPhone application development framework and know how and when to apply the different components to develop a working system.
  4. Describe and apply software patterns for the development of the application models described above.
  5. Apply critical analysis, problem solving, and team facilitation skills to mobile app software engineering scenarios.


Overview of Learning Activities

The learning activities included in this course are:


Overview of Learning Resources

You will make extensive use of computer laboratories and relevant software provided by the University. You will be able to access course information and learning materials through Canvas and the RMIT Student website.  

A list of recommended learning resources will be provided by your lecturer, including books and web resources. You will also be expected to seek further resources relevant to the focus of your own learning. 

There are services available to support your learning through the University Library. The library provides guides on academic referencing and subject specialist help as well as a range of study support services. For further information, please visit the Library page on the RMIT University website and the RMIT Student website. 


Overview of Assessment

This course will be assessed via assignments

Note: This course has no hurdle requirements.

 

Assessment tasks

 

Assessment Task 1: Written Assignment – Part 1 

Weighting 20%

This assessment task supports CLOs 1, 2 , 4 and 5.

 

Assessment Task 2: Written Assignment - Part 2

Weighting 40%

This assessment task supports CLOs 1, 2, 3, 4 and 5.

 

Assessment Task 3: Final Programming Challenge

Weighting 40%

This assessment task supports CLOs 2, 4 and 5.