Navigation Menu

Stage 2 | Subject outline | Version control

Digital Technologies Stage 2
Subject outline

Version 4.0 - For teaching in 2024.
Accredited in November 2016 for teaching at Stage 2 from 2019.

Stage 2 | Subject outline | Content | Focus area 2: Design and programming

Focus area 2: Design and programming

Students work individually and collaboratively to create practical, innovative solutions to problems of interest. They use computational thinking strategies to develop a series of related instructions that can be executed by computer hardware. Students design and check a solution, and ensure that all design considerations have been met. They code the program using a general‑purpose programming language (GPL) and validate the solution. A solution may take the form of a product, prototype, and/or proof of concept.

Students develop and apply their understanding of program design, pseudocode, simple constructs, array processing, and modularisation. Some students may also wish to explore object‑oriented design. 

Students review, develop, and extend the building blocks of a GPL (variables, expressions, assignment, and input/output commands), and the simple constructs of sequence, selection, and iteration.

Students describe the purpose of the code using comments (annotations) so that another person can read, understand, apply, and/or edit the program or algorithm.

Students practise testing techniques by fixing syntactic and runtime errors, and they correct logic errors by creating and executing test cases. Students explore software development tools to support code development and maintenance.

Self‑assessment tools or skills frameworks may be used to support the development and application of students’ skills in working collaboratively.

The following framework provides a set of possible techniques and strategies that can be used for learning.

Key learning elaboration
possible and strategies techniques
Design thinking

Students design a solution.



Students use computational thinking skills to design a solution prior to coding.

Programming skills

Students are introduced to software‑development tools to support code development.


Students code the program using a general‑purpose programming language (GPL).



Students use software‑development tools such as integrated development environments (IDEs), debuggers, and compilers/interpreters to support code development.

Students develop code feature by feature.

Students review, develop, and extend the building blocks of a GPL (variables, expressions, assignment, and input/output commands), and the simple constructs of sequence, selection, and iteration.

Students review and use basic data structures (strings, numbers, Booleans, and arrays).

Students describe the purpose of the code using comments (annotations) so that another person can read, understand, apply, and/or edit the program or algorithm.

Testing and maintenance

Students practise testing techniques by fixing syntactic and runtime errors, and logic errors, by creating and executing test cases.



Students validate the solution.



Students explore software‑development tools to support code development and maintenance.



Students test code feature by feature.

Students practise testing and debugging methods and skills: fix syntactic/runtime errors and develop and execute test cases to identify logic errors.

Students develop code using recommended practices and conventions (e.g. indenting, naming, commenting, using constants, modularisation).

Students apply version control and file management techniques.