Select a topic across a two year cycle

Recommended any combination of three topics per year.
Choose a combination of units that suits your students and context.

Cycle one (Year 5)

Jan Jun Dec

Cycle two (Year 6)

Jan Jun Dec

Programming challenges

Overview

This unit provides a sequence for teaching programming incorporating branching, iteration (repetition) and variables.

Digital Technologies: Years 5–6

By the end of Year 6 students design algorithms involving complex branching and iteration and implement them as visual programs including variables.

  • follow algorithms to determine their purpose and predict outcomes
  • describe and create an algorithm that includes branching and repetition
  • create a program following an algorithm that includes branching and repetition
  • incorporate variables into a program that uses a repeat command and includes decisions that enable the user to choose different paths.

 

Watch this video for a quick overview of the unit and how to use its resources with your students.

Achievement standards

Digital Technologies: Years 5-6

By the end of Year 6 students design algorithms involving complex branching and iteration and implement them as visual programs including variables.

Assessment tasks

Use this assessment task All at sea for Year 5–6 that assesses programming (AC:DT V8.4)

Rubric

Use this rubric to assess student skills, processes and knowledge.

Control structures (branching and iteration)

This rubric provides benchmarks for assessing different levels of complexity and proficiency in:

  • levels of understanding of programming blocks, specifically focusing on control structures
  • identifying control structures, as well as understanding the role of variables in programming
  • using control structures, variables and user input in programming tasks.

Rubric: Control structures (branching and iteration)

By the end of Year 6, students design algorithms involving complex branching and iteration, and implement them as visual programs including variables.

 

1 (limited) 2 (basic) 3 (proficient) 4 (advanced)
Knowledge of visual programming blocks demonstrates a limited understanding of visual programming blocks can name some visual programming blocks or describe their purpose describes the purpose of the visual programming blocks and provides relevant examples to support their understanding explains how programming blocks are organised by type, their purpose and provides relevant examples to support their understanding. Their examples illustrate blocks to enable input, decisions, repeat steps and data stored as a variable
Identifies control structures: investigating sample visual programs demonstrates limited ability to describe or identify blocks in given examples and interpret the sequence of steps identifies most block types in provided examples. Interprets the sequence of steps and identifies user input, decisions (branching) or repeat steps (iteration) consistently identifies block types correctly in various examples. Interprets the sequence of steps, predicts outcomes of blocks and identifies user input, decisions (branching) and repeat steps (iteration) demonstrates a high level of accuracy in identifying block types of a range of complex visual programs. Interprets the sequence of steps, predicts outcomes of blocks and identifies user input, branching and iteration. Explains ways a variable serves as a 'container' to hold and manipulate different data types within a program
Producing and implementing visual programs with guidance, creates a program in a sequence of steps to perform a basic task with limited opportunity for user input creates a program with user input in a sequence of logical steps that includes a decision (branching) to provide the user with a choice creates a program with user input in a sequence of logical steps that includes multiple decisions (complex branching) and iteration (repeat steps) creates a program with multiple user input in a sequence of logical steps that includes multiple decisions (complex branching) and iteration (repeat steps). Includes the use of variables to hold and manipulate different data types within a program

Unit sequence

This topic offers 3 sequential units

Algorithms

What is this about?

Following and designing algorithms with branching and repetition draws on students’ problem-solving skills. They break down complex tasks, identify patterns and create efficient solutions using If/then statements and loops to improve efficiencies. Students analyse problems, consider possibilities and design suitable solutions as an algorithm first. An algorithm can be written as a series of steps or diagrammatically such as in a flowchart. The algorithm can then be implemented as a computer program.

Content description

Design algorithms involving multiple alternatives (branching) and iteration AC9TDI6P02

 

This sequence enables students to:

  • follow algorithms to determine their purpose and predict outcomes
  • explain and debug algorithms
  • understand the importance of the order of statements within algorithms
  • identify repeating patterns and use loops to make their algorithms more concise
  • use if/then statements to add control and decision-making to algorithms, including more than two decision paths.

Resources to include

Resources to introduce

Resources to develop and consolidate learning

Resources to extend and integrate learning

Further reading and professional learning

Branching and iteration

What is this about?

The sequence and flow of a program is determined by control structures such as branching or iteration (repetition). In a program, ‘if’ statements are branching control structures that allow for decisions that enable the user to choose different paths. Loops are iteration control structures that repeat instructions. These concepts are fundamental in programming across languages. Learning them in Scratch develops transferable skills for exploring new tools and languages. This unit predominantly uses Scratch; however teachers may substitute a similar visual programming language.

Content description

Implement algorithms as visual programs involving control structures, variables and input AC9TDI6P05

This sequence enables students to:

  • identify and explain what repeat blocks do in a program
  • create a program that uses a repeat command
  • explain ways to provide decisions that enable the user to choose more than two different paths
  • create a program that includes decisions that enable the user to choose more than two different paths.

Supplementary information

In Scratch, students learn if/then statements to control program flow. They use comparison operators (e.g. =, <, >). For example, ‘if light level < 100, turn the light on’. As their skills develop, introduce if/else statements for multiple decisions and alternative paths when conditions aren't met. To appreciate efficiency and convenience, students learn loops – a form of iteration. Teach conditional loops like ‘repeat until’, which execute once before checking the condition. For example, in game play, ‘repeat until lives = 0’.

Resources to include

Resources to introduce

Resources to develop and consolidate learning

Resources to apply and extend learning

Introducing variables

What is it about?

Variables allow students to store and manipulate data within a computer program such as in a Scratch project. A variable can be used to represent different types of information, such as numbers or text, and store these values that change during program execution. They can update variables based on user input, events or calculations, which can affect the behaviour and appearance of sprites (on screen characters or objects).

Content descriptions

Design algorithms involving multiple alternatives (branching) and iteration AC9TDI6P02

Implement algorithms as visual programs involving control structures, variables and input AC9TDI6P05

This sequence enables students to:

  • identify variables in a program
  • explain what a variable is and how it is used in programming
  • use variables in a program
  • incorporate variables into a program that uses a repeat command and includes decisions that enable the user to choose different paths.

Resources to include

Resources to introduce

Resources to develop and consolidate learning

Resources to apply and extend learning

Further reading and professional learning