Computational thinking
This resource helps Digital Technologies teachers understand computational thinking and how it can be included as part of their teaching, aligned with the Australian Curriculum from Foundation to Year 10.
What you'll find
- Clear explanations of key computational thinking concepts
- Ideas that support the progressive development of computational thinking
- Practical classroom activities
- Resources to help in planning and assessment
Applying computational thinking
Computational thinking does not appear as a separate set of content descriptions in the Australian Curriculum.
Instead, computational thinking is embedded across Digital Technologies learning. Through lessons and activities, students break down problems, identify patterns, use logic, work with step-by-step processes (algorithms) and reflect on possible solutions.
What is computational thinking?
Computational thinking is a way of thinking that helps people analyse problems, design solutions and explain their thinking so that a computer or another person could follow the steps. It involves breaking problems into smaller, manageable parts, focusing on important information, identifying patterns and creating step-by-step processes (algorithms) to solve problems.
A simpler explanation can help …
Computational thinking is about thinking clearly when solving problems, breaking problems down into parts, spotting patterns, ignoring unnecessary details, and explaining steps so someone else or a computer could follow them.
Why is it relevant?
Computational thinking helps students analyse problems, use logic and explain their reasoning across a range of learning contexts. These skills extend beyond Digital Technologies to support problem solving in other learning areas.
Key terms in the curriculum
Computational thinking encompasses several interrelated processes. Although there is some variation in the terminology, there are essential elements that are consistent across the various definitions and processes.
| Decomposition | Breaking a problem or process into smaller, manageable parts |
|---|---|
| Pattern recognition and generalising | Observing patterns, trends and regularities to make sense of data, and using those patterns to make generalisations |
| Abstraction | Focusing on important details and ignoring unnecessary information |
| Algorithm | Creating clear, step by step procedures to solve a task or problem |
| Modelling and simulation | Developing a model to imitate processes and problems |
| Evaluation | Checking whether solutions work, and how they can be improved or applied to new situations Evaluation is included as a complementary practice that supports computational thinking by ensuring implemented solutions are effective, fit for purpose and aligned with user needs. |
| Decomposition | Breaking the game rock, paper, scissors into parts so a computer could play it. For example, the parts could include choices, rules and outcomes. |
|---|---|
| Pattern recognition and generalising | Identifying patterns in information and turning them into simple rules that can be used to sort, group or classify new examples. For example, noticing common features in a dataset, such as repeated characteristics, shapes, colours, values or behaviours, and using those features to decide how new items should be grouped. |
| Abstraction | Focusing on important details and not including unnecessary information. For example, drawing symbols, such as weather icons to represent observations and emojis to represent feelings, or describing how multi-factor authentication (MFA) works by choosing only the important details to include. |
| Algorithm | A series of commands is entered into a push-button programmable floor robot such as a Bee-Bot, to reach a target while avoiding obstacles. |
| Modelling and simulation | Using a spreadsheet with variables for starting population, population growth and time to simulate how population changes over time. |
| Evaluation | Comparing a drawn map to represent a pathway travelled against true or false statements. Deciding which statements are true using the map as a basis. |
Connections to algorithms
Algorithms are a core concept in Digital Technologies.
To explore more, refer to Algorithms.
Connections to Australian Curriculum: Mathematics
In Mathematics, computational thinking is part of how students learn to reason, model and solve problems. By using decomposition, abstraction, pattern recognition, algorithms and simulations, students deepen their mathematical understanding and build the analytical skills needed for today’s world.
Mathematics also includes a focus on creating and applying algorithms as part of problem solving, providing relevant connections to processes within computational thinking. This overlap reinforces students’ ability to reason, generalise and work systematically across problems with a Mathematics or a Digital Technologies focus.
To explore more, refer to ‘Computational thinking’ and Computation, algorithms and the use of digital tools in mathematics in ACARA’s Understand this learning area – Mathematics. (opens external website in a new window)
What to teach?
Computational thinking can be introduced early, from Foundation, and build in complexity right through to Year 10.
Here’s how the concept develops across year bands:
Computational thinking in Foundation
Expectation for this band
Students can:
- focus on important details when drawing symbols
- find patterns in data
- make simple statements based on patterns in data
- model the way a familiar digital system works.
The focus is introducing computational thinking in familiar everyday routines and events.
What this looks like in practice
Students use computational thinking when they:
- focus on important details when drawing symbols such as weather icons and emojis to represent observations and feelings
- make a model of a digital system to simulate how it operates; for example, a paper version of a tablet device to type your name, play a game or display weather information
- find patterns in data to group information such as ‘information that identifies me’ and ‘things I like’ and make generalisations such as ‘Only some information can be used to tell who I am’.
By the end of this activity, students can use weather symbols to record data and spot patterns to talk about the weather.
Retrieval: How do we know what the weather is for the day? How do we often check? How can we communicate with others about the weather?
Learning hook: Ask, ‘Who thinks they know what the weather will be this week?’ and ‘Are we better at guessing the weather or is the weather better at tricking us?’ Use this intro to track the weather for the week and notice any patterns.
Task: Create an agreed group of weather icons to record weather observations. Use abstraction to focus on the important details of weather phenomena and represent these using symbols.
Record the weather using symbols in a weekly chart at the same times each day. Identify and recognise patterns in data and make generalisations about the weather.
Extension: Link to digital systems by having students create a model of a digital device to simulate how an app might display weather information.
Reflection: After completing the chart, ask, ‘What can we say about the weather after looking at our record of weather symbols for the whole week?’
Evidence of learning
You might notice that students:
- represent ideas and observations using agreed simple icons with relevant detail
- recognise patterns in data
- make general statements based on repeated observations, such as noticing that a high number of sun icons means it is usually sunny, and applying this idea to predict or describe other weeks
- model everyday digital systems such as a tablet to show how they work.
When students use symbols to record information, look for patterns, make simple statements about what they notice and make models of digital systems to convey ideas, they are developing computational thinking.
Common misconceptions or errors to watch for
- Thinking that their drawn symbols can change each time, not realising that consistent symbols help show patterns in the data
- Adding unnecessary details to their data representations
- Not yet being able to generalise patterns from a group of data
- Creating a model that has no bearing to the real object.
Address these explicitly during modelling and discussion.
Computational thinking embedded in Foundation Digital Technologies
These examples illustrate the connection between content descriptions and the teaching activities in this guide.
Note: Decomposition, algorithms and evaluation have not been included in Foundation as these concepts are not reflected in the content descriptions.
| Focusing on important details (abstraction) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Recognising patterns and making generalisations |
|---|
Relevant ACARA content descriptions
Examples in practice
|
| Modelling and simulations |
|---|
Relevant ACARA content descriptions
Example in practice
|
Computational thinking in Years 1-2
Expectation for this band
Students use computational thinking when they:
- investigate familiar, easily understood problems and break these into parts
- focus on important details when breaking down a problem or representing an object, idea, event or process
- observe patterns and regularities in data and use these to make simple generalisations
- create a clear order of steps to solve a problem
- create a simple model to show how a digital system works and use it to explore different outcomes
- describe how well a simple solution meets its purpose and identify ways it could be improved.
The focus is on building confidence with breaking down familiar problems and noticing the important information when creating steps and modelling the outcome.
What this looks like in practice
Students use computational thinking when they:
- investigate familiar, easily understood problems and break the problem into parts; for example, working out what happens when someone borrows a library book
- identify and describe patterns in how websites ask users to log in; for example, noticing that many login screens include repeated features such as a username box, a password box, a ‘forgot password’ link or a ‘show password’ button, and using these patterns to make simple generalisations
- focus on important details when breaking down a problem or representing an object, idea or event, for example when drawing a dog and a pig, what features do they include and leave out?
- create a clear order of steps to solve a problem; for example, creating a poster to promote borrowing a school library book, and highlighting the important steps
- make a simple model of a digital system to simulate how to use a username and login to access an app safely
- describe how well a simple digital system or solution meets its purpose and identify ways it could be improved; for example, their poster highlighting the library borrowing system or their model of safely logging into an app.
Computational thinking is embedded in examples that illustrate how students work with the ACARA content descriptions in practical ways.
By the end of this activity, students can represent the steps in borrowing a library book, record who borrowed which book, and notice patterns in how the system keeps track of information.
Retrieval: Why is it important to keep records of books borrowed from the library?
Learning hook: Ask, ‘How does the library know who borrowed a book?’, ‘What would happen if the library didn’t know who took which book?’ Use this to introduce the idea that a system is used to record information so books can be returned on time.
Task: Create a poster promoting simple steps in borrowing a school library book. Decompose the problem, and discuss and agree on a process that represents the key parts of the borrowing process (book selection, borrowing desk, enter details, book return). Use abstraction to focus on the important details the system needs, such as what was borrowed, who borrowed it and when it should be returned. Identify and recognise patterns in the data, such as details that repeat across all borrowing records, for example, each borrowing includes a date.
Extension: Link to privacy and digital systems by having students create a model of a digital borrowing system that simulates how the app records personal information, such as a student’s name, the book borrowed and the due date. In this case, the system uses personal information to manage borrowing and returning, and this data is stored securely to protect student privacy.
Reflection: After completing the poster, ask, ‘What can we say about our borrowing system?’, ‘What information does our system need to work well?’ and ‘Do our steps help others who are new to the borrowing system?’
Evidence of learning
You might notice that students:
- explain the steps involved in a familiar process
- choose symbols or labels that show only the essential parts of an idea, event or process
- suggest why certain details matter and which can be left out
- notice repeated features or patterns in data
- describe ordered steps to achieve an outcome
- create a working model to demonstrate how a process works
- describe what works well or identifies small improvements in a process.
If students can explain the parts of a problem, and why a step, detail or pattern matters, they are developing computational thinking.
Common misconceptions or errors to watch for
- Having difficulty working out what the key parts of a problem are
- Including unnecessary details in their representations
- Ignoring patterns in data
- Believing that a model must look realistic rather than understanding that a model only needs to show the important parts of how a solution work.
Address these explicitly during modelling and discussion.
Computational thinking embedded in Years 1–2 Digital Technologies
These examples illustrate the connection between content descriptions and the teaching activities in this guide.
| Breaking down problems (decomposition) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Focusing on important details (abstraction) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Recognising patterns and making generalisations |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Creating ordered steps (algorithms) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Modelling and simulations |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Evaluating solutions |
|---|
Evaluation is included as a complementary practice that supports computational thinking by ensuring implemented solutions are effective, fit for purpose and aligned with user needs. Relevant ACARA content descriptions
Example in practice
|
Computational thinking in Years 3-4
Expectation for this band
Students use computational thinking when they:
- break a problem into smaller parts and define what data or actions the solution must include
- determine which details are essential for the solution and explain why certain information in a problem or challenge is included or can be ignored
- identify and compare patterns in data and justify the generalisations they make
- follow and describe ordered steps that include decisions or repeated actions when solving a problem
- use models to test how a digital solution responds when inputs or conditions change
- describe how well the solution meets its purpose and identify ways it could be improved.
The focus is on building confidence with breaking down familiar problems and noticing the important information when creating steps that include decisions or repeated actions, and using simple models to predict how a system works.
What this looks like in practice
Students use computational thinking when they:
- investigate familiar problems, such as how to reach a daily step goal, by breaking the problem into parts like the measuring device, the steps taken and the point where a reward is triggered
- determine which details are essential for the solution and explain their choices, for example, deciding that the stepcounting device, the number of steps taken and the point where a reward is triggered are essential details for reaching a daily step goal
- identifying and comparing patterns in how different peripherals behave, such as noticing that keyboards, mice and touch screens all send information into the system, while monitors, speakers and printers all send information out, and using these patterns to make generalisations about input and output devices
- describing the steps a robot or micro:bit need to follow, including decisions such as turning when it senses an obstacle or repeating actions until it reaches the goal
- using a model of a weather alert system to test how the solution behaves when the temperature changes, predicting that the model will trigger a heat alert when the temperature is greater than 35°C
- describe how well a simple digital system or solution meets its intended purpose and discuss whether it satisfies the key requirements they identified, such as accurately tracking daily steps. They suggest improvements based on how well the solution supports users in reaching their step goal.
Computational thinking is embedded in examples that illustrate how students work with the ACARA content descriptions in practical ways.
By the end of this activity, students can break a familiar problem into parts, identify essential details, recognise patterns in data, describe steps that include decisions or repeated actions, and predict how a digital solution behaves when inputs change.
Retrieval: What types of information might a fitness app record?
Learning hook: Ask, ‘How does a fitness app know when you’ve reached your daily step goal?’ and ‘What changes in the app when you walk more steps?’ Use this to introduce the idea that digital systems use inputs, trigger points and repeated actions to track progress toward a goal.
Task: Investigate how a digital system tracks progress toward a daily step goal. Decompose the problem by identifying the key parts of the system (the measuring device, the steps taken and the point where a reward is triggered). Use abstraction to focus on the essential details the system needs, such as the step count and the trigger point for earning a reward. Identify and compare patterns in sample step-tracking data, such as when students most often reach their first reward. Students identify these as different types of data and explore how the same information could be represented differently, for example, steps as a number, a bar or a progress icon. Describe the ordered steps a micro:bit would follow, including decisions or repeated actions. Use a simple model to test how the system behaves when the step count changes.
Extension: Link to privacy and digital systems by having students model how a fitness app stores personal information such as name, daily step goal and badges earned, and discuss why some information should remain private.
Reflection: After completing the poster, ask, ‘What information does a step-tracking system need to work well?’, ‘What happens in the system when the step count reaches the trigger point?’ and ‘How well does the model help someone understand how a step-tracking app works?’
Evidence of learning
You might notice that students:
- explain the steps involved in a familiar process
- choose symbols or labels that show only the essential parts of an idea, event or process
- justify why certain details matter and which can be left out
- notice repeated features or patterns in data
- describe ordered steps to achieve an outcome
- create a working model to demonstrate how a process works
- describe what works well or identifies small improvements in a process.
If students can explain why a step, detail or pattern matters, they are developing computational thinking.
Common misconceptions or errors to watch for
- Including unnecessary details in their representations
- Having difficulty working out what the key parts of a problem are
- Ignoring patterns in data
- Believing that a model must look realistic rather than understanding that a model only needs to show the important parts of how a system works.
Address these explicitly during modelling and discussion.
Computational thinking embedded in Years 3-4 Digital Technologies
These examples illustrate the connection between content descriptions and the teaching activities in this guide.
| Breaking down problems (decomposition) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Focusing on important details (abstraction) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Recognising patterns and making generalisations |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Creating ordered steps (algorithms) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Modelling and simulations |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Evaluating solutions |
|---|
Evaluation is included as a complementary practice that supports computational thinking by ensuring implemented solutions are effective, fit for purpose and aligned with user needs. Relevant ACARA content descriptions
Example in practice
|
Computational thinking in Years 5-6
Expectation for this band
Students use computational thinking when they:
- break down a problem, solution or process into smaller parts to understand how it works and what data or actions it includes
- focus on the important details in a task or process and identify what can be ignored
- identify and analyse patterns in data and justify the generalisations they make
- design steps that include branching based on multiple choices and iteration based on repeated actions until a condition is met
- use models to test how a digital solution responds to user inputs
- describe how well a solution meets its purpose, how the broader community is impacted and identify ways it may be improved.
The focus is on breaking down a problem, devising an algorithm with decisions and repetition and checking how well the designed solution meets the identified need.
What this looks like in practice
Students use computational thinking when they:
- break down an ordering process – such as canteen ordering, book club or school concert tickets – into smaller parts to understand how it works and what data or actions the solution includes
- focus on the important details when coding a message using whole numbers by converting each letter into its position in the alphabet, recognising that the sequence of letters matters and that features like handwriting, font or letter formation can be ignored
- explore simple pixel images and notice patterns in how pixels are turned on or off, recognising that repeated arrangements of black and white pixels can be represented using zeros and ones, and they generalise that these patterns work in a similar way to how digital systems create recognisable images
- design a ‘choose your own adventure’ story where the reader repeats actions as they move through the story and follows different branches based on choices, such as taking a new path, returning to a previous point, or looping through a search until a clue is found
- design a simple chatbot by anticipating the different questions a user might ask and creating response branches that repeat until the user ends the conversation
- describe how well a solution, such as a school canteen ordering process, meets its intended purpose, and discuss whether it satisfies the key requirements they identified and its impact on the school community. For example, if evaluating the school canteen ordering process, students identify who benefits, how various groups experience it and any enhancements that can be suggested.
Learning hook: Students explore a short ‘choose your own adventure’ story and discover that different choices lead to different outcomes. They discuss how decisions affect what happens next and how stories can be structured to make them interactive.
Task: Students design a ‘choose your own adventure’ story, where the reader makes choices that determine the story’s direction and ending. Students break the story-writing process into sections such as characters, settings, potential choices or pathways, events and endings. They identify patterns and generalisations, noticing that each choice leads to a consequence and that similar structures repeat throughout the story. They focus on key events and choices, leaving out unnecessary detail while planning the story structure. Students describe the step by step logic of the story, including what happens when different choices are selected. They model and simulate the story using flowcharts or diagrams and test different pathways to check that all choices lead to a clear and logical outcome.
Reflection: Students evaluate their story by testing multiple pathways and reflecting on the reader’s experience. They consider what works well, whether all choices are clear, and how the story could be improved to make it more engaging and consistent. Students use this feedback to refine their story design.
Evidence of learning
You might notice that students:
- break problems, processes or solutions into smaller parts and describe how those parts are connected
- identify and explain which information is important in a task and justify what they chose to ignore
- recognise patterns in data and use them to inform how they approach a solution
- develop step-by-step solutions that include choices (branching) and repetition, and refine them when they do not work as expected
- use models to test how a solution responds when inputs are changed
- describe how a solution works and who it affects, and suggest improvements based on their observations.
Students demonstrate computational thinking when they break down problems, focus on key information, identify patterns, design algorithms, model processes and evaluate outcomes.
Common misconceptions or errors to watch for
- Treating a problem as a single task rather than break it down into smaller parts
- Including too much detail in the early stages of solving a problem
- Finding it challenging to create step-by-step solutions, missing important steps or having steps out of order and not following correct pathways when including branching
- Assuming a solution will work without testing it fully.
Address these explicitly during the task using questioning and feedback.
Computational thinking embedded in Years 5-6 Digital Technologies
These examples illustrate the connection between content descriptions and the teaching activities in this guide.
| Breaking down problems (decomposition) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Focusing on important details (abstraction) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Recognising patterns and making generalisations |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Creating ordered steps (algorithms) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Modelling and simulations |
|---|
Relevant ACARA content description
Example in practice
|
| Evaluating solutions |
|---|
Evaluation is included as a complementary practice that supports computational thinking by ensuring implemented solutions are effective, fit for purpose and aligned with user needs.
Example in practice
|
Computational thinking in Years 7-8
Expectation for this band
Students can:
- decompose real-world problems into smaller parts by identifying key requirements and constraints
- identify and focus on essential information in real-world problems while ignoring unnecessary detail
- identify patterns in data and make generalisations about relationships
- model real-world situations using physical, visual or digital representations and simulate outcomes using rules and inputs
- evaluate solutions against criteria and consider their effectiveness and impact.
The focus is on breaking problems into smaller parts, identifying key information and patterns, designing step-by-step solutions, modelling and simulating real-world situations, and evaluating solutions against criteria and impact.
What this looks like in practice
Students use computational thinking when they:
- break down the problem of food waste by identifying key requirements a solution must meet, including available ingredients, reducing waste, and the steps needed to match ingredients to possible recipes
- acquire survey data to solve a real-world problem by identifying essential data fields, removing unnecessary information and applying validation rules (such as required fields, ranges and allowed responses) before storing data in a spreadsheet or database
- explore bitmap images and identify patterns in how pixels are represented using red, green and blue values. They generalise that digital images such as JPEG files use repeated RGB structures where each value ranges from 0 to 255
- create a step-by-step number-guessing game (0–100) where each guess is checked and feedback is given (too high/too low). The range is narrowed until the correct number is found, using decisions (if/then) and repetition to solve problems efficiently. Choose appropriate data types for variables that model the data needed for the game
- model a simple ‘lucky number’ game where a random number between 1 and 10 is generated, and players score points depending on the result. They run the program many times to see which outcomes happen most often and whether the scoring system is fair
- evaluate a solution for reducing food waste by judging how well it uses available ingredients and its wider impact. They assess how effectively it reduces waste, consider environmental, economic or social implications, and suggest improvements.
By the end of this lesson, students will be able to use a simple guessing game to develop and follow a step-by-step process for solving a problem.
Retrieval: Why might it be better to follow a step-by-step process when guessing a number between 0 and 100, rather than making random guesses?
Learning hook: Students play a quick guessing game where one student secretly selects a number between 0 and 100. The class tries to guess it, receiving feedback after each guess (‘too high’ or ‘too low’). Students discuss how the range changes after each guess and how this helps narrow down the answer more efficiently.
Task: Students design a number-guessing game where a secret number between 0 and 100 is guessed using a structured set of rules. Students:
- break the problem into parts by identifying the key elements needed for the game (starting range, guessing process, feedback and how the range changes)
- focus on essential information by ignoring irrelevant details and concentrating only on the current lowest and highest possible values
- identify patterns and generalisations by noticing that each guess reduces the range in a predictable way, and that the same process repeats until the number is found
- describe and apply step-by-step rules, for example, if a guess is too high, adjust the upper limit; if too low, adjust the lower limit; showing how decisions (if/then) and repetition are used to solve the problem efficiently
- model the game using number lines, number cards or a set of 100 objects to physically represent how the range narrows after each guess. Students simulate different rounds of the game to test how the rules work in practice and refine their approach if the process does not narrow the range effectively.
Optional: Students can implement the same rules as a simple program in Python and test whether the program behaves as expected by comparing its output with their manual model.
Reflection: Students evaluate how efficient their guessing strategy is by comparing different approaches, for example, random guessing versus halving the range. They consider how well their rules work, whether the model accurately represents the process, and how the algorithm could be improved to reach the correct number in fewer steps.
Evidence of learning
You might notice that students:
- break problems into smaller parts and clearly identify what a solution needs to do
- select and focus on relevant information in data or problems, explaining what they chose to ignore
- identify patterns in data and describe relationships or trends they observe
- create step-by-step solutions that include decisions and repetition, and adjust them when needed
- use models to represent real situations and test how outcomes change when rules or inputs are varied
- explain whether solutions meet criteria and suggest improvements based on what they observe.
If students can connect these processes to solving real problems and explain their thinking, they are demonstrating computational thinking.
Common misconceptions or errors to watch for
- Focusing on irrelevant details rather than key information in a problem
- Missing important patterns or misinterpreting relationships in data
- Creating step-by-step solutions that do not account for all conditions or inputs
- Misunderstanding how models or simulations represent real-world behaviour
- Treating evaluation as opinion rather than evidence against criteria and impact.
Address these explicitly during modelling and discussion.
Computational thinking embedded in Years 7-8 Digital Technologies
These examples illustrate the connection between content descriptions and the teaching activities in this guide.
| Breaking down problems (decomposition) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Focusing on important details (abstraction) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Recognising patterns and making generalisations |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Creating ordered steps (algorithms) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Modelling and simulations |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Evaluating solutions |
|---|
Evaluation is included as a complementary practice that supports computational thinking by ensuring implemented solutions are effective, fit for purpose and aligned with user needs.
Example in practice
|
Computational thinking in Years 9-10
Expectation for this band
Students can:
- break a complex problem into clear, necessary parts so they know exactly what needs to be solved
- focus on the essential information and ignore details that do not affect the solution
- identify useful patterns or repeated behaviours and explain how they help solve the problem
- write algorithms and refine them when outputs do not match expectations
- select or build data structures that effectively model known objects and patterns
- judge how well a solution meets user needs and suggest improvements.
What this looks like in practice
Students use computational thinking when they:
- break down the problem of advising an athlete on daily energy balance by identifying what information is required (energy in, energy out), what can be ignored, and how to separate the task into inputs, calculations, limits and outputs
- focus on essential information in an access-control system by keeping only the key ideas such as authentication and permissions, and ignoring unnecessary technical detail so they can explain how software installation is restricted
- create a repeating geometric pattern, such as the Sierpiński triangle, and notice how applying a simple rule many times produces a predictable structure. Students generalise that complex patterns can emerge from repeated steps
- design a decision-making algorithm for checking whether a user can log in, combining conditions with AND, OR and NOT, and representing the logic clearly in flowcharts and pseudocode
- build a spreadsheet model to explore an athlete’s daily energy balance, adjust variables to simulate different scenarios, and validate the model by testing it with a planned set of test cases, including boundary values
- evaluate their energy-balance model by checking how well it meets the athlete’s needs, considering usability and clarity of outputs, and suggesting improvements or future opportunities such as developing the model into an app.
By the end of this lesson, students will be able to use a simple model to investigate energy balance by identifying important information, recognising patterns and following step-by-step processes.
Retrieval: What information would you need to know to work out whether someone used more energy than they took in during a day?
Learning hook: Students discuss two training scenarios: one athlete who feels energetic during a session and another who feels unusually fatigued. As a class, students brainstorm possible reasons for the difference and identify what information they would need to compare the athletes’ daily energy balance.
Task: Students design a simple model to explore an athlete’s daily energy balance by comparing energy in (food) and energy out (activity). Students:
- break the problem into parts by identifying what information is needed: food energy intake, activity energy expenditure, and the calculation that compares them
- focus on essential information by ignoring irrelevant details (for example, food brands, time of day) and keeping only the values needed for the model
- identify patterns and generalisations by noticing how increasing intake or increasing activity changes the net energy balance in predictable ways
- describe and apply step by step rules, such as adding all energy in values, adding all energy out values, then calculating the difference to determine surplus or deficit
- model the scenario using a simple spreadsheet, an object-oriented programmed solution or a physical representation – for example, counters for kilojoules – to simulate different days. Students test their model with different meal/activity combinations and refine it if the results don’t make sense.
Optional: Students implement the same rules in a simple computer program in Python and compare the program’s output with their spreadsheet or physical model to check consistency.
Reflection: Students evaluate how well their model works by checking whether it clearly shows surplus or deficit and whether it helps explain the athlete’s performance. They consider how the model could be improved to make predictions more accurate or easier to use.
Evidence of learning
You might notice that students:
- identify the key parts of a real‑world problem and separate them into manageable parts, for example, inputs, processes, constraints and outputs
- explain what information is essential and what can be left out
- identify repeating structures or behaviours in a system or pattern
- design algorithms that use combined conditions with logical operators (AND, OR, NOT)
- build simple models such as in a spreadsheet that calculates outputs from inputs
- select or build data structures such as lists or records that are appropriate for grouping the data being modelled
- explain whether the solution is usable, clear and fit for purpose and recognise opportunities for enterprise.
If students can break problems into clear parts, focus on essential ideas, recognise useful patterns, create and test ordered steps, use models to check how changes affect results, and judge how well a solution meets user needs, they are demonstrating strong computational thinking.
Common misconceptions or errors to watch for
- Finding it challenging to break a problem into smaller, manageable parts or leaving out essential parts
- Getting caught up in the unnecessary details instead of focusing on what is important
- Being unable to represent an algorithm as a flowchart or using pseudocode structures
- Creating a model but not testing it with relevant inputs
- Choosing an inappropriate data structure, such as using a list when a record is required.
Address these explicitly through teacher modelling, questioning and feedback.
Computational thinking embedded in Years 9-10 Digital Technologies
These examples illustrate the connection between content descriptions and the teaching activities in this guide.
| Breaking down problems (decomposition) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Focusing on important details (abstraction) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Recognising patterns and making generalisations |
|---|
Relevant ACARA content descriptions
|
| Creating ordered steps (algorithms) |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Modelling and simulations |
|---|
Relevant ACARA content descriptions
Example in practice
|
| Evaluating solutions |
|---|
Evaluation is included as a complementary practice that supports computational thinking by ensuring implemented solutions are effective, fit for purpose and aligned with user needs. Relevant ACARA content descriptions
Example in practice
|
Plan your teaching
Explore sample units and lessons.
These sample units can be used to incorporate elements of the computational thinking process.
Foundation: Representing data, Using digital systems safely
Years 1–2: Solving simple problems, Ways we represent data
Years 3–4: Introduction to programming, Programming a simple solution
Years 5–6: Programming challenges, Designing a simple digital solution
Years 7–8: General-purpose programming, Creating a digital solution
Years 9–10: Programming
Use this planning template to record relevant information as you view a scope and sequence topic for your year level.
Research-informed teaching
Evidence-based approaches
- Unplugged learning
- Dual coding (visual + verbal)
- Worked examples with gradually reduced scaffolding
- Structured, challenge-based tasks
Unplugged learning
Research from CS Unplugged shows that introducing computing concepts without devices helps students focus on core ideas before adding technical complexity.
What this looks like in practice:
- Begin with an activity that does not require a device.
- Use familiar materials, movement or role-play to model how a problem can be broken into parts, which details matter, and what patterns or rules can be found.
- Prompt students to explain their reasoning: what they kept, what they ignored, what repeated, and why their rule or solution works.
- Introduce digital tools later, once students can clearly articulate the thinking behind their approach.
Example:
Students play a guess-the-number game using cards labelled 1 to 100 arranged in a row. One student chooses a number and keeps it secret. The other students take turns guessing, and the chooser responds only with ‘higher’, ‘lower’ or ‘correct’. Each time feedback is given, students physically remove all cards that can no longer be the answer. They soon notice a pattern: the remaining range halves after each guess. They explain how they broke the problem into parts (possible numbers), focused on essential information (higher/lower), ignored irrelevant details, and refined their rule (always guess near the middle of the remaining cards) to make the process more efficient. Later, they connect this reasoning to how digital systems narrow search spaces. This example models the core idea of binary search.
Dual coding
Research synthesised by Richard E. Mayer shows that students learn new concepts more effectively when information is presented using both words and visuals, reducing cognitive load and supporting deeper understanding.
What this looks like in practice:
- Present new computational thinking ideas using both spoken or written explanations and visual representations.
- Use diagrams, images, symbols or simple models alongside verbal descriptions.
- Explicitly link the visual elements to the language being used.
- Revisit the concept using both modes together to reinforce understanding.
Example:
When introducing a computational thinking process such as decomposition, a teacher explains how a complex problem can be broken into smaller parts while displaying a simple visual model. As students hear terms like ‘inputs’, ‘steps’, ‘decisions’ or ‘constraints’, they see these ideas represented visually. Students refer to both the explanation and the diagram when describing how they would break down a similar problem.
Worked examples and scaffolding
Research synthesised by Australian Education Research Organisation shows that modelling worked examples and gradually reducing support improves learning of complex procedures.
What this looks like in practice:
- Model a complete example before asking students to work independently.
- Make the thinking process explicit by explaining decisions and steps as they occur.
- Provide structured support such as prompts, templates or partially completed examples.
- Gradually remove scaffolds as students gain confidence and competence.
Example:
A teacher models how to break down a complex problem using decomposition. They show a worked example that identifies the goal, the essential information, the parts of the problem and what can be ignored. Next, students complete a partially worked version of a similar problem using prompts such as ‘How can you break this problem into smaller steps?’ and ‘What information matters here?’ Finally, students independently, without scaffolds, decompose a new problem, explaining how they identified key details, noticed patterns and organised the parts.
Structured, challenge-based tasks
Research synthesised from studies of computational thinking instruction shows that problem-based and challenge-oriented tasks, such as those used in Bebras Challenge, can effectively develop students’ computational thinking by requiring them to break down problems, identify patterns and apply logical reasoning strategies.
What this looks like in practice:
- Introduce computational thinking concepts using short, structured challenges such as Bebras-style problems.
- Model how to approach the challenge by identifying the goal, selecting relevant information and breaking the problem into manageable parts.
- Use targeted prompts to guide thinking: ‘What is the problem asking?’, ‘What information matters?’, ‘What patterns do you notice?’
- Encourage students to explain their reasoning using everyday language, before introducing technical terminology.
Example:
Present students with a challenge. For example, give students a simple map showing Edna the echidna, several red ants she must collect and the anthill she needs to reach. Provide them with four possible sets of movement commands (left, right, up, down). Students must determine which sequence correctly guides Edna along the path that collects all the red ants and finishes at the anthill. Students apply algorithmic thinking – a key part of computational thinking – as they trace, test and compare the possible solutions.
Check understanding
- 1–2: Checklist
- 3–4: Assessment advice
- 5–6: Work sample
- 7–8: Rubric
- 9–10: Work sample
Teachers can assess student learning in a range of ways, including through checklists, observations, rubrics and student work samples. The examples below focus on assessing students’ understanding of algorithms, which is one part of computational thinking.
- Years 1–2: Fairytale fun assessment. Teachers assess the student’s retelling of a story using the slide sorter function to order a set of slides. This resource includes a checklist for recording the student’s demonstrated skills and knowledge.
- Years 3–4: Bee Bot Balloon Pop. During this activity, students consider the functions of the Bee Bot and how a user can interact with this device. The assessment section provides advice on assessing students’ knowledge of algorithms.
- Years 5–6: Fashion game (opens external website in a new window) . This resource includes a work sample of a digital solution with annotations about the student’s explanation of algorithms.
- Years 7–8: Rock, Paper, Scissors AI! The assessment section of this lesson provides advice on assessing students’ knowledge of algorithms and includes a rubric.
- Years 9–10: Digital project: Python game development. (opens external website in a new window) This resource includes a work sample of a digital solution with annotations about how well the student has designed and validated algorithms.
Deepen your understanding
Explore these resources for further background to help teach about computational thinking:
- Computational thinking and CS Unplugged (opens external website in a new window) by CS Unplugged; overview and examples of computational thinking processes
- Computational thinking (opens external website in a new window) by ada computer science; core computational thinking processes
- Computational thinking for a computational world (PDF) (opens in a new window) by Digital Promise; a paper presenting the importance of computational thinking
- Teaching London computing (opens external website in a new window) by Computer Science for Fun; computational thinking practical activities