ICAPRG409A
Develop mobile applications

This unit describes the performance outcomes, skills and knowledge required to 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).

Application

This unit is relevant to those who work as mobile device application developers. They may be programmers, game developers, designers, or testers who are working in the area of mobile applications development.

The context of the unit applies to all development platform environments which provide tools to build and deploy applications into the target platform environment, such as Android, Symbian, Java ME, .NET compact platform, iPhone, Google phone and BlackBerry.


Prerequisites

Not applicable.


Elements and Performance Criteria

1. Define a platform

1.1 Determine target platform for the hand-held device

1.2 Choose and evaluate a development environment based on the target platform, hardware and mobile phone manufacturer on which the application will run

1.3 Prepare and configure the application development environment

2. Design user interface for a mobile application

2.1 Create views for different screen orientations and resolutions

2.2 Integrate appropriate navigation techniques

2.3 Design page layout and content

2.4 Integrate appropriate user input techniques

3. Permit the personalisation of parameters

3.1 Write code to allow users to configure application settings

3.2 Write code to allow users to configure application output, such as text size, brightness and sound effects

4. Build user interface for a mobile application

4.1 Itemise the required functionality

4.2 Build user interface in the determined development environment to fulfil this functionality

5. Connect to data sources

5.1 Bind controls to data sources

5.2 Persist data using eXtensible markup language (XML) serialisation

5.3 Access remote data using XML web services

6. Test and debug a mobile device application

6.1 Test application for overall functionality according to requirements

6.2 Iterate application design or build until test results meet requirements

7. Deploy a mobile device application

7.1 Create application packaging for deployment

7.2 Deploy an application to target devices

Required Skills

Required skills

analytical skills to:

design 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 programming debugging skills

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

technical skills to:

create XML documents

design user interface

develop software applications

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: HTML, JavaScript, cascading style sheet (CSS), and AJAX

detailed knowledge of XML programming and web services.

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, build, test and deploy applications for small devices:

mobile phones

pocket PCs

personal digital assistants (PDAs)

enterprise digital assistants (EDAs).

Context of and specific resources for assessment

Assessment must ensure access to:

hand-held devices or stimulators

integrated development environment (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 example is appropriate for this unit:

verbal or written questioning to assess knowledge of mobile development environment.

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

Google iPhone

Java ME

.NET compact platform

Symbian.

Development environment may include:

cross-platform deployment

emulator availability

frameworks:

Flash

Java Platform, Micro Edition and Java Platform Standard Edition

.NET compact platform

Qtopia for embedded Linux-based mobile devices

Sprout Core (open-source JavaScript framework)

wireless application protocol (WAP)

integrated development environment:

BlackBerry

Eclipse

NetBeans

Visual Studio

XCode

languages:

C#

C/C++

Java

JavaScript

Objective-C

Perl hypertext pre-processor (PHP)

Python

Ruby

Visual Basic (VB) or VBScript

wireless markup language (WML)

server and client tools libraries and tools.

Navigation may include:

access keys

image maps

navigation bar

navigation links.

Layout and content may include:

content:

bandwidth

limited screen area

load time and cost

use clear language

layout:

font and colour

images

page size

positioning controls

scrolling to display content.

User input may include:

multi-press

multi-touch

on-screen keyboard

phone keypad.


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.