Computing at Avondale
National Curriculum
Include use of sequences, selection and repetition with the hardware used to explore real world systems.
Solves problems by decomposing them into smaller parts.
Create programs which use variables.
Use variables, sequence, selection, and repetition in programs.
Use logical reasoning to explain how increasingly complex algorithms work and to detect and correct errors in algorithms and programs efficiently.
(TT Exemplar Video) As tasks become more complex, it is necessary to break them up into smaller chunks so they are easier to interpret. This is known as decomposition.
However, with very complex programs, it would be unhelpful to decompose and test every single algorithm separately, since it would take far too long. In this situation, pupils should be able to identify related algorithms and test them as a group.
For example, they should be able to identify the algorithms that relate to a scoring system or the movement of a sprite and test these in isolation to the rest of the program.
(TT Exemplar Video) Variables are a key concept in computer programming. They allow programs to store information and then reuse it at a later point. They're no different to the human memory.
Discuss with the pupils facts they can remember, such as their name, address and age. Identify which of these they make use of, for example they may use their age when entering a competition. Go on to identify which facts may change over time, such as their height, address or age.
Identify the term 'variable' as being a value that is stored by a computer. Ensure the pupils understand that the variable may be changed and used as a program runs.
The simplest way to use a variable in a game is to create a scoring system. Work with pupils to create the variable and then change it as points are awarded.
BELOW - Pupils understand that numbers can be saved to variables within a program.
MET - Pupils understand that variables can be saved to and read from by computer programs.
(TT exemplar Video) Changing the value of variables as programs run is a great way of making them more adaptable to different circumstances. What this means is that programs can behave differently in different circumstances.
Take for example a car racing game. The player could selecta difficulty level at the start of the game, saving a value to a variable. This variable could then be used to alter the way the game runs, for example by making the cards drive more quickly, thus making it a little harder to play.
Alternatively, consider a 'Pong' style game. Every time the player hits the ball with the paddle, their score increased by one. The value of this score variable could be used to alter the speed of the ball; the higher the score, the faster the ball moves.
By using selection (If statements), loops and the value of variables, it is possible to create complex programs that adapt the way they run to ever changing circumstances.
WORKING TOWARDS - Pupils understand that variable values set at the start of a program may be used at a later stage.
MET - Pupils understand how variable values can be changed and used as a program runs.
FURTHER KNOWLEDGE - Pupils confidently use variable values to influence a number of ways in which their program runs.
(TT Exemplar) When pupils are set a complex programming task, they should be able to break it up into logical chunks, considering the coding challenges that each presents. As they begin to code, they should also be able to identify potential bugs before they test their code.
Set your pupils a complex programming task that requires them to write a number of different procedures. Observe pupils identify the different sections of code that will be required and consider any potential bugs as they code.
If pupils identify a potential bug, they could print out their code and annotate it, explaining their logic behind why they believe it to be a bug.
WORKING TOWARDS - Pupils can compare their written code to a given task, identifying some potential bugs.
MET - Pupils demonstrate clear logical thinking as they work through the code required to solve a complex problem.
FURTHER PROGRESSION - Pupils efficiently combine the values from hardware sensors with IF statements to influence the way their programs run.
Year 6 have using the Microbits and how they work. They are exploring the different sensors, inputs, outputs and radio communication features using Microsoft MakeCode.