ICTPRG416
Manage a software component re-use library


Application

This unit describes the skills and knowledge required to store, document and maintain information and communications technology (ICT) components for reuse.

It applies to individuals in a software development area who are required to manage a library that contains reusable code.

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. Specify the components for re-use library

1.1 Determine component suitability for reuse by checking its quality, and uses

1.2 Review the size and complexity of re-use components for generalisation, and remove project-specific refinements

1.3 Evaluate the components, including patterns, clusters and frameworks, and break them down into smaller components for greater flexibility or use

1.4 Review the components for duplication, and remove the duplicates

2. Document the re-use library

2.1 Document the components internally and externally, to ensure efficient retrieval

2.2 Document public constants, data structures, component interfaces and limitations

2.3 Document the possible relationships between data structures or objects

2.4 Provide an example code, demonstrating the use of components within the documentation

2.5 Document the development environment configuration

2.6 Provide simple test programs to prove the functionality of the library

3. Set up the library structure

3.1 Classify data structures or objects in a consistent and logical manner

3.2 Ensure that the library has a logical structure so that the user is aware of the library contents, and can understand the logic of how the functionality may be used by another developer

3.3 Develop the structure in such a manner that it avoids redundancy within the library

3.4 Configure the development environment to automate the build of re-use components, and the library

3.5 Take action to ensure that interfaces to the library components are consistent and abstracted

3.6 Add, update, and remove re-use components, as development is undertaken

Evidence of Performance

Evidence of the ability to:

manage a software component re-use library

specify the re-use library components

document the re-use library components

ensure logical structuring and interface facilitate retrieval and use.

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:

explain abstraction of code module interfaces

describe the features of component libraries

explain the design paradigms

describe patterns, frameworks and idioms

describe the re-use components, and metrics

describe the content and structure of re-use libraries.


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 industry, and include access to:

the 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

1.1-1.4, 3.2

Critically analyses documentation from a variety of sources and records, and consolidates information

Writing

2.1-2.6, 3.3, 3.4, 3.6

Communicates complex relationships between ideas and information, matching the style of writing to the purpose and audience

Displays a knowledge of structure and layout, employing appropriate vocabulary, grammatical structure and conventions

Get the work done

1.1-1.4, 3.1-3.6

Sequences and schedules complex activities, monitors implementation, and manages relevant communication in producing a logical structure for the component library

Uses systematic, analytical processes in complex, non-routine situations, setting goals, gathering relevant information and identifying, and evaluating, options against the agreed criteria when determining the suitability of components

Applies formal problem-solving processes when tackling an unfamiliar problem, breaking complex issues into manageable parts, and identifying, and evaluating, several options for action

Uses a systematic process to identify possible solutions to a difficult problem

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


Sectors

Programming and software development