Course Title: Mobile Application Development
Part A: Course Overview
Course Title: Mobile Application Development
Credit Points: 12.00
Terms
Course Code |
Campus |
Career |
School |
Learning Mode |
Teaching Period(s) |
COSC2309 |
City Campus |
Undergraduate |
140H Computer Science & Information Technology |
Face-to-Face |
Sem 2 2006, Sem 1 2007, Sem 1 2008, Sem 1 2009, Sem 1 2010, Sem 1 2011, Sem 1 2012, Sem 1 2013, Sem 2 2014, Sem 2 2015 |
COSC2309 |
City Campus |
Undergraduate |
171H School of Science |
Face-to-Face |
Sem 2 2017, Sem 2 2018, Sem 1 2019 |
COSC2347 |
City Campus |
Postgraduate |
140H Computer Science & Information Technology |
Face-to-Face |
Sem 2 2006, Sem 1 2007, Sem 1 2008, Sem 1 2009, Sem 1 2010, Sem 1 2011, Sem 1 2012, Sem 1 2013, Sem 2 2014, Sem 2 2015 |
COSC2347 |
City Campus |
Postgraduate |
171H School of Science |
Face-to-Face |
Sem 2 2017, Sem 2 2018, Sem 1 2019 |
COSC2543 |
RMIT University Vietnam |
Undergraduate |
140H Computer Science & Information Technology |
Face-to-Face |
Viet3 2011, Viet1 2012, Viet2 2012, Viet3 2012, Viet1 2013, Viet3 2013, Viet1 2015, Viet3 2015, Viet3 2016 |
COSC2543 |
RMIT University Vietnam |
Undergraduate |
171H School of Science |
Face-to-Face |
Viet2 2017, Viet3 2018, Viet3 2020, Viet3 2021 |
COSC2543 |
RMIT University Vietnam |
Undergraduate |
175H Computing Technologies |
Face-to-Face |
Viet3 2022, Viet3 2023 |
COSC2729 |
RMIT Vietnam Hanoi Campus |
Undergraduate |
175H Computing Technologies |
Face-to-Face |
Viet3 2023 |
Course Coordinator: Dr Caspar Ryan
Course Coordinator Phone: +61 3 9925 9775
Course Coordinator Email: caspar.ryan@rmit.edu.au
Course Coordinator Location: City campus, 14.11.32
Course Coordinator Availability: By appointment
Pre-requisite Courses and Assumed Knowledge and Capabilities
Enforced Prerequisite:
COSC1295 Advanced Programming
OR
COSC2391 Software Architecture Design and Implementation
You may not enrol in this course unless one of these courses is explicitly listed in your enrolment program summary.
Note it is a condition of enrolment at RMIT that you accept responsibility for ensuring that you have completed the prerequisite/s and agree to concurrently enrol in co-requisite courses before enrolling in a course.
For your information the RMIT Course Requisites policy can be found at Course requisites – 7.29.1.6: http://www.rmit.edu.au/browse;ID=twx09y07zi1c
Course Description
This course is concerned with the development of applications on mobile computing platforms. Android will be used as a basis for teaching programming techniques and design patterns related to the development of standalone applications and mobile interfaces to enterprise and cloud systems. Emphasis is placed on the processes, tools and frameworks required to develop applications for current and emerging mobile computing devices. You should work at all stages of the software development life-cycle from inception through to implementation and testing. In doing so, you will be required to consider the impact of user characteristics, device capabilities, networking and cloud infrastructure and deployment environment, in order to develop software capable of meeting the requirements of stakeholders.
Objectives/Learning Outcomes/Capability Development
Program Learning Outcomes
This course contributes to the following Program Learning Outcomes.
-
Knowledge
Apply a broad and coherent set of knowledge and skills for developing user-centric solutions for contemporary societal challenges. -
Problem Solving
Apply systematic problem solving and decision-making methodologies to identify, design and implement computing solutions to real world problems, demonstrating the ability to work independently to self-manage processes and projects. -
Cognitive and Technical Skills
Critically analyse and evaluate user requirements and design systems employing software development tools, techniques and emerging technologies.
Upon successful completion of this course you should be able to:
- Describe and compare different mobile application models/architectures and patterns.
- Apply mobile application models/architectures and patterns to the development of a mobile software application.
- Describe the components and structure of a mobile development framework (Google’s Android Studio).
- Apply a mobile development framework to the development of a mobile application.
- Demonstrate advanced Java programming competency by developing a maintainable and efficient cloud based mobile application.
- Address the limitations and challenges of working in a mobile environment and thus utilise the opportunities for commercial and/or social benefit.
Overview of Learning Activities
The learning activities included in this course are:
- Lectures: In general, lectures will be based upon the prescribed text and lecture notes. Where other material is used, explicit references will be given, with preference going to material that is widely available (e.g. freely available on the WWW or in the library). Because this course has an emphasis on software development in practice, students will be exposed to demonstrations of application development using a laptop computer, a projector and mobile devices where possible.
- TuteLabs: In general tutelab exercises are practical in nature and mostly relate to the assignment work so that students incrementally gain the skills required to develop a working mobile application rather than having to apply a broad range of knowledge and combine a number of different skills and capabilities in a single large effort.
Canvas: All learning materials will be available on Canvas including lecture notes, tute/lab exercises, example source code and recorded lectures. Students will also participate in discussion with staff and other students via the online discussion board.
A total of 120 hours of study is expected during this course, comprising:
Teacher-directed hours (48 hours): lectures and tutorials/laboratory sessions. Each week there will be 2 hours of lecture plus 2 hours of combined tutorial and practical (tutelab) work in the computer laboratory. You are encouraged to participate during lectures through asking questions, commenting on the lecture material based on your own experiences and by formulating solutions to small informal exercises. The tutorial/laboratory sessions will introduce you to the tools necessary to undertake the assignment work.
Student-directed hours (72 hours): You are expected to be self-directed, studying independently outside class.
Overview of Learning Resources
The course is supported by the Canvas learning management system which provides specific learning resources. See the RMIT Library Guide at http://rmit.libguides.com/compsci
Overview of Assessment
The assessment for this course comprises a practical component in two parts (assignment part 1 and 2) and a written exam component. The practical will be evaluated through both a laboratory demonstration and analysis of your source code and documentation. The exam will take place under standard exam conditions.
Note: This course has no hurdle requirements.
Assessment tasks
Assessment 1: Assignment part 1
In this assignment you will implement a standalone Android mobile application with a basic user interface.
Weighting 20%
This assessment task supports all CLOs 1-6.
Assessment 2: Assignment part 2
In this assignment you will extend your solution from assignment 1 to incorporate local database storage and cloud integration.
Weighting 30%
This assessment task supports all CLOs 1-6.
Assessment 3: End-of-semester Examination
Weighting 50%
This assessment supports CLOs 1, 2, 3 & 6.
Please note that postgraduate students are expected to demonstrate knowledge and skills at postgraduate level.