ICAPRG601A
Develop advanced mobile multi-touch applications

This unit describes the performance outcomes, skills and knowledge required to design, develop, debug, test and deploy applications for hand-held devices such as mobile phones, pocket PCs, personal digital assistants (PDAs) and enterprise digital assistants (EDAs) using advanced features of these devices.

Application

This unit applies to mobile device application developers. They may be programmers, game developers, designers and testers who are working in the area of mobile applications development.

The context of the unit applies to development platform environments that provide tools to build and deploy applications into the target platform environment, such as Android, Symbian, Java ME, Compact Framework, iPhone, and a number of other mobile development platforms.


Prerequisites

Not applicable.


Elements and Performance Criteria

1. Work effectively on target platform

1.1 Review requirements

1.2 Establish platform

1.3 Install required development tools and environment

1.4 Use available debugging tools and techniques

1.5 Deploy completed applications on target device and for public download

1.6 Test application using an emulator

2. Develop an application for a multi-touch device

2.1 Design and code application responding to events

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

2.3 Use a model view controller design approach

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

3. Develop code using the 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 application programming interface (API) related to at least one other advanced device feature

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 chosen device

5. Develop applications that are secure and stable

5.1 Determine and apply 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

Required Skills

Required skills

analytical skills to:

analyse designs for small devices

evaluate appropriate mobile-development environment

communication skills to provide advice and guidance to others

literacy skills to read and interpret technical and non-technical information

numeracy skills to make basic calculations for specifying the layout of the mobile-user interface design

problem-solving skills to:

address common problems in building and deploying mobile applications

perform basic program-debugging skills

research skills to find and evaluate relevant technologies in mobile applications development

technical skills to:

create eXtensible markup language (XML) documents

design user interface

test and debug applications

use an integrated development environment (IDE).

Required knowledge

basic knowledge of:

hardware and networking

object-oriented programming

user interface design

web design

detailed knowledge of:

XML programming and web services

techniques for developing software applications.

Evidence Required

The evidence guide provides advice on assessment and must be read in conjunction with the performance criteria, required skills and knowledge, range statement and the Assessment Guidelines for the Training Package.

Overview of assessment

Critical aspects for assessment and evidence required to demonstrate competency in this unit

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 on mobile phones, pocket personal computers, PDAs and EDAs.

Context of and specific resources for assessment

Assessment must ensure access to:

hand-held devices and simulators

IDE

internet and web services

server system with sufficient privileges to deploy applications

specific tools and licences, depending on particular platform

appropriate learning and assessment support when required

modified equipment for people with special needs.

Method of assessment

A range of assessment methods should be used to assess practical skills and knowledge. The following examples are appropriate for this unit:

verbal or written questioning to assess candidate’s knowledge of mobile development environment

evaluation of candidate’s mobile application, including its distribution to target devices.

Guidance information for assessment

Holistic assessment with other units relevant to the industry sector, workplace and job role is recommended, where appropriate.

Assessment processes and techniques must be culturally appropriate, and suitable to the communication skill level, language, literacy and numeracy capacity of the candidate and the work being performed.

Indigenous people and other people from a non-English speaking background may need additional support.

In cases where practical assessment is used it should be combined with targeted questioning to assess required knowledge.


Range Statement

The range statement relates to the unit of competency as a whole. It allows for different work environments and situations that may affect performance. Bold italicised wording, if used in the performance criteria, is detailed below. Essential operating conditions that may be present with training and assessment (depending on the work situation, needs of the candidate, accessibility of the item, and local industry and regional contexts) may also be included.

Platform may include:

Android

BlackBerry

iPhone

Java ME

.NET Compact Framework

Symbian.

Development tools may include:

cross-platform deployment

emulator availability

frameworks:

Flash

Java Platform, Micro Edition and Java Platform

Net compact platform

Qtopia for embedded Linux-based mobile devices

Sprout Core (open-source JavaScript framework)

Standard Edition

IDE:

BlackBerry SDK

Eclipse

NetBeans

Visual Studio

XCode

languages:

C#

C/C++

Java

JavaScript

Objective-C

PHP

WML

server and client tools, libraries and tools:

Core Data

JavaScript

SQL Lite

SQL Server Compact Edition.

Communication protocol may include:

Bluetooth

general packet radio service (GPRS)/3G

radio frequency identification (RFID).

Device feature may include:

accelerometer

address book

animation

audio

camera

compass

map

GPS

video.


Sectors

Programming and software development


Employability Skills

This unit contains employability skills.


Licensing Information

No licensing, legislative, regulatory or certification requirements apply to this unit at the time of endorsement but users should confirm requirements with the relevant federal, state or territory authority.