Course Title: Develop advanced mobile multi-touch applications

Part B: Course Detail

Teaching Period: Term2 2020

Course Code: COSC7362C

Course Title: Develop advanced mobile multi-touch applications

School: 650T Vocational Business Education

Campus: City Campus

Program: C5395 - 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

emailradhu@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/on-line 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 2020

Week

Week Commencing

Topic

Learning Materials and Activities

Assessment Remarks

1

July 6

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

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

July 13

User Interface

Testing Apps on Physical Devices Android Studio Code Editor

Android Architecture

Creating the following Mobile Applications:

  • Birthday card
  • Displaying sum of two numbers.

 

3

July 20

Views, View Groups and Layouts

User Interface using Android Studio Designer Tool & Java Code

Layout Manager in Designer & XML Layout Resources.

  • Accessing Udacity.com with "Android Basics: User Input" 
  • Coffee App
  • Task 1 - Skills Review – Activity 1
 

4

July 27

Intents

  • Explicit Intents
  • Implicit Intents
  • Basketball Project
  • Constraint layout.

 

5

Aug 3

Debugging – Working on sample projects – Preparation for Task 2

  • Task on Debugging
  • Modify given projects to meet requirement
  • Task 1 - Skills Review – Activity 2

 

6

Aug 10

Given Projects modify background colour, Using Checkboxes, Image, Seek bar etc.

  • Working on Applications

 

7

Aug 17

Introduction to DB - Android SQLite Databases

  • Intro to DB
  • SQL Lite
  • Examples using DB
 

8

Aug 24

Using Databases continued

  • Projects using Databases
  • Task 1 - Skills Review – Activity 3

Task 1 - Skills Reviews -  Due

Mid-Semester break (29th August to 6th September)

9

Sept 7

MVC - Github Project - work on projects. Analysis for Project Stage 1

  • Project using Github
  • Analysis of Project for Reverse Engg.

 

10

Sept 14

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

Multi Language Apps

Analysis of Project for Stage 1

 Task 2 – WIL Project - Stage 1 Due

11

Sept 21

Testing (user acceptance / unit testing)

Feedback on Task 2 Stage 1

Unit Testing – Feedback Assessment 3 – Stage 1

 

12

Sept 28

Handling Different Android Devices and Displays – work on projects to meet client requirements

Project Work

  • Android ListView JDBC Driver Local SQL Server Database
  • Connect Android with PHP, MySQL
  • Android JDBC Database Connection

 

13

Oct 5

Analysis of specific requirements of client towards WIL project

  • Project work

 

14

Oct 12

Work on projects

  • Project work

 

15

Oct 19

Task 2 Stage 2 due

  • Project Presentation

Task 2 – WIL Project – Group Presentation

16

Oct 26

Review and feedback

 

Task 2 – WIL Project – Technical review 


Learning Resources

Prescribed Texts


References

Smyth Neil, Android Studio Development

9780986027376


Other Resources

You will need laptop with charger for each class

  • Windows laptops we do recommend an i5 or better machine with a minimum 4 GB of RAM.
  • Macs you will need 8 GB of RAM to run a virtual machine

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 2 tasks that needs to be completed in this course

1. Task 1 - Skills Review:
The purpose of this assessment is to help you to start building mobile applications for smart devices and testing them on emulators and devices.

Scenario: During the first 8 weeks of the semester, besides building several mobile applications, you will be asked to specifically develop three mobile applications based on requirements and demonstrate the fully functional application to your teacher in class. The details of these activities are given below:

  • Activity 1: In the first activity you will establish the platform to be Android Studio and develop an app that works effectively on this target platform for multi-touch devices. You will install the required development tool and deploy the completed application on the target device. This application will be tested using Android Studio’s emulator or a third-party emulator.
    • You will be asked to design and build a mobile application for a coffee shop, so the customer can order their coffee as they enter the shop.
    • This activity once completed can be demonstrated followed by submission, starting from week 3.
  • Activity 2:  In the second activity you will designing and coding an application to respond to events, taps touches and gestures. You will write code that requires web connectivity and uses web services and to use the facilities of auto-rotation, auto-resizing and using communication protocol to enable devise to communicate locally. You will write code using an application programming interface (API).
    • You will add more functionality to your Coffee app from activity 1 to complete this activity.
    • This activity once completed can be demonstrated followed by submission, starting from week 5.
  • Activity 3: In the third activity you will write code to use data persistence facilities and store data in databases. We will read, write and synchronise data using database facilities, on the chosen device.
    • The same coffee application will be used to incorporate these enhancements.
    • This activity once completed must be submitted end of week 8 (Sunday midnight).

Note: All three activities must be completed and demonstrated by week 8.

The activities in this assessment can be done in class or a convenient workplace. The completed activities must be demonstrated to your teacher in class. Your activities will be accessed against the criteria listed in the observation checklist in Section B of this task. To achieve a satisfactory result, you will need to address all criteria satisfactorily.

2. Task 2 - WIL Project:
This is a group project which covers the skills and knowledge required to design, develop, debug, test and deploy multi-touch Android application. The purpose of this assessment “Apps – WILL Project Task 2” is to develop a functional Android mobile application for a client.

  • Stage 1: Reverse Engineering

In stage 1 of the project you will be given a fully functional mobile application and your task is to analyse this application and document the requirement which would have helped in producing the application. To analyse the mobile application you will use the process of “Reverse Engineering”.  Your document will analyse the following:

    • The Overview and requirements
    • hardware and networking requirement
    • Object oriented concepts and extensible markup language (XML) programming, and web services
    • web design methodologies
    • techniques for developing software applications including domain Model
  • Stage 2: Development, Testing and Deployment

In this assessment you will be developing a Mobile Application for a WIL (Work Integrated Learning) Client based on the requirements given by the client. You will design, develop, test and deploy the application based on the requirements. You will also be presenting the project.


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

Task 1 - Skills Review – Activity 1

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

Task 1 - Skills Review – Activity 2

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

 

Task 2 – WIL 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

Task 1 - Skills Review – Activity 3

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

Task 2 – WIL 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.

Task 2 – WIL 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.

Task 1 - Skills Review – All activities

Task 2 – WIL 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/

Re-submissions

If you are found to be unsuccessful in a Course Assessment Task, you will be allowed one re-submission only. Your teacher will provide feedback regarding what you need to do to improve and will set a new deadline for the re-submission. 

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):

You must demonstrate that you have all the required skills/knowledge/elements in the unit of competency you are studying. You will receive feedback on each assessment task that will inform you about your progress and how well you are performing.

CA       Competency Achieved

NYC    Not Yet Competent

DNS    Did Not Submit for assessment

Course Overview: Access Course Overview