Application
This unit describes the skills and knowledge required to undertake advanced programming tasks using a selected choice of another programming language. The language may be an object-oriented language.
It applies to individuals who are programmers required to develop program 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. Code using advanced data structures | 1.1 Design dynamic data structures 1.2 Implement and use dynamic data structures, including double-linked lists and binary trees for coding |
2. Code using advanced algorithms | 2.1 Code using hashing techniques 2.2 Consider and record, the advantages and disadvantages, of at least three sorting algorithms 2.3 Code at least one sorting algorithm 2.4 Code advanced searching techniques for use with complex data structures |
3. Write a simple multi-process application | 3.1 Use features of the language that enable inter-process communication through at least one mechanism 3.2 Use features of the language that allow for operating system ‘signals’ to be captured and responded to |
4. Use third-party libraries | 4.1 Use a third-party library in the construction of an application 4.2 Reference third-party documentation 4.3 Use procedural techniques to write an application, to work within a graphical user interface (GUI) environment |
5. Debug the code | 5.1 Use integrated development environment (IDE) debugging facilities, or a stand-alone debugger 5.2 Use program debugging techniques to detect, and resolve, errors of syntactical, logical and design origin |
6. Document activities | 6.1 Use source-code version control 6.2 Adhere to guidelines for developing maintainable code, and to a set of provided coding standards 6.3 Apply suitable internal documentation to all the code created, using the tools available in the target language |
7. Test the code | 7.1 Design and document the tests to be undertaken 7.2 Undertake limited testing of the produced code, to ensure that it complies with the program specification 7.3 Capture the test results |
8. Create an application | 8.1 Develop a solution, according to program-specification design document 8.2 Design the algorithm, and construct, and test, the application in response to a problem description and language |
Evidence of Performance
Evidence of the ability to:
design and write code using dynamic data structures
write code using hashing techniques, sorting algorithms and advanced searching techniques
use language features that enable inter-process communication and responses to operating system signals
use third-party libraries in the construction of an application, including referencing third-party documentation
design and build an application program according to a design document
test and debug code and resolve errors of a syntactical, logical and design origin
produce documentation according to guidelines and standards.
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:
identify and describe a range of programming languages
identify and describe languages for a GUI environment
summarise the techniques for developing large-scale applications
outline the procedures for programming with complex data structures
describe the procedures for using a third-party supplied library, for standard programming features.
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 documentation.
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 | 4.2, 6.2, 7.2, 8.1 | Interprets, and critically analyses, complex texts and applies the appropriate strategies to construct meaning from complex texts |
Writing | 2.2, 6.1, 6.2, 6.3, 7.1 | Communicates complex relationships between ideas and information, matching the style of writing to the purpose and audience, and displays a knowledge of structure and layout, employing a broad vocabulary, grammatical structure, and the conventions appropriate to text |
Get the work done | All | Accepts responsibility for planning and sequencing complex tasks and workload, negotiating key aspects with others, 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 the agreed criteria Uses analytical processes to decide on a course of action, establishing the criteria for deciding between options Understands the key principles and concepts, underpinning the design and operation of digital systems and tools |
Sectors
Programming and software development