ICTPRG520
Validate an application design against specifications


Application

This unit describes the skills and knowledge required to check a software application design against the specifications, and to apply validation techniques across the system’s life cycle.

It applies to individuals employed in the area of software development who are responsible for verifying and validating software design specifications. They may be software project managers, testers, software engineers, system analysts or software developers.

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. Evaluate the software requirement specifications

1.1 Review the software requirement specifications document prior to design, to ensure that it is complete and correct

1.2 Validate the software requirement specifications document

2. Create a proof of concept prototype

2.1 Use rapid application development tools (RAD) to create a prototype system

2.2 Present the prototype system for demonstration to the appropriate person

2.3 Validate the proof of concept

3. Evaluate the software design

3.1 Determine if the design is complete, accurate, consistent and feasible

3.2 Validate the software design document

3.3 Validate the database structure and its elements

3.4 Validate the user interface (UI)

3.5 Review the software risk analysis

4. Evaluate the source code

4.1 Validate the consistency between the code and the software design document

4.2 Validate logical structure and syntax, using static analysis tools

5. Evaluate the testing requirements

5.1 Review and validate the test plans

5.2 Review and validate the test cases

6. Document the validation

6.1 Document the results of the validation exercise

6.2 Recommend the current software design, or itemise the required alterations

6.3 Submit the report to the appropriate person for action

Evidence of Performance

Evidence of the ability to:

interpret and check software requirement specifications documents

use rapid application development (RAD) tools to create and present a validated proof of concept prototype

validate the software design, source code and testing requirements and document the results

report on results of validation, including recommended actions.

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 the database design and implementation

describe business and technical modelling using UML tools at intermediate level

outline current software development methodologies

describe, in detail, the system development life cycle (SDLC)

explain object-oriented programming

describe open-source development tools

describe software-testing techniques.


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:

tools to create prototype systems

static analysis tools

test plan and test cases.

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

PerformanceCriteria

Description

Reading

1.1

Interprets and critically analyses complex software-requirement specifications

Writing

6.1

Prepares documents using required structure, layout, and conventions

Interact with others

2.2, 6.3

Takes audience, purpose and contextual factors into account, when making decisions about what to communicate, with whom, why, and how

Get the work done

All

Sequences and schedules complex activities, monitors implementation and manages relevant communication

Takes responsibility for decisions about when, and how, to complete tasks and coordinate with others

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

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


Sectors

Programming and software development