Te Kete Ipurangi Navigation:

Te Kete Ipurangi

Te Kete Ipurangi user options:

Senior Secondary navigation


You are here:

Computational thinking progress outcomes

The progress outcomes describe the significant learning steps that students take as they develop their expertise in computational thinking for digital technologies.


  • Curriculum levels have been marked on the diagram below to show the alignment between levels 1–5 of the New Zealand Curriculum (NZC) and the progress outcomes.
  • The uneven spacing between progress outcomes reflects the different amount of learning and time required between them and means that relationship between levels and progress outcomes is not direct.
  • The highest three progress outcomes are directly aligned to NZC levels 6-8 as they set out the learning that is expected for those students engaging in more intensive and specialised digital technologies programmes for NCEA levels 1, 2, and 3.

Computational thinking in digital technologies

Note: All of the progress outcomes have been included (from primary to secondary) to ensure transparency in prior learning and experiences.

Progress outcome 1

Break down a simple non-computerised task into a set of precise, unambiguous, step by step instructions (algorithmic thinking). They are able to give these instructions, and identify if they have gone wrong and correct them (simple debugging). By doing this they show that they can use their decomposition skills to take a task and break it down into its smallest steps.

Progress outcome 2

Can give, follow, and debug simple algorithms in both computerised and non-computerised environments.  They can use these algorithms to create a simple program involving output and sequencing (putting instructions one after the other), in an age-appropriate programming environment.

Progress outcome 3

Decompose problems into step-by-step instructions to create an algorithm for a computer program, and use logical thinking to predict the behaviour of these programs.  They understand that there can be more than one algorithm for the same problem. They are able to develop and debug simple programs that use inputs, outputs, sequence and iteration (repeating part of the algorithm with a loop).  Students understand that digital devices store data using just two states, represented by binary digits (bits).

Progress outcome 4

Decompose a problem to create a simple algorithm using the three building blocks of programming: sequence, selection, and iteration. They can implement the algorithm by creating a program that uses inputs, outputs, sequence, basic selection using comparative operators, and iteration. They can debug simple algorithms and programs by identifying if things have gone wrong with their instructions, correcting them, and are able to explain why it went wrong and how they fixed it.  Students understand that digital devices can represent data with binary digits, and that digital devices have a way to detect errors that have occurred in data storage and transmission. Students evaluate different algorithms in terms of their efficiency as they recognise that computers need to search and sort large amounts of data. Students can evaluate a user interface in relation to its efficiency and usability.

Progress outcome 5

Independently decompose a problem into an algorithm which they use to create a program which uses inputs, outputs, sequence, selection using comparative and logical operators and variables of different data types, and iteration. Students can determine when to use different types of control structures. Students can explain/document their programs and use an organised approach for testing and debugging. Students understand how computers store more complex types of data using binary digits. Students develop programs that reflect consideration of human-computer interaction (HCI) heuristics.

Progress outcome 6

Determine and compare the cost (computational complexity) of two different iterative algorithms for the same problem size (searching and/or sorting) in relation to the number of comparisons and time taken. Students understand the concept of compression coding for different media types, typical uses of compression coding, and how widely used technologies are enabled through compression coding. Students can use an iterative process to design, develop, document and test a basic computer program. Students can evaluate a user interface in terms of design principles and usability heuristics and apply these to their own design.

Progress outcome 7

Analyse a digital technologies concept (e.g. information systems, encryption, error control, complexity and tractability, autonomous control) through explaining the relevant mechanisms that underpin the concept and how the concept is used or implemented in real world applications.  They can explain the key problems or issues related to the concept.  Students can discuss the purpose of a selection of data structures and evaluate the use of a data structure in terms of tradeoffs between performance and storage requirements and their suitability with different algorithms. Students can use an iterative process to design, develop, document and test an advanced computer program.

Progress outcome 8

Evaluate a digital technologies concept (e.g. formal languages, network communication protocols, artificial intelligence, graphics and visual computing, big data, social algorithms) in relation to how the area is underpinned by the key mechanisms, and how the concept is applied in different scenarios when developing real world applications. Students can understand accepted software engineering methodologies and user experience design processes, and apply the key concepts to design, develop, document and test a complex computer program.

Last updated November 14, 2019