Course Title: Develop advanced mobile multi-touch applications

Part B: Course Detail

Teaching Period: Term2 2019

Course Code: COSC7362C

Course Title: Develop advanced mobile multi-touch applications

School: 650T Vocational Business Education

Campus: City Campus

Program: C5341 - Diploma of Information Technology

Course Contact: Val Christou

Course Contact Phone: +61 3 9925 5076

Course Contact Email: val.christou@rmit.edu.au


Name and Contact Details of All Other Relevant Staff

Course Leader: Radhu Punchnathan

radhu@rmit.edu.au

Phone: +61 3 99251409

Nominal Hours: 80

Regardless of the mode of delivery, represent a guide to the relative teaching time and student effort required to successfully achieve a particular competency/module. This may include not only scheduled classes or workplace visits but also the amount of effort required to undertake, evaluate and complete all assessment requirements, including any non-classroom activities.

Pre-requisites and Co-requisites

None

Course Description

This unit describes the skills and knowledge required to design, develop, debug, test and deploy applications, for hand-held digital devices using the advanced features of these devices.

It applies to individuals with information and communications technology (ICT) skills who work as mobile device application developers. They may be programmers, game developers, designers and testers, who are working in the area of mobile applications development.


National Codes, Titles, Elements and Performance Criteria

National Element Code & Title:

ICTPRG601 Develop advanced mobile multi-touch applications

Element:

1. Work effectively on the target platform

Performance Criteria:

1.1 Review the requirements
1.2 Establish the platform
1.3 Install the required development tools, and environment
1.4 Use the available debugging tools and techniques
1.5 Deploy the completed applications on the target device, and for public download
1.6 Test the application using an emulator

Element:

2. Develop an application for a multi-touch device

Performance Criteria:

2.1 Design and code the application, responding to events
2.2 Design and code the application, responding to taps, touches and gestures
2.3 Use a model view controller to design the approach
2.4 Develop the application, making effective use of auto-rotation and auto-resizing facilities

Element:

3. Develop the code using features of the mobile device

Performance Criteria:

3.1 List the available features of the mobile device
3.2 Write code requiring web connectivity, and using web services
3.3 Write code that communicates with another device, using a communication protocol
3.4 Write code using an application programming interface (API) related to at least one other advanced device feature

Element:

4. Use available data persistence facilities

Performance Criteria:

4.1 Write code, to read and write, to the devices file system
4.2 Use synchronisation techniques to synchronise data between the device and external data sources
4.3 Write code to make use of available database facilities, on the chosen device

Element:

5. Develop applications that are secure and stable

Performance Criteria:

5.1 Determine and apply the performance objectives
5.2 Ensure memory management, using tools and techniques effectively
5.3 Use tools and techniques to evaluate performance
5.4 Eliminate zombies, using appropriate tools and techniques


Learning Outcomes



Details of Learning Activities

A range of learning activities are planned for this course including self-paced and collaborative classroom based activities.

Learning activities will include laboratory-based sessions on a variety of topics as shown in the weekly breakdown. Learning activities will generally consist of practical computer exercises based on teacher online handouts. Students should attend all sessions.

Students will also be expected to undertake work on a variety of activities for homework.

The collaborative classroom based activities will include group discussion, group problem solving activities and opportunities to practice your skills in a simulated/real workplace environment.

We expect you to participate and contribute in all scheduled learning activities.


Teaching Schedule

The nominal hours associated with this are a guide only and represent the total teaching time and student effort required to successfully complete the course. This may include not only scheduled classes but also the amount of effort required to undertake, evaluate and complete all assessment requirements, including any non-classroom activities.

Semester 2 2019

 

 

Week

Week Commencing

Topic

Learning Materials and Activities

Assessment Remarks

1

8 July  

Introduction to the Course including:
• Course requirements
• Course support documents
• Course Canvass access
• Accuracy of enrolment
• Assessment requirements/Cover Sheets
• Reminder re Plagiarism
• Reminder re Appeals
• Extensions /Resubmissions
• Feedback in this course
• Reminder re submission requirements
• Getting help
Introduction and Setting up an Android Studio Development Environment - Creating an App using Android Studio IDE - Virtual Device (AVD) – Review of Java and tutorials in Udacity.

  • Installing Android studio
  • Review of Java from previous semester.
  • Accessing Udacity.com with Android Basics: User Interface

 

2

 15 July 

User Interface - Testing Apps on Physical Devices - Android Studio Code Editor - Android Architecture - The Anatomy of an Android Application- Practical exercises in class - Basics of Android

Creating the following Mobile Applications:

  • Birthday card
  • Display Text
  • Display with Button
  • Displaying sum of two numbers.

 

3

 22 July 

Views, View Groups and Layouts - User Interface using Android Studio Designer Tool & Java Code - GridLayout Manager in Designer & XML Layout Resources - Practical exercises in class (Coffee Break)

  • Accessing Udacity.com with "Android Basics: User Input" 
  • Practice session for Assessment 1.

 

4

 29 July 

Assessment 1 in class - Debugging

  • Assessment 1 in class
  • Understanding debugging

Assessment 1

5

 5 Aug

