Computing at Avondale
National Curriculum
Use logical reasoning to explain how increasingly complex algorithms work to ensure a programs efficiency.
Design, write and test simple programs that follow a sequence of instructions or allow a set of instructions to be repeated.
Design write and test simple programs with opportunities for selection, where a particular result will happen
based on actions or situations controlled by the user.
(TT Exemplar Video) As pupils become more competent at coding, they should feel more comfortable combining a range of skills to solve more complex problems.
Set your pupils ever more challenging problems, linked to a growing array of known coding skills. This could include the use of variables, loops, IF ELSE statements etc. Confident coders should be able to identify how a particular skill could be used to solve a given problem.
WORKING TOWARDS - With support, pupils are able to use a limited range of programming skills to solve more complex problems.
MET - Pupils can use a broad range of programming skills to solve more complex problems.
FURTHER PROGRESSION - Pupils can effectively combine a broad range of programming skills to solve more complex problems.
Computer problems often interact with physical hardware, for example by controlling motors, lights and speakers.
Identify examples of hardware around school or in the home that is controlled by programs, such as automatic doors or security lights. Draw out that even modern cars are very much controlled by software. It may be worth looking into developments in self-driving cars.
Pupils should be able to integrate simple hardware with their coding projects, recreating real life physical systems. This may include turning a motor or light on and off.
WORKING TOWARDS - Pupils can control some simple hardware from within their programs.
MET - Pupils can control a range of hardware from within their programs.
FURTHER PROGRESSION - Pupils can control a range of hardware from within their programs, identifying parallels with real life physical systems.
It is unlikely for computer programs to complete a single task and then stop running. Instead, they often perform tasks over and over again. This is done through the use of loops.
Loops are a key concept that lie at the heart of many computer programs. They allow programs to repeatedly perform a function or wait for a user input.
Pupils should understand that code placed within a loop will repeat, either a set number of .times, or until the program stops. Challenge the pupils to program a square to be drawn, but using a repeat loop. Discuss whether this could be done with a repeat 2 or repeat 4. For each one, test the code.
WORKING TOWARDS - Pupils understand how loops can be used to repeat algorithms on the computer.
MET - Pupils have a good understanding of the concept of loops. They use them to repeat a range of algorithms within their programs.
FURTHER PROGRESSION - Pupils have a good understanding of the concept of loops including the difference between 'Repeat' and 'Forever' loops. They use them to repeat a range of algorithms within their programs.
(TT Exemplar Video) Many programs perform very simple tasks that do the same thing time and time again, regardless of any intervention from the user. For example, a clock program ticks and does nothing else.
Many programs however alter the way they run based upon certain scenarios. This is known as 'selection' since different code will be selected to run at different times.
Explore with the pupils a computer game in which points are awarded or lost depending on different scenarios. Identify how each is based upon a 'question' being asked, for example 'if touching the ball'_then do this_
Pupils should understand the logic here and how it can be achieved within their programs.
WORKING TOWARDS - Pupils can use IF statements correctly within their programs.
As pupils become more confident coders, they should more easily be able to explain how their code solves a given problem.
Pupils should be able to easily identify how a range of coding concepts have been used, including loops, selection (IF statements) and variables. They should also be able to explain why specific coding choices were made and how these choices suited the given problem.
Set your pupils a more complex programming task that requires the use of a range of coding concepts that have been taught. This could be to design, program and test a car racing game with a scoring system, or a drawing program in which the user selects colours and draws them on the screen.
Pupils could point out their code and then annotate it to demonstarte their understanding of how it helps solve the given problem.
MET - Pupils have a clear understanding of the logic of selection and can use IF and IF ELSE statement within their programs.
WORKING TOWARDS - Pupils can explain how some parts of their code work, relating to a given problem.
MET - Pupils can confidently explain how their code helps solve a complex problem.
FURTHER PROGRESSION - Pupils can confidently explain how their code helps solve a complex problem, identifying why their choices are more efficient than alternatives.
Through the use of loops and IF statements, pupils should be able to use values from hardware sensors to influence the way their programs run. Challenge the pupils to design, program and test a burglar alarm program that triggers when a switch is pressed or an intruder approaches a proximity sensor.
Through the use of loops and IF statements, pupils should be able to use values from hardware sensors to influence the way their programs run. Challenge the pupils to design, program and test a burglar alarm program that triggers when a switch is pressed or an intruder approaches a proximity sensor.
WORKING TOWARDS - Pupils can use a range of hardware sensors as triggers causing their code to run.
WORKING TOWARDS - Pupils can use a range of hardware sensors as triggers causing their code to run.
MET - Pupils can use the values taken from hardware sensors to influence the way their programs run.
WORKING TOWARDS - Pupils can use a range of hardware sensors as triggers causing their code to run.