Unit purpose
The general aim of this Unit is to develop knowledge and understanding of advanced concepts and practical problem-solving skills in software design and development through appropriate software development environments.
Learners will develop their programming and computational thinking skills by designing, implementing, testing and evaluating practical solutions and explaining how these programs work. They will also develop an understanding of computer architecture and the concepts that underpin how programs work.
Outcomes
Learners will also gain an awareness of the impact of contemporary computing technologies.
Learners who complete this Unit will be able to:
- Explain how programs work, drawing on an understanding of advanced concepts in software development and computer architecture
- Develop modular programs using one or more software development environments
Outcomes and assessment standards
Learning Outcome 1
The learner will:
1 Explain how programs work, drawing on an understanding of advanced concepts in software development and computer architecture by:
1.1 Reading and explaining code
1.2 Describing the purpose of a range of programming constructs and how they work
1.3 Describing how a range of standard algorithms work
1.4 Describing how programs relate to low-level structures and operations
The range of programming constructs should include sub-programs, parameters userdefined functions and sequential file operations. The range of standard algorithms should include input validation, linear search, finding minimum and maximum and counting occurrences.
Learning Outcome 2
The learner will:
2 Develop modular programs using one or more software development environments by:
2.1 Applying contemporary design and development methodologies
2.2 Selecting and using combinations of appropriate constructs
2.3 Selecting and using appropriate simple and structured data types, including
1-D arrays
2.4 Testing digital solutions systematically
2.5 Applying aspects of good programming technique — meaningful variable names,
internal commentary, indentation
The range of programming constructs should include sub-programs, parameters and sequential file operations. Programs should include at least two data types, including 1-D arrays.
