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 1: Computational thinking

Focus area 1: Computational thinking

Students develop computational thinking skills and strategies to identify, deconstruct, and solve problems of interest. These strategies include decomposition, pattern recognition, abstraction, and algorithm design.

Students identify and deconstruct problems, including complex problems, into logical sets of sequential or iterative parts using tools that show dependencies and flow of sequence between parts. Complex problems are questions or issues that cannot be answered through simple logical procedures alone. They generally also require abstraction to deconstruct the problem and focus on core concepts and ideas.

Students develop skills in identifying patterns of similarities or repetition in data or in a series of possible solutions, which can then be applied in algorithm design, including creating generalised algorithms.

Abstraction involves removing irrelevant detail to leave only the key elements of a problem, thereby simplifying the problem. Through abstraction students identify common elements and make connections with other simplified problems. 

Students design algorithms to produce an output. An algorithm might be written in pseudocode, or represented in a structure chart or flow chart.

To support their understanding of designing solutions for problems, students use computational thinking skills to analyse and evaluate relevant data, test hypotheses, make evidence‑based decisions, and revisit steps using new information to update their analyses. A solution may take the form of a product, prototype, and/or proof of concept.

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 techniques and strategies

Decomposition

Students identify and deconstruct problems, including complex problems, into logical sets of sequential or iterative parts using tools that show dependencies and flow of sequence between parts.



Students identify and deconstruct a problem logically into two or more sequential tasks using tools that show dependencies and flow of sequence between parts.

Students apply logical thinking to deduce as much information as possible from the initial information provided, and revisit steps based on new information.

Pattern recognition

Students identify patterns of similarities or repetition in data or in a series of possible solutions, which can then be applied in algorithm design.



Students find repeating patterns in data and/or an algorithmic solution to simplify through iteration and implementation reuse.

Students recognise that there are problems that will develop into similar algorithms, and that the same patterns can apply in other areas.

Abstraction

Students use recognised patterns to identify general rules and concepts.



Students identify common elements and connections with other problems.

Students use levels of abstraction to create generalised rules and concepts.
 
Students map different scenarios to the same rules and concepts.

Algorithm design

Students design ordered instructions to produce an output. Such instructions are called ‘algorithms’.



Students experiment with core algorithms such as searching and sorting. 

Students run an initial, informal test of the algorithm to understand and verify it.

Students graphically represent algorithms at a high level of detail, for example, by creating structure charts or flow charts.

Coding skills

Students create algorithms, which may be written in pseudocode, or represented in a structure chart or flow chart.



Students use pseudocode to help develop algorithms that allow a task to be performed.
 
Students apply basic constructs that control algorithmic flow including sequence, selection, and iteration.

Students apply pattern recognition and abstraction to develop algorithms to perform specific tasks.

Students design sets of algorithms to build simple prescribed applications.

Students check an algorithm for accuracy and amend its design in response to failed test cases.