ICTPRG501
Apply advanced object-oriented language skills


Application

This unit describes the skills and knowledge required to undertake advanced programming tasks using an object-oriented programming language.

It applies to individuals who are programmers producing complex object-oriented programming.

No licensing, legislative or certification requirements apply to this unit at the time of publication.


Elements and Performance Criteria

ELEMENT

PERFORMANCE CRITERIA

Elements describe the essential outcomes.

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

1. Develop client-server application

1.1 Build and test object-oriented applications

1.2 Make use of features of language that enable inter-process communication through at least one mechanism

1.3 Make use of features of language that enable remote procedure calls (RPCs) using class based on multiple inheritances

1.4 Build programs using classes based on nested classes

2. Develop graphical user interface (GUI)

2.1 Code to implement drag and drop

2.2 Develop GUI help files

2.3 Code using 2-D graphics

3. Build applications

3.1 Code within existing architectural framework

3.2 Ensure code follows standards for object-oriented language

3.3 Develop application that includes data transfer between client and server

3.4 Review concept of design patterns used by architectural framework

4. Debug code

4.1 Use stand-alone debugging tools or tools provided by integrated development environment to examine running code

4.2 Detect logical and coding errors using debugger

4.3 Detect and correct errors by tracing code and examining variable content

5. Test application

5.1 Design and document tests to be performed

5.2 Undertake limited testing of produced code to ensure it complies with program specification

5.3 Document test results

6. Document system

6.1 Demonstrate adherence to guidelines for developing maintainable code and company or institutional coding standards

6.2 Create code using supplied design documents

6.3 Create and maintain program documentation

6.4 Ensure that user documentation in form of online help is built into applications

Evidence of Performance

Evidence of the ability to:

develop client-server applications using an object oriented language

produce a graphical user interface (GUI)

build, debug and test the applications

produce documentation for the applications.

Note: If a specific volume or frequency is not stated, then evidence must be provided at least once.


Evidence of Knowledge

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

describe the architecture of a framework for web-enabled application development

summarise the techniques for implementing inter-process communication

describe the process for the development of large-size application

identify and outline testing techniques as applied to distributed application development

identify and outline techniques for implementing third-party supplied code.


Assessment Conditions

Gather evidence to demonstrate consistent performance in conditions that are safe and replicate the workplace. Noise levels, production flow, interruptions and time variances must be typical of those experienced in the programming and software development field of work and include access to:

database management system (DBMS)

networked computers

software-development environment

technical requirements.

Assessors must satisfy NVR/AQTF assessor requirements.


Foundation Skills

This section describes language, literacy, numeracy and employment skills incorporated in the performance criteria that are required for competent performance.

Skill

Performance Criteria

Description

Reading

3.2, 6.1, 6.2

Interprets and critically analyses complex texts and applies appropriate strategies to construct meaning from complex standards and guidelines documents

Writing

5.1, 6.1, 6.3

Displays knowledge of structure and layout, employing broad vocabulary, grammatical structure and conventions appropriate to text when creating program documentation and documenting tests and test results

Numeracy

1.3, 1.4

Selects from, and applies, an expanding range of mathematical and problem-solving strategies

Get the work done

All

Accepts responsibility for planning and sequencing complex tasks and workload, taking into account capabilities, efficiencies and effectiveness

Uses systematic, analytical processes in complex, non-routine situations, setting goals, gathering relevant information, and identifying and evaluating options against agreed criteria

Uses analytical processes to decide on a course of action, establishing criteria for deciding between options

Understands key principles and concepts underpinning the design and operation of digital systems and tools


Sectors

Programming and software development