Intents - Application and Activity Lifecycles - Activity State Changes - Saving and Restoring the State of an -- Practical exercises in class (Basketball Project, modifying given applications to new requirements)

  • Constraint layout.
  • Intents
  • Given 5 Sample projects to modify

 

6

 12 Aug 

Introduction to DB - Android SQLite Databases

  • Intro to DB
  • SQL Lite
  • Examples using DB

 

7

 19 Aug

Databases continued - Fragments- Practical exercises in class.

  • Practical practice for test (Explicit and Implicit Intents)

 

8

 26 Aug 

Assessment 2 in class

  • Assessment 2 in class

Assessment 2

Break (Monday 2nd September to 6th September 2019)

9

 9 Sept

Multi Language apps - Multitasking - Gesture - Google maps - Analysis of Project for stage 1 submission.

  • (Udacity) - Android Basics: Multiscreen Apps Multi Language Apps – Analysis of Project for Stage 1 – APP WITH DB

 

10

 16 Sept

MVC - Github Project - Question on Reverse Engineering - work on projects.

  • MVC - GITHUB – Analysis for Project Stage 1

 

11

 23 Sept

Assessment 3 Stage 1 due

  • Applications – Stage 1 of Assessment 3

Assessment 3
Stage 1 (Group project demo) 

12

 30 Sept

Testing (user acceptance / unit testing)

  • Unit Testing – Feedback Assessment 3 – Stage 1

 

13

 7 Oct

Handling Different Android Devices and Displays – work on projects

Project Work

  • Android ListView JDBC Driver Local SQL Server Database
  • How to connect Android with PHP, MySQL
  • Android JDBC Database Connection

 

14

14 Oct 

Work on projects

  • Project work

 

15

 21 Oct

Assessment 2 - group project presentation – due

  • Project Presentation

Assessment 3
Stage 2 (Group project demo)

16

28 Oct

Review and feedback

 

 


Learning Resources

Prescribed Texts

Smyth Neil, Android Studio Development Essentials, 6thd Edition

9780986027376


References

There is no prescribed text book for this course. However the following book is recommended for references:
Welling, L & Thomson, L, 4th Edition (2009), PHP and MySQL Web Development, Pearson Education, ISBN-13: 978-0672329166

978-067232916


Other Resources

You will need laptop with charger for each class.   You may also refer to various media, websites, textbooks and e-books as indicated in Canvas


Overview of Assessment

In order to achieve competency in this unit, you must provide:

Performance Evidence

 Evidence of the ability to:

  • design applications for small devices that allow multi-touch user input and have advanced mobile features
  • build and test these applications
  • deploy these applications onto mobile devices.

Knowledge Evidence

To complete the unit requirements safely and effectively, you must:

  • summarise the hardware, and networking, requirements of a multi-touch application
  • describe and apply object-oriented programming
  • identify and describe user interface designs, and their application
  • describe web design methodology and its integration with hand-held devices
  • identify and describe typical mobile devices that use multi-touch technologies
  • summarise extensible markup language (XML) programming, and web services
  • describe techniques for developing software applications.

 Assessment Conditions

Assessment must be conducted in a safe environment where evidence gathered demonstrates consistent performance in conditions that are safe and replicate the workplace. Noise levels, production flow, interruptions and time variances should be typical of those experienced in the programming and software development industry, and include access to:

  • hand-held devices and simulators
  • an integrated development environment (IDE)
  • the internet and web services
  • the server system, with sufficient privileges to deploy applications
  • specific tools and licences, depending on the particular platform.

You are advised that you are likely to be asked to personally demonstrate your assessment work to your teacher to ensure that the relevant competency standards are being met.

Feedback

Feedback will be provided throughout the semester in class and/or online discussions.  You are encouraged to ask and answer questions during class time and online sessions so that you can obtain feedback on your understanding of the concepts and issues being discussed. Finally, you can email or arrange an appointment with your teacher to gain more feedback on your progress.

You should take note of all feedback received and use this information to improve your learning outcomes and final performance in the course.       


Assessment Tasks

There are 3 assessments in this course

1. Assessment 1: (Week 4)
This is an in class practical lab activity. It covers all topics covered up to week 3 where the student will be asked to design a user interface and a related activity and demonstrate it.

2. Assessment 2: (Week 8)
This is an in class practical lab activity. It covers all topics covered up to week 7 which includes development with different layout elements and multiple screen views. There will also be a MCQ (Multiple Choice Quiz) task that needs to be done in class.

3. Assessment 3:
This is a group project which covers the skills and knowledge required to design, develop, debug, test and deploy multi-touch Android application.
a. Stage 1: Analysis and Design (Week 11)
Requirement Analysis Document Due (Product Overview, Functional Requirements, supplementary requirements/constraints, Domain Model (Class Diagram), Glossary)
b. Stage 2: Development, Testing and Deployment (Week 15)
Test plan documentation and product demo


Assessment Matrix

ELEMENT / PERFORMANCE CRITERIA

ASSESSMENTS DETAIL

Elements describe the essential outcomes.

Performance criteria describe the performance needed to demonstrate achievement of the element.

 

1. Work effectively on the target platform

1.1 Review the requirements

1.2 Establish the platform

1.3 Install the required development tools, and environment

1.4 Use the available debugging tools and techniques

1.5 Deploy the completed applications on the target device, and for public download

1.6 Test the application using an emulator

Assessment 1 - Test

2. Develop an application for a multi-touch device

2.1 Design and code the application, responding to events

2.2 Design and code the application, responding to taps, touches and gestures

2.3 Use a model view controller to design the approach

2.4 Develop the application, making effective use of auto-rotation and auto-resizing facilities

Assessment 3 - Project

3. Develop the code using features of the mobile device 3.1 List the available features of the mobile device

3.2 Write code requiring web connectivity, and using web services

3.3 Write code that communicates with another device, using a communication protocol

3.4 Write code using an application programming interface (API) related to at least one other advanced device feature

 

Assessment 1 - Test

Assessment 2 - Test

Assessment 3 - Project

 

4. Use available data persistence facilities.

4.1 Write code, to read and write, to the devices file system

4.2 Use synchronisation techniques to synchronise data between the device and external data sources

4.3 Write code to make use of available database facilities, on the chosen device

Assessment 3 - Project

 

5. Develop applications that are secure and stable

5.1 Determine and apply the performance objectives

5.2 Ensure memory management, using tools and techniques effectively

5.3 Use tools and techniques to evaluate performance

5.4 Eliminate zombies, using appropriate tools and techniques

Assessment 2 - Test

Assessment 3 - Project

Performance Evidence

Evidence of the ability to:

  • design applications for small devices that allow multi-touch user input and have advanced mobile features
  • build and test these applications
  • deploy these applications onto mobile devices.

Assessment 1 - Test

Assessment 2 - Test

Assessment 3 - Project

 

Knowledge Evidence

To complete the unit requirements safely and effectively, the individual must:

  • summarise the hardware, and networking, requirements of a multi-touch application
  • describe and apply object-oriented programming
  • identify and describe user interface designs, and their application
  • describe web design methodology and its integration with hand-held devices
  • identify and describe typical mobile devices that use multi-touch technologies
  • summarise extensible markup language (XML) programming, and web services
  • describe techniques for developing software applications.

Assessment 1 - Test

Assessment 2 - Test

Assessment 3 - Project

 

Other Information

 

Submission Requirements

You should:

  • Ensure that you submit assessments on or before the due date via CANVAS.
  • Always retain a copy of your assessment tasks. (hard copy and soft copy)
  • When you submit work for assessment at RMIT University you need to use a cover sheet that includes a declaration and statement of authorship. You must complete, sign and submit a cover sheet with all work you submit for assessment, whether individual or group work. On the cover sheet you declare that the work you are presenting for assessment is your own work.
  • Each page of your assessment should include footer with your name, student number, the title of the assessment, unit code and title and page numbers. For example, Julie Macpherson, 324567, Task 2, OHS2345C Ensure safe workplace, Page 1 of 10.
  • Projects must be submitted via Canvas.

 

Late Submission Procedures

You are required to submit assessment items and/or ensure performance-based assessment is completed by the due dates. 
If you are prevented from submitting an assessment item on time, by circumstances outside your control, you may apply in advance to your teacher for an extension to the due date of up to seven calendar days.

More Information: https://www.rmit.edu.au/students/student-essentials/assessment-and-exams/assessment/extensions-of-time-for-submission-of-assessable-work
Form to use: http://mams.rmit.edu.au/seca86tti4g4z.pdf

Special Consideration Procedures

Where an extension of greater than seven days is needed, you must apply for special consideration. Applications for special consideration must be submitted no later than two working days after the assessment task deadline or scheduled examination

More Information: https://www.rmit.edu.au/students/student-essentials/assessment-and-exams/assessment/special-consideration
Online special consideration link: https://specon.rmit.edu.au/specon/

Resubmissions

If you are found to be unsuccessful in a Course Assessment Task, you will be allowed one resubmission only. Your teacher will provide feedback regarding what you need to do to improve and will set a new deadline for the resubmission. The highest grade you will receive if your resubmission is successful is “CAG”. 

If you are still not meeting the assessment requirements you must apply to your Program Manager in writing outlining the steps you will take to demonstrate competence in your course. Your submission will be considered by the Program Team and you will be advised of the outcome as soon as possible.

Adjustments to Assessment

In certain circumstances students may be eligible for an assessment adjustment. For more information about the circumstances under which the assessment arrangements might be granted please access the following website.

More Information: https://www.rmit.edu.au/students/student-essentials/assessment-and-exams/assessment/adjustments-to-assessment

Marking Guide (Courses delivered in accordance with competency-based assessment, but which also utilise graded assessment)

After achieving competency, we then grade your performance in the course/cluster and you will achieve one of the following grades:

Final Grades Table:

CHD   Competent with High Distinction

CDI     Competent with Distinction

CC      Competent with Credit

CAG   Competency Achieved – Graded

NYC   Not Yet Competent

DNS   Did Not Submit for assessment

 

Further information regarding the application of the grading criteria will be provided by your teacher. 

Course Overview: Access Course Overview