Students should be provided with opportunities to explore algorithms through guided play, including hands-on, kinaesthetic and interactive learning experiences. Students begin to develop their design skills by conceptualising algorithms as a sequence of steps or procedures for carrying out instructions to solve problems or achieve certain things. These skills could include identifying steps in a process or controlling a Bee-Bot. Provide authentic and meaningful ways to introduce students to simple programming while consolidating concepts across other subject areas.
Flow of Activities
Breaking down a problem into smaller parts, or steps, is an important part of computational thinking.
When initially defining problems you need to be able to identify the key features of the problem/circumstances. – These features become the scaffold or structure of the problem, and they then help frame the solution.
Typically, when we describe to another person a solution to a problem or task, we only mention the key features or /instructions. and We omit less important ones, because we assume that people know what we mean. Focusing on important details and ignoring aspects that are not relevant is part of the process of abstraction.
However, when providing instructions to a computer, it is necessary to give specific instructions about sequences and decisions because a computer cannot make assumptions. It is integral in programming to only focus on important details and, ignoring aspects that are not relevant.
At this level, students should be able to describe, follow and represent an algorithm, which is a sequence of steps for carrying out instructions to solve a problem or achieve a desired outcome. It is suggested that students begin their learning by following instructions issued by others about completing a task. This will help them to build knowledge and skills in abstraction as well as skills in writing algorithms.
Describing a sequence involves students thinking logically – deciding the order in which instructions need to be followed. Students could give verbal instructions to another student to complete a task.
When representing an algorithm, the steps and instructions need to be documented so that the task can be carried out as planned. There are different ways that instructions can be documented; for example, cards or images could be arranged to indicate a sequence; or text instructions could be provided.
Some methods are more efficient than others.
Students will begin to recognise patterns in their instructions and consider how these could be shown.
At this level, students can carry out instructions using a digital system such as a robotic device.
Students develop their design skills by formulating a sequence of steps to solve a problem or achieve a desired outcome. This could be identifying steps to control a Bee-Bot, or using programming cards to provide instructions.
The Bee-Bot can be thought of as a piece of hardware and therefore linked into the way digital systems operate with an input and output .
Algorithms are used around us every day. For example, algorithms are used to control traffic lights, the scores in a computer game and the advertisements on websites. Any digital automated process is instructed to behave in a particular way because of the decisions and steps that have been designed and carried out for the solution. Note: An algorithm can be used not only to describe a digital solution, but also to describe an everyday process such as cleaning teeth or making a salad.
In this activity, students inquire into an everyday process, and represent the decisions made and steps taken to carry out that process.
Students connect algorithms to everyday events; this helps them to recognise the relevance of what they are learning.