You are on page 1of 107

Scheme of Work

Cambridge Lower Secondary


Computing 0860
Stage 8
This Cambridge Scheme of Work is for use with the Cambridge Lower Secondary
Computing Curriculum Framework published in September 2021
for first teaching in September 2022

Version 1.0
© UCLES 2021
Cambridge Assessment International Education is part of the Cambridge Assessment Group. Cambridge Assessment is the brand name of the University
of Cambridge Local Examinations Syndicate (UCLES), which itself is a department of the University of Cambridge.

UCLES retains the copyright on all its publications. Registered Centres are permitted to copy material from this booklet for their own internal use. However,
we cannot give permission to Centres to photocopy any material that is acknowledged to a third party, even for internal use within a Centre.
Contents

Introduction.................................................................................................................................................................................................................................4
Long-term plan....................................................................................................................................................................................................................... 4
Sample lesson plans.............................................................................................................................................................................................................. 5
Other support for teaching Cambridge Lower Secondary Computing Stage 8...................................................................................................................... 5
Resources for the activities in this scheme of work................................................................................................................................................................6
Websites................................................................................................................................................................................................................................. 6
Approaches to teaching Cambridge Lower Secondary Computing Stage 8.......................................................................................................................... 6
Unit 8.1 Algorithms and data...................................................................................................................................................................................................... 7
Unit 8.2 Networks..................................................................................................................................................................................................................... 24
Unit 8.3 Programming.............................................................................................................................................................................................................. 35
Unit 8.4 Modelling and databases............................................................................................................................................................................................ 55
Unit 8.5 Computer systems...................................................................................................................................................................................................... 67
Unit 8.6 End of stage projects.................................................................................................................................................................................................. 86
Sample lesson 1.......................................................................................................................................................................................................................94
Sample lesson 2.......................................................................................................................................................................................................................96

3
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Introduction

This document is a scheme of work created by Cambridge Assessment International Education for Cambridge Lower Secondary Computing Stage 8.

It contains:
● suggested units showing how the learning objectives in the curriculum framework can be grouped and ordered
● at least one suggested teaching activity for each learning objective
● suggested projects at the end of the stage that will consolidate learning from across the stage
● a list of subject-specific language that will be useful for your learners
● additional support for the programming content, including example code that can be used with your learners
● sample lesson plans.

You do not need to use the ideas in this scheme of work to teach Cambridge Lower Secondary Computing Stage 8. It is designed to indicate the types of
activities you might use, and the intended depth and breadth of each learning objective. You may choose to use other activities with a similar level of
difficulty in order to suit your local context and the resources that you have available. You may also choose to adapt the suggested activities and the
projects so that they can be embedded within the teaching of other subjects.

The accompanying teacher guide for Cambridge Lower Secondary Computing will support you to plan and deliver lessons using effective teaching and
learning approaches. You can use this scheme of work as a starting point for your planning, adapting it to suit the requirements of your school and needs
of your learners.

Long-term plan
This long-term plan shows the units in this scheme of work and a suggestion of how long to spend teaching each one. The suggested teaching time is
based on learners having about 2 hours of teaching per week for Cambridge Lower Secondary Computing at Stage 8. You can adapt the time, units and
order of the units based on the requirements of your school and the needs of your learners.

Unit Suggested teaching time


Unit 8.1 Algorithms and data 10 hours
Unit 8.2 Networks 10 hours
Unit 8.3 Programming 10 hours
4
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Unit Suggested teaching time


Unit 8.4 Modelling and databases 10 hours
Unit 8.5 Computer systems 10 hours
Unit 8.6 End of unit projects 10 hours
Total 60 hours

Sample lesson plans


You will find two sample lesson plans at the end of this scheme of work. They are designed to illustrate how the suggested activities in this document can
be turned into lessons. They are written in more detail than you would use for your own lesson plans. The Cambridge Lower Secondary Computing
Teacher Guide has information on creating lesson plans.

Other support for teaching Cambridge Lower Secondary Computing Stage 8


Cambridge Lower Secondary Centres receive access to a range of resources when they register. The Cambridge Lower Secondary support site at
https://lowersecondary.cambridgeinternational.org is a password-protected website that is the source of the majority of Cambridge-produced
resources for the programme. Ask the Cambridge Coordinator or Exams Officer in your school if you do not already have a login for this support site.

Included on this support site are:


● the Cambridge Lower Secondary Computing Curriculum Framework, which contains the learning objectives that provide a structure for your
teaching and learning
● grids showing the progression of learning objectives across stages
● the Cambridge Lower Secondary Computing Teacher Guide, which will help you to implement Cambridge Lower Secondary Computing in your
school
● templates for planning
● worksheets for short teacher-training activities that link to the teacher guide
● assessment guidance (to support classroom assessment)
● links to online communities of Cambridge Lower Secondary teachers.

5
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Resources for the activities in this scheme of work


We have assumed that you will have access to these resources:
● paper, pens and pencils for learners to use
● digital devices, such as desktop/laptop computers, handheld devices and other hardware such as video and audio recording equipment
● software that will enable learners to:
o create and save digital artefacts
o view, modify, create and run code in Python
o communicate online
o digitally search for information.

Other suggested resources for individual units and/or activities are described in the rest of this document. You can swap these for other resources that are
available in your school.

Websites
There are many excellent online resources suitable for teaching Cambridge Lower Secondary Computing. Since these are updated frequently, and many
are only available in some countries, we recommend that you and your colleagues identify and share resources that you have found to be effective for
your learners.

Approaches to teaching Cambridge Lower Secondary Computing Stage 8


Cambridge Lower Secondary Computing can be used flexibly as a standalone subject, integrated within other subjects or used as the basis for activities
outside of the formal curriculum. During your planning you will need to decide which approach, or mix of approaches, will enable you to address each
learning objective most effectively. The activities in this scheme of work are based on Computing being taught as a standalone subject but they can be
adapted to suit an integrated approach. For example, learners can apply programming skills through activities in other subjects.

To develop their broader digital and computing skills, we recommend that you provide learners with opportunities to use a range of devices, such as
desktop computers, laptops and tablets.

6
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Unit 8.1 Algorithms and data

Outline of unit:
In this unit, learners will extend their experience of following algorithms when they are presented as flowcharts. They will also be introduced to the concept
of pseudocode and its purpose in designing algorithms. This will include developing an understanding of the principles of pseudocode and of following
pseudocode algorithms that include conditional statements.

Learners will also be introduced to the concept of searching algorithms and to the reasons why these are required. They will gain practical experience of
using a linear search.

Learners will also extend their understanding of the computational thinking concept of decomposition, and its role in reducing problems into smaller
problems that can be solved independently of each other.

Recommended prior knowledge:


Before learners start this unit, they should already understand and have experience of:
● using conditional statements, limited to IF, THEN, ELSE, when presented within flowcharts
● following, and predicting the outcome of, a flowchart
● selecting and using appropriate constructs in algorithms that are written as flowcharts, and understand the importance of sequence
● selecting and using appropriate logical operators in algorithms, limited to <, >, <=, >= == (equal to) and != (not equal to).
They should have gained this prior knowledge in the earlier stages of the Cambridge Primary and Lower Secondary Computing curriculum. Therefore,
learners who are joining this curriculum at Stage 8 may require additional support to develop their understanding of these concepts.

7
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Language:
● algorithm
● flowchart
● pseudocode
● construct
● conditional statement
● searching algorithm
● linear search
● decomposition / decompose
● constant

8
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


8CT.03 Identify the Display a sequence of steps that are presented in structured
important characteristics statements and ask learners to follow them, for example:
of pseudocode, including Stand up, take 2 steps back, clap your hands twice, sit on
that it should be short, the floor, lie down, stand up, jump 3 times.
clear and precise and Through class discussion, elicit that these are short statements
should have the start and that are precise. Also elicit that it is clear what they mean without
end clearly shown. the need to ask for further information.
8CT.01 Follow and
Display the word ‘pseudocode’ and define it as:
understand algorithms that
a way of planning the structure and function of a program
are presented as
in a short, clear and precise way.
pseudocode.
Also explain that pseudocode is not specific to any programming
language.

It is also important to emphasise that there is no defined


pseudocode that everyone uses. The pseudocode that is written
and used will differ depending upon an individual’s purpose and
experience. All pseudocode should, however, use the same
programming constructs and rules, such as assignment,
comparison and iteration.
Put learners into pairs and give each pair a selection of different The similarities may include:
pseudocode algorithms that perform the same function but are ● using a symbol (= or ←) for assignment
written differently. Ask them to read through and discuss each ● using a command for reading in
example to identify the similarities between the different ● the addition symbol
algorithms. The examples could include: ● using a command word for outputting
● the use of variables to store data in.
INPUT value1
INPUT value2
OUTPUT value1 + value2

value1 = INPUT
value2 = INPUT
9
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


result = value1 + value2
print(result)

value1 ← ReadLineFromUser
value2 ← ReadLineFromUser
Printout value1 + value2

Now give each pair a list of constructs and ask them to identify a A valid pseudocode statement for ‘input’ could be
number of different ways that they can be written. For example, input, enter, read from user, type data,
ask the pairs to write pseudocode commands to either input or read line, read line from user.
output an item of data.
While all of these examples are valid pseudocode,
Ask the pairs for their answers and create a list of the valid Cambridge have created pseudocode guides in support
possibilities, identifying examples that would be appropriate in of the IGCSE, AS Levels and A levels in Computer
pseudocode because they clearly demonstrate that data is input Science. You can view these pseudocode guides on,
and because they are concise. and download them from, the Cambridge International
School Support Hub. Find them under the ‘teaching and
Display a pseudocode algorithm and ask learners to follow it to learning’ section for each of the Computer Science
identify the output for a given input. An example algorithm could syllabuses.
be:
INPUT name
INPUT favouriteColour
INPUT favouriteFood
OUTPUT "Hello ", name, " your favourite
food is ", favouriteFood, " and your
favourite colour is ", favouriteColour

Review learners’ understanding of pseudocode by asking them to


make personal notes about what they have learned. They can
present these notes in any format but the content should be
informed by their responses to the following questions:

10
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

11
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

12
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


● What is pseudocode?
Answer: A form of representing an algorithm without a set
syntax.
● When is pseudocode used?
Answer: When planning or designing algorithms.
● Why is pseudocode used?
Answer: It is language independent so anyone should be
able to understand it.
● What features does pseudocode contain?
Answer: Command words, assignment symbols,
mathematical symbols.

Resources:
● prepared sequences of steps that are presented as
structured statements
● prepared sequences presented as pseudocode.
8CT.02 Follow flowcharts Gather learners’ existing knowledge and understanding of
and pseudocode conditional statements by asking:
algorithms that use What is selection?
conditional statements. Elicit that selection is an instruction within an algorithm where a
decision is made about whether to run a piece of code or not.
Then ask:
How is selection usually written in programming?
Elicit that it is usually written as a question, or a comparison, that
results in ‘true’ or ‘false’.

Ask:
What are the key words used in conditional statements in
programming?
Answer: IF, THEN, ELSE

13
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


What are the different symbols that can be used for
comparisons?
Answer: >, <, >=, <=, <> = <> or != are both acceptable for not equal to.
= or == are both acceptable for equal to.
Put learners into pairs and give them a series of flowcharts that Learners should already be familiar with following
use conditional statements. For example: conditional statements in flowcharts but, if they are not,
begin with an introduction to the diamond selection
statement, and explain that it has ‘yes’ and ‘no’ arrows
which are followed depending on whether the response
to the question is true or false.

Learners may benefit from using algorithms that they


have developed or worked with in earlier stages, that
contain a decision, or IF statement. This will enable
them to understand these in the context of a flowchart.

Ask the pairs to follow the algorithms, with different input data,
and identify the outputs.
Display an example of pseudocode, to suit Python, for an IF This pseudocode is one way of presenting IF THEN
statement. For example: ELSE statements. There are other ways such as:
if condition: IF condition THEN
Code to run if true Code to run if true
else: ELSE
Code to run if false Code to run if false
ENDIF
14
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Explain that this shows the IF command, followed by the or
condition, then a ‘:’. All of the code that follows the ‘if If (condition)
condition:’ is indented and only runs if the condition is true. Then
Code to run if true
Also explain that the else: needs to be aligned with the IF, and Else
the code underneath is also indented, and that this is the code Code to run if false
that will run if the condition is false. endif

Return learners to their pairs and give each pair a series of


pseudocode algorithms that make use of selection (IF, THEN,
ELSE) statements. Examples could include:
Input Value1
Input Value2
if Value1 >= Value2:
OUTPUT Value1
else:
OUTPUT Value2

Colour = INPUT("Do you prefer purple or


green?")
if Colour == "purple":
OUTPUT "Purple is the best"
else:
OUTPUT "Purple is better than green"

Ask the pairs to follow the algorithms, using different sets of data,
and to work out what they do. They should also identify the three
different parts of the condition statement in each program. These
are:
● the condition
● the code that is run when the condition is true
● the code that is run when the condition is false.

15
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Hold a class discussion to consider the following questions:


What is the format of a pseudocode conditional
statement?
Answer: IF THEN ELSE, or if condition: else:
What are the three component parts of a conditional
statement?
Answer: the condition; the code to run if true; the code to
run if not true
Did you encounter any problems when following the
condition statements?
How did you know which code to run and which not to
run?
Did you try the algorithms with different data to see how
the code changed?

Resources:
● prepared flowcharts that include conditional statements
● prepared pseudocode that includes conditional
statements.
8CT.07 Predict the Put learners into pairs and give them a copy of a flowchart. Ask
outcome of algorithms and them to read the algorithm and its steps. An example flowchart
test that they meet those might be:
outcomes.

16
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Provide two values for input, such as 4 and 2. Ask the pairs to
predict what the output will be without using the flowchart. Ask
them to then use the algorithm and check if their answer is
correct. They should predict that the output is 2. Repeat this with
different values.
Repeat this process with different algorithms in different formats, Example algorithms:
for example: Output a message depending on the age of the user:
● pseudocode age = input("Enter your age")
● written as a list of instructions if age < 18:
● an actual program. print("You are a child")
The algorithms could: else:
● output a message depending on the age of the user print("You are an adult")
● output a grade depending on the mark entered
● represent a calculator Output a grade depending on the mark entered:
● represent a computer game where the character moves
and speaks different phrases depending on the input.

17
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Give each learner in the pairs a different algorithm from each


other and a set of input data. Ask them to each predict the output
of their algorithm and then to swap with their partner. The partner
should test the algorithm, using the same input data, to check
whether the prediction was correct.

Display the following questions:


Were your predictions always correct?
If one was wrong, why was it wrong?
Did you make an incorrect prediction or was there a
problem with the algorithm?
If there was a problem with the algorithm, were you able
to identify what it was and correct it?
A calculator:
Allow for a short period of reflection and then ask learners for
number1 = input("Enter the first
their responses. Once three learners have spoken, ask if any
number")
others have different experiences from those already shared.
number2 = input("Enter the second
Then ask a learner who has not spoken to say which of the
number")
responses they will consider when they make predictions or
calculation = input("Enter the
correct errors in algorithms in the future.
calculation")
IF calculation == "+" THEN
result = number1 + number2
ELSE
IF calculation == "-" THEN
result = number1 - number2
ELSE
IF calculation == "/" THEN
result = number1 / number2
ELSE
result = number1 * number2
ENDIF
ENDIF
18
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


ENDIF

A computer game where the character moves and


speaks different phrases depending on the input:

8CT.08 Know how to Display a description of an everyday task, for example:


decompose problems into ● brushing teeth
their sub-problems. ● making a hot drink
● making a pizza
● baking a cake.
Put learners into small groups and ask them to discuss the task
and to make a plan for how they will attempt to complete it. Ask
the groups to share their plan and, through a class discussion,
create a consensus that the task should be written in separate
sections. Support learners to understand that decomposing the
task into smaller pieces will mean that every part does not need
to be considered at the same time. For example, for baking the
cake, the task could be broken down as follows:
● obtain the ingredients

19
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


● mix the ingredients
● bake the ingredients.
Give the groups a scenario, for example: There is not necessarily a correct answer for how the
A shop wants to launch a new website. They task could be broken down, and each group is likely to
need to: take a different approach. For example, one group may
● create new artwork, such as a logo suggest splitting the website creation task into the
● include information such as structure and content, while another may split each
information about the shop. page individually. There is also no set order for the
The website also needs to include the facility separate parts because it is not an algorithm; therefore
for customers to purchase items online. the different parts of the task can be completed
simultaneously.
Explain that each group needs to share the task between each
member so that they all have a specific role. Ask the groups how
they divided the tasks between themselves.
Hold a class discussion to define decomposition as splitting a Learners will have understood decomposition from
task into its sub-problems. Also discuss the benefits of earlier stages but the idea that the sub-problems can
decomposition, including that: be divided between different people may be new to
● it is easier to solve many small problems than one large them.
problem
● if there are multiple people working on a problem, the task
can be divided between them. This means that:
o different parts of the task can be completed
simultaneously
o tasks can be designated according to specific skills or
specialities.

Now put learners into pairs. If possible, they should have the
opportunity to work with a partner that they haven’t yet worked
with during this activity.

20
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Give each pair a description of a problem for which a computer
program needs to be written in order to solve it. The problems
should be fairly large so that the pairs can focus their discussion
on splitting the problem into sub-problems, rather than starting to
focus on how the program will actually work.

For example, you could give them the problem of a satellite


navigation system. A possible decomposition of a satellite
navigation system could be:
● storing the maps
● allowing the input of the destination
● finding the current location
● finding the route to the destination
● displaying the route
● outputting the directions.

Ask learners to create a mind map that enables them to capture


their understanding of decomposition. The content of the mind
maps should be informed by the learners’ responses to the
following questions:
What is decomposition?
Answer: Splitting a problem into smaller problems.
How does decomposition help you solve a problem?
Answer: Smaller problems are easier to solve and then
join together.
How does decomposition help a team build a program?
Answer: Tasks can be split between individual team
members.

Resources:
● prepared tasks, scenarios and problems for learners to
decompose.

21
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


8CT.09 Know how to Introduce this activity by displaying the word ‘constant’ and If you introduce constants using a text-based language,
develop algorithms that asking: note that Python does not support constants. In Python,
use at least one constant. What does this word mean? although a value can be intended as a constant, it is
Elicit that a constant is something that stays the same and cannot still possible to change it.
change.

Describe the example of a computer where:


● a player has a set number of points at the start
● they lose one of these points each time they are
successfully attacked by another player
● the game ends when all the points have been lost.
Put learners into pairs and ask them to discuss which values do This discussion activity could be linked to other
not change in this example. The pairs should identify: subjects. For example:
● the number of points that the player starts with ● mathematics – where the value of Pi is constant
● the number of points that they lose each time they are ● science – where the constant is the value that
successfully attacked Fahrenheit is multiplied by to get the temperature
● the number of points that indicates that the game ends – in Celsius.
0 points.
Explain that a constant in programming can be defined as It is important at this stage to differentiate between a
a space in memory that stores a value that cannot be value that does not change and a value that cannot
changed while the program is running. change. A value could be stored in a variable, and then
An example could be a program that uses a constant to always this stays the same throughout a program, but it is
initialise the number of points at the start of the game to 3. possible to actually change it; therefore it is not a
constant. A constant can only be changed if the
Also explain the purpose of constants, for example: program is stopped, the source code is altered and
● they prevent accidental changes, for example incorrectly then the program is run again.
adding extra points for a player at the start of the game
● if the value needs to be changed, it only needs to be done ‘Declaring’ a constant, or a variable, is required to
once and then it will change automatically throughout the create space in the memory for that constant, or for a
program. For example, if the number of points lost when variable.
the player is successfully attacked needs to be increased

22
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


to 2, the value of the constant only needs to be changed
once instead of every time the code for a successful
attack occurs. This reduces the risk of human error in the
coding and saves time.
Display an algorithm that uses values that might be constants, for OUTPUT 1 * 12 means OUTPUT 1 multiplied by 12.
example: Therefore, all the outputs are multiplied by the same
OUTPUT 1 * 12 number – 12.
OUTPUT 2 * 12
OUTPUT 3 * 12
OUTPUT 4 * 12
OUTPUT 5 * 12
Elicit that, in this example, the number 12 is the same for all five
outputs, so 12 is therefore the constant.

Explain that using 12 as a variable means that the value of the


multiplier can be changed, for example from 12 to 5, and will be
updated throughout the algorithm. For example
Constant multiplier = 12
OUTPUT 1 * multiplier
OUTPUT 2 * multiplier
OUTPUT 3 * multiplier
OUTPUT 4 * multiplier
OUTPUT 5 * multiplier
can easily be changed to:
Constant multiplier = 5
OUTPUT 1 * multiplier
OUTPUT 2 * multiplier
OUTPUT 3 * multiplier
OUTPUT 4 * multiplier
OUTPUT 5 * multiplier

23
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Give pairs of learners a description of an algorithm. These might For the miles to kilometres example, an algorithm could
include: be:
● convert miles to kilometres Constant multiplier = 1.609
● convert pints to millilitres. Miles = INPUT("Enter a number of
Ask the pairs to write an algorithm and then decide which value miles")
or values should be a constant. The pairs should adapt their OUTPUT Miles * multiplier
algorithm to declare and then use the constant.

Ask the pairs to share their algorithms and to explain how they
identified, declared and used the constants. During these
discussions, check individual learner’s understanding of
constants by asking questions such as:
What is a constant?
Answer: A space in memory that stores a value that
cannot be changed while the program is running.
Why do you use a constant instead of a variable?
Answer: To avoid accidental changes. To allow you to
change the value once so it updates it everywhere that it
is used.

Resources:
● prepared algorithm descriptions that require constants.
8CT.04 Explain the need Introduce this activity by asking learners to consider the following
for searching algorithms. questions:
When did you have to search for something?
8CT.05 Describe and use
What were you trying to find?
linear searches.
How did you search?
Hold a class discussion to gather a range of responses. Learners
should describe the different times they may have searched and
how they approached it, such as:

24
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Unit 8.2 Networks

Outline of unit:
In this unit, learners will further develop their understanding of networks by exploring the following network types: PAN, LAN and WAN. They will also
extend their knowledge of methods of data transmission by examining the differences between wired and wireless connections, as well as by exploring
different types of wired connection. Learners will also explore how to check data transmission for errors, and will begin to look at specific software that can
be used to detect and remove threats to a system.

Recommended prior knowledge:


Learners should know:
● that devices can transfer data wirelessly using radio waves, including wi-fi and cellular networks
● why errors occur in data transmission
● how bandwidth affects network performance
● the differences between wi-fi and ethernet, including speed and security issues and the use of wires
● the role of a switch, router and wi-fi access point in a network.
● the need to keep data secure during transmission
● that network connected devices share information with each other and that there are risks associated with this.

25
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Language:
● binary (number)
● personal area network (PAN)
● local area network (LAN)
● wide area network (WAN)
● transmission
● copper cable
● fibre optic cable
● bandwidth
● switch / router / wireless access point
● echo check
● firewall
● virus / antivirus
● spyware / antispyware

26
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


8DC.01 Identify types of Introduce this unit by supporting learners to recall their existing
network, including PAN, LAN, understanding of networks. Ask the following questions:
WAN. What is a network?
Answer: a connection that allows two or more devices to
communicate
What is a network used for?
Answer: to send data, including emails, files and websites
What are the two types of connection?
Answer: wired and wireless

Ask learners to identify the different times that they have connected
two or more devices together. Examples might include:
● to send data to a printer
● to watch smartphone content on a larger screen
● to connect to the school network.
Create a list of learners’ suggestions and categorise these into
examples of PAN, LAN or WAN.

Elicit that a network can vary in size, from two devices that are
connected to each other, to the millions of devices that are connected
to the internet. Explain that, due to their different functions, there are
different types of network, including PAN, LAN and WAN. Introduce
these as follows:
● PAN is a personal area network. This is usually two devices (or
a small number) in close proximity connected for a specific
purpose, for example connecting a mobile phone to a
television to view images, or connecting a laptop to a printer.
● LAN is a local area network. This is multiple devices
connected over a small geographical area (usually defined as
a single building or under a mile). The hardware (infrastructure)
is owned by the network owner so it does not use external

27
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


cabling or the internet. Examples include a home network of
devices, or a school on a single site.
● WAN is a wide area network. This is multiple devices
connected over a large geographical area (usually defined as
multiple buildings). Some of the hardware is not owned by the
specific individual or company, but may instead be provided by
a utility company. Examples include a multi-campus university,
local government, or a nationwide store.

Display a list of different examples of networks such as:


● connecting a laptop to a printer
● connecting a mobile phone to a television
● computers connected within a home
● computers connected within a school building
● a network of money-dispensing machines
● a multi-campus university
● a city-wide government network.
Put learners into pairs and ask them to discuss and decide which are For the examples that have been provided, the
examples of PANs, LANs and WANs. Review each example in turn, answers could be:
asking learners to vote. Invite some learners to justify their choice. ● connecting a laptop to a printer – PAN
● connecting a mobile phone to a television
Learners may provide answers that are different to those listed, but – PAN
these may still be valid. It is therefore the justification which will be the ● computers connected within a home –
most important part of learners’ answers. For example, connecting a LAN
laptop to a printer could be a PAN, LAN or WAN depending on the ● computers connected within a school
set-up, such as whether they are connected directly, or through other building – LAN
network hardware. ● a network of money-dispensing machines
– WAN
Allocate each pair either PAN, LAN or WAN to investigate further. The ● a multi-campus university – WAN
pairs should conduct research to identify as many examples for their ● a city-wide government network – WAN.
given type of network as possible. Ask them for their answers and

28
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


create a class list of the different examples. Support the class to
identify where some of the examples might apply to more than one
network type, for example a LAN can connect a laptop to a printer, but
it is a PAN when it is a direct connection and not via other hardware.

Support learners to make notes on their understanding of this activity.


They can choose how to present their notes, but an infographic that
includes graphical representations of each network type might be
effective. Regardless of the method they choose, their notes should be
informed by their responses to the following questions:
What do PAN, LAN and WAN mean?
Answer: Personal area network, local area network, wide area
network.
What is the difference between a PAN and LAN?
Answer: PAN is a direct connection for one purpose, LAN is a
connection between many devices to perform multiple
functions, within the same geographical location.
What is the different between a LAN and WAN?
Answer: WAN is over a larger geographical area and makes
use of external hardware. For example, hardware required for
connection to the Internet.
What is an example of a PAN, LAN and WAN?
Answer:
● PAN - printer to computer
● LAN – a home network
● WAN – a multi-campus University.

Resources:
● a list of network examples
8DC.02 Describe the uses Ask learners to find out three facts about copper cables and three
and characteristics of copper facts about fibre optic cables. They can use textbooks and the World

29
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


cables and fibre optic cables Wide Web to find this information. The characteristics that learners
to transmit data. consider during their research can include:
● type of data transmitted
● speed of transmission
● cost
● expertise required for set-up and maintenance
● how and where each is most likely to be used.
Collect the different facts and support the class to come to a shared
understanding about each type of cable.
If possible, collect examples or photographs of each type of cable and Before learners handle the cables themselves,
show learners the physical differences between them. make sure that they are aware of the safety
risks. This will provide a further opportunity to
Put learners into pairs. Give them a set of statements and, for each consider the expertise that is required when
one, ask them to identify whether they relate to copper cables, fibre connecting and maintaining cables.
optic cables, both or neither. Example statements, and responses,
might be:
● is a wired connection (both)
● transfers data (both)
● is a wireless connection (neither)
● transmits data as light (fibre optic)
● transmits data faster (fibre optic)
● transmits data as electricity (copper)
● can only transmit a short distance and then needs repeaters
(copper)
● is more expensive to set up (fibre optic)
● will work when bent (copper)
● requires specific expertise to install (fibre optic)
● has higher bandwidth (fibre)
● transmits signals in binary (both).

30
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Discuss learners’ responses and agree a final set of statements as a
class.

Ask individual learners the following questions and use support from
the whole class to agree the final answers:
Give two examples of wired connections.
Answer: fibre optic and copper
Which transmits data faster?
Answer: fibre optic
Which is cheaper to install and maintain?
Answer: copper
Which is easier to manoeuvre and bend around obstacles?
Answer: copper

Ask learners to make notes about the uses of copper and fibre optic
cables that are mentioned during the class discussion. The notes
should include descriptions of each type of cable. It would also be
helpful if learners could include a photographic image of each type of
cable.

Resources:
● samples or photographs of copper and fibre optic cables.
8DC.03 Describe the Introduce this activity by asking the following questions: Most learners should have some experience of
advantages and How do you connect to a wired network? wireless or wired networks. If learners’
disadvantages of wired and Answer: by plugging in a cable; the user may also need to log experience at home is more often with wi-fi, it
wireless networks, including in to a network would be beneficial to demonstrate how to
performance and security How do you connect to a wireless network? connect a computer to a wired network. This
aspects. Answer: connect the wi-fi on the computer to the router, using will support them to understand any constraints,
the wireless access point, and enter the password for example that the cable needs to be the
correct length, and the lack of portability.

31
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Hold a class discussion on learners’ experiences with both wired and
wireless connections by asking:
Give an example of when you were unable to connect to a
network.
Give an example of when you lost a signal and had to move
elsewhere?
If you connect with a cable, what are you unable to do?
Answer: Move around freely
What do you do when your internet access speed is slow?
Give learners the following list of statements and ask them to identify Some of these statements depend on the
which relate to wired and which to wireless networks. They can do this situation, for example there may be occasions
as a card sorting activity. The statements, and expected answers, are: when a wireless connection is faster than a
● usually has a faster transmission speed (wired) wired one. Learners should understand that the
● allows the user to connect from anywhere within distance (or statements are of what is generally expected.
range) (wireless)
● easily hacked if no password set (wireless) Learners may need to be supported to
● subject to interference from physical barriers, such as walls understand that ‘hacking’ is unauthorised
(wireless) access to a computer system, with the intention
● allows any number of devices without extra connections to cause damage, or to steal or delete data.
needed (wireless)
● easier to connect new devices to (wireless)
● usually cheaper to set up as less hardware needed (wireless)
● usually a more reliable connection (wired) Wired connections are generally considered
● usually more secure (wired) more reliable, but learners may ask what
● limited range in terms of distance (wireless). happens if a cable becomes damaged.
Put learners into pairs and give them a scenario where they need to For some of these examples, such as
decide if a wired or wireless network would be more appropriate, and transferring files from one laptop to another,
to justify their answer. The scenarios might include: there is no single correct answer. The
● a family wants to watch films downloaded from the internet justification is more important, for example:

32
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


● a school purchases over 100 computers for students to ● one learner may identify that wireless is
connect to each other better because they do not need wires and
● a supermarket connects its systems together do not need to be directly next to each
● two people want to transfer files direct from one laptop to other, and the files may be relatively small
another. so will not take long with a wireless
transmission
Ask learners to return to the notes that they created about the different ● another learner may state that wired is
networks types, PAN, WAN and LAN, earlier in this unit. They should better because the files will be transferred
add further notes to express their understanding of when and why faster and, if the documents are private,
cable or wireless connections may be used. Ask the following then it is more secure.
questions to help them to structure their notes:
Why could a wireless connection be better than a wired
connection?
Answer: more portable; users can add more devices easily
Why could a wired connection be better than a wireless
connection?
Answer: faster transmission; more secure; more reliable
8DC.04 Describe how echo Introduce this activity by displaying the following problem: Learners may not be familiar with some of the
checks are used to detect You need to send a message to a partner. How can you check reasons why errors occur in data transmission,
errors in transmission. whether the message arrived correctly? so they may need some support. They might
Gather a range of ideas from learners. One of the suggestions might suggest interference or hardware faults.
resemble an echo check, so use this as an opportunity to explain an
echo check to the class by defining it as a method of error detection,
where:
● the sender transmits data to the receiver
● the receiver sends the data received back to the sender
● the sender then checks whether both sets of data are the same
● if an error is detected, the data is sent again.
Simulate an echo check by giving learners a long binary number to The message should be suitably long, for
‘transmit’ to a partner. Ask the partner to send the received number example 12 bits, and complex so that learners
back again. The first learner then needs to check whether they match. may accidentally introduce errors. They should

33
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


also read the numbers quickly and not wait for
Hold a class discussion to consider any problems that learners their partner to write down each one.
encountered during this activity. Learners should also explain any
problems that they can foresee happening in the future. The problems
could include that although the first transmission is correct, the echo
back is incorrect, causing the data to be resent unnecessarily.
Resending the data will slow down its receipt and could create
bandwidth issues.

Support learners to create a mind map about echo checks. They


should place the term ‘echo check’ in the centre of the mind map with
the following questions and answers written around it:
Why is an echo check needed?
Answer: To check whether data has been transmitted
correctly.
How does an echo check work?
Answer: The sender transmits the data. The receiver transmits
the received data back. The sender then compares both sets
of data to determine if they are the same.
What are the possible problems with an echo check?
Answer: The error may occur in the second transmission. This
will cause the data to be resent when it is not necessary to do
so, given that the initial transmission was correct. Resending
the data will slow down is receipt and could create bandwidth
issues.
8DC.05 Explain the role and Support learners to recall their existing knowledge about threats to If learners do not have any prior knowledge of
the importance of firewalls in computers. Write down and display each threat as it is identified. this topic, ask them to work in pairs to research
networks. Examples might include: definitions of ‘hacker’, ‘virus’ and ‘spyware’, for
● data can be intercepted example:
8DC.06 Explain the use of
● people can try and gain access to a computer ● hacker – a person who gains
antivirus and antispyware to
● a virus can be installed to delete data unauthorised access to a computer
● spyware can be installed to record activity. system to damage, steal or delete data
34
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


keep data secure on a ● virus – software that is installed without a
network. Put learners into groups of four and ask them to discuss the following user’s knowledge which creates copies of
questions. After a short time, a learner from each group should explain itself in order to destroy or damage data
the group’s conclusions to the rest of the class. Discuss any differing ● spyware – software that is installed
responses or misconceptions. A different learner from each group without a user’s knowledge to record their
should answer each question. key presses and transmit them to a third
What can happen if someone gets access to your computer?
party, who can use them to find
What can they do?
passwords.
Answer: delete data, change data or install malware
What future problems may this cause? Give learners some examples of scenarios
Answer: loss of personal or important data where they can judge the potential loss. For
What can happen if a virus is installed on your computer? example, ask them to imagine that someone
What damage can it cause? accesses a school computer system, a hospital
Answer: it can: delete data; fill the hard drive so there is no system or a government system. Emphasise
memory space left; replicate itself and transmit itself to other that the same threat can do similar damage but
people’s computers the consequences of the threat may differ.
What can happen if spyware is installed on your computer?
What damage can it cause?
Answer: it can record your username and password and use
them to access your system in a different way; criminals can
use spyware to record bank details and steal money.

Display the following question:


How do you make sure that only certain people can enter your
house?
Hold a class discussion on the preventative measures that can be
taken, for example:
● lock the door
● check who is standing outside
● only allow people that you trust to enter.
Link this process to a firewall. Agree a shared definition of ‘firewall’, for
example:
35
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


firewall – a piece of hardware or software that checks the data
that is coming into a computer; if the data is not authorised, the
firewall stops it from entering.
Also agree definitions of ‘antivirus’ and ‘antispyware’. For example: When discussing antispyware, ensure that
antivirus – software that scans files for viruses, then either learners have first understood the definition of
deletes them or quarantines them spyware, given above. It may be helpful to
antispyware – software that scans files for spyware, then either display this for reference.
deletes them or quarantines them.

Display a scenario, for example a police station that stores data about
criminals. Ask learners to write a proposal which recommends why the
organisation, person or company should install a firewall and antivirus
and antispyware software. Learners should give reasons for their
recommended security measure. Repeat this with different scenarios
so that a range of ideas can be discussed by the class.

Ask the following questions and discuss learners’ responses:


What is the purpose of a firewall?
Answer: to stop unauthorised access to a computer system
How does a firewall stop unauthorised access?
Answer: it scans incoming and outgoing signals and stops
those that are not authorised
What is the purpose of antivirus software?
Answer: to stop viruses
How does antivirus software stop viruses?
Answer: it scans files for viruses and deletes or quarantines
any that are found
What is the purpose of antispyware software?
Answer: to prevent spyware from gaining access to a device
How does antispyware stop spyware?

36
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Answer: it scans files for spyware and deletes or quarantines
it

37
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Unit 8.3 Programming

Outline of unit:
In this unit, learners will extend their understanding of conditional (or selection) statements by implementing IF statements in a text-based programming
language. They will use the conditional Boolean operators AND, OR and NOT within programming, and link this to their existing understanding of logic
gates. Learners will also extend their understanding of data types to include the Boolean data type, linking to the Boolean operators being used in
selection.

Learners will explore what is meant by library programs and their purpose in programming. They will use a library function and import it into a text-based
program. They will also develop programs using an iterative process to design their own test plans for a given problem, and then use this to test a program
with a range of data.

Learners will also continue to explore programming physical devices through the interaction of two (or more) devices.

Recommended prior knowledge:


Learners should already be able to:
● identify and describe data types in text-based programs, including Integer, Real and String
● develop text-based programs that use:
o input and output
o data types including Integer, Real and String
o variables
o different arithmetic operators, including +, -, *, /
● apply a test plan and test a program using a range of data
● develop a program for a physical computing device to generate multiple outputs, based on multiple inputs

38
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Language:
● program library
● Boolean
● data type
● library function
● conditional statement
● selection statement
● Boolean operators
● iterative process
● indent / indentation
● flag
● testing / test plan

39
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


8P.01 Outline the purpose of Introduce this unit by holding a class discussion about the purpose of Make sure that learners understand the
program libraries. libraries. Ask the following questions to guide the discussion: important difference between book and
Have you ever been to a library? program libraries:
8P.03 Identify and know how
What does a library allow you to do? ● if you borrow a book from a book library,
to use library functions in
Why do you use a library? you need to return it after the set period
text-based programs.
Elicit that the purpose of a library is to enable readers to borrow and of time
read books for a set period of time, without paying a fee. ● if you use code from a program library,
you can use it indefinitely.
Link this definition to program libraries in computing. Explain that
program libraries contain pre-written and tested modules, or
self-contained programs, that can be called by another program.
Program libraries save programmers time in writing and testing newly
created functions. Libraries also allow less experienced programmers
to include complex things that they may not yet be able to create for
themselves. Therefore, using libraries in this way can simplify the
whole programming process.
Introduce learners to a Python library, for example random or math. You may need to introduce the concept of
Demonstrate how to import the library into a program, for example: random numbers at the beginning of this
from random import random activity. The purpose of random numbers is to
import math generate random events, select random
choices or make decisions, such as which
Put learners into pairs and give each a description and example of at move a computer should make during a game.
least one library function. For example, from random: Explain that truly random numbers do not exist
randomNumber = random.randint(0, 100) in computers, because there is always an
The 0 is the smallest number that will be randomly generated, the 100 algorithm within the operating system to
is the largest number that will be randomly generated. generate them.

Demonstrate how to import the library and how to use its function. Regardless of which library you use, random
Then set each pair a series of problems that will enable them to or math, learners will benefit from a short
experience using the library for themselves. For example: explanation of the other as this will help them to
● generate a random number between 1 and 10 visualise what different libraries can do.

40
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


● generate a random number between 1 and 4, output a different
message depending on the number selected
● simulate the roll of a dice (between 1 and 6)
● simulate a Magic 8-Ball game, where the user asks a question,
then one of a series of five answer options (yes, no, maybe,
not sure, try again) is output; the answer will be determined by
random numbers between 1 and 5.

A random decimal number can be generated using multiple-digit


numbers and then dividing by the power of 10. For example:
randomNumber = random.randint(10, 20)/10
will generate numbers with 1 decimal place between 1.0 and
2.0
randomNumber = random.randint(250, 550)/100
will generate numbers with 2 decimal places between 2.50 and
5.50
randomNumber = random.randint(250, 550)/10
will generate numbers with 1 decimal place between 25.0 and
55.0.

As an alternative to the random library, you could use math. For


example:
radius = 10 It would be useful to recap common circle
circleArea = math.pi * radius * radius calculations before introducing math.pi, such
circleCircumference = math.pi * radius * 2 as the circumference of a circle as either π𝑑 or
Where math.pi returns the value of pi. 2𝑟π. You may decide to teach learners about
program libraries when they are learning about
roundUp = math.ceil(2.66) π in Mathematics.
Where the number in the brackets is rounded up to the nearest
whole number (integer).

41
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


roundDown = math.floor(2.66)
Where the number in the brackets is rounded down to the
nearest whole number (integer).

Example problems for math could include:


● enter a decimal number and round up and round down
● get the computer to output a decimal number; ask the user to
round it down and enter the result, check if the answer is
correct
● repeat as above, but with the user being asked to round the
number up
● repeat as above, but ask using a series of random numbers.

Support learners to recall their learning from this activity by asking


them to discuss the following questions in their pairs:
What is a program library?
Answer: A pre-written and pre-tested programs that can be
called in another program.
How do you use a program library in Python?
Answer: You import the library and then call the functions.
What are some examples of program libraries in Python?
Answer: random and math.
Why are program libraries useful?
Answer: They save time in writing new functions. They are
also pre-tested so should already work.
The pairs should make notes of their answers, then share these with
another pair and agree on their answers as a group. Hold a class
discussion and invite each group to share their agreed answers.
8P.04 Know how to develop Support learners to recall what is meant by conditional, or selection,
text-based programs with statements by asking:

42
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


conditional (selection) What are the three component parts of a conditional
statements. statement?
Answer: the condition; the code to run if true; the code to run if
8CT.06 Understand and use
not true
rules using AND, OR and
What is a conditional statement?
NOT to create logic within
Answer: A question that has a true or false answer.
algorithms.
What is the symbol for a condition in a flowchart?
8P.06 Know how to develop Answer: a diamond
text-based programs which
use rules involving AND, OR What are the conditional operators that we can use? In mathematics, the equivalents of the last
and NOT. Answer: <, >, =, !=, <=, >= three of these symbols are: ≠, ≤ and ≥.
Give each learner either a blue or orange coloured card and display a
list of statements that use AND, OR and NOT conditions. For
example:
If you are holding a blue card hair AND your height is more
than 1.5 metres, stand up.
If you are NOT holding an orange card, sit on the floor.
If you are holding a blue card OR you are holding an orange
card, clap your hands.
If you are holding an orange card OR your height is more than
1 metre, jump.
After each statement, discuss the meaning of the AND, the OR and These statements can be linked to truth tables
the NOT. For example: and logic gates if learners have prior knowledge
● in the first statement, both conditions must be true for learners of these.
to stand up ● AND requires both conditions to be true
● in the NOT statement, it reverses the condition, so only those (1 1) to result in true.
who are holding a blue card sit on the floor ● OR requires one or both conditions to be
● in the first OR statement, either condition being true will result true (1 1, 1 0, 0 1).
in a clap ● NOT reverses the statements (1 becomes
● in the second OR statement, anyone holding an orange card or 0, 0 becomes 1).
is taller than 1 metre would jump.

43
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Introduce learners to the format of conditional statements in Python,


using singular if, as well as if else. The format of these is as
follows:
IF:
if condition:
code to run if true
IF else:
if condition:
code to run if true
else:
code to run if false
Use different examples and ask learners what they mean, and what The indents are important in Python. Once the
the results will be. These examples could include: user has typed the colon and pressed enter, the
number = 10 cursor should be auto-indented to the correct
if number == 10: position within the IDE. In the first example
print("Yes") below, the print statement is not in the if
else: statement so it will always run; in the second
print("No") example, it is indented so it will only run if the
if statement is true:
first = 20 if x = 10:
if first < 20: print("Hello")
print("Less than 20")
else: if x = 10:
print("20 or more") print("Hello")
Introduce the Boolean operators (AND, OR, NOT) in the same way, for In Python, the Boolean operators ‘and’ and ‘or’
example: are written in lower case and need to have a
first = 10 condition on either side, for example:
second = 20 If x = 10 and y = 10:
if first < 20 and second < 20: If x = 10 or y = 10:
print("Both less than 20")

44
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


The Boolean operator ‘not’ needs to be before
if first < 20 or second < 20: a condition, for example:
print("At least one is less than 20") If not x = 10:

value = True
if not value:
print("False")
else:
print("True")

Put learners into pairs and give them a series of programs to write that
use the conditional statements if and else and progress to
conditional statements AND, OR and NOT. For example:
1. Take a number as input from the user and check whether it is
greater than 10. Repeat by checking if it is less than 10.
Answer:
numberInput = int(input("Enter a number"))
if numberInput > 10:
print("Greater than 10")
else:
print("Less than or equal to 10")

2. Ask the user a question and output whether their answer was
correct.
Answer:
answer = int(input("What is 2 * 2?"))
if answer == 4:
print("Correct")
else:
print("Incorrect")

45
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


3. Ask the user to guess what number is stored in the computer.
Output ‘Correct’ for a correct guess or ‘Incorrect’ for an
incorrect guess.
Answer:
number = 100
guess = int(input("Guess what number I am
thinking of"))
if guess == 100:
print("Correct")
else:
print("Incorrect")

4. Ask the user to enter a number between 1 and 10 and output


whether they did this successfully or not.
Answer:
numberInput = int(input("Enter a number
between 1 and 10"))
if numberInput >= 1 and numberInput <= 10:
print("Success")
else:
print("Incorrect")

5. Take two numbers as input from the user and output the
number which is larger.
Answer:
first = int(input("Enter a number"))
second = int(input("Enter a number"))
if first > second:
print(first)
else:
print(second)

46
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


6. Ask the user a ‘yes’ or ‘no’ question and check if they
answered yes with different combinations of upper and lower
case letters, such as ‘yes’, ‘Yes’ and ‘YES’.
Answer:
answer = input("Is a dolphin a mammal?")
if answer == "yes" or answer == "YES" or
answer == "Yes":
print("Correct")
else:
print("Incorrect")

7. Ask the user to enter two test results. If either test result is
greater than 90, tell them that they passed.
Answer:
result1 = int(input("Enter result 1"))
result2 = int(input("Enter result 2"))
if result1 > 90 or result2 > 90:
print("Pass")

8. Ask the user to enter two test results. If both results are greater
than 90, tell them that they passed with distinction.
Answer:
result1 = int(input("Enter result 1"))
result2 = int(input("Enter result 2"))
if result1 > 90 and result2 > 90:
print("Distinction")

9. Ask the user to answer a question and use NOT to output


whether they are incorrect.
Answer:
answer = int(input("What is 10 * 10?"))
if not(answer == 100):

47
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


print("Incorrect")
else:
print("Correct")

Resources:
● coloured cards for two colours, for example blue and orange.
8P.02 Identify and describe Introduce this activity by asking: Learners should already be familiar with
data types in text-based What is a data type in programming? Integer, Real and String in Computing. If they
programs, including Integer, Answer: data that is put into categories, so the program knows are not, introduce these as:
Real and Boolean. what is expected ● Integer stores whole numbers
What data types do you already know? ● Real stores decimal numbers
8P.05 Know how to develop
Answer: Integer, Real and String ● String stores characters that can include
text-based programs using
letters, symbols and numbers that cannot
data types, including Integer, What is the difference between an Integer and a Real number?
be used mathematically.
Real, String and Boolean. Answer: an Integer is a whole number, a Real number is a
Learners may encounter slightly different
decimal number
definitions of Integer and Real in Mathematics,
What is a string? but should understand the definitions above for
Answer: one or more characters that can include letters, Computing.
symbols and numbers that are not used in mathematics
calculations, such as telephone numbers or credit card
numbers.

Introduce the concept of a Boolean data type as ‘true’ or ‘false’ We usually spell ‘Boolean’ with a capital B.
because it can only be one of two values. Demonstrate this by saying Explain that this is because it is named after a
a statement such as person: George Boole.
‘10 is less than 11’
and agreeing that this is ‘true’.
Ask:
What else in programming only has two values?
Answer: binary is 1 or 0

48
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Support learners to associate the Boolean data type ‘true’ with the
binary number ‘1’, and ‘false’ with ‘0’.
Give learners a table of data and ask them to identify the most Learners often identify any numeric-only values
appropriate data type for each. Here is an example table, with the as being Integer or Real. However, numbers
expected answers in italics : that are not used in calculations, such as
telephone numbers or credit card numbers, will
always be a string. Explain that if the number is
never used in a calculation, it is a string.

Integer data types cannot start with a 0. Any


leading 0s will be removed. Therefore, any
integer that needs to have leading 0s, such as
an ID number, will need to be stored as a string.
In this table, if the ID number of the book was
stored as an integer, it would be 1182738,
which might be the ID number of a different
book.

Explain the use of Boolean data as a ‘flag’. Explain that it is used to


indicate if something has occurred, or is valid or correct. If the flag is:
● true then it is positive, meaning that it has occurred, it is valid
or it is correct
● false it is negative, meaning that it has not occurred, it is not
valid or it is incorrect.

Put learners into pairs and give them a set of programs that will
require the use of data of different data types. For example:
1. Ask the user a series of questions that require answers as In Python, for True and False to be recognised
integers, reals and strings. Store whether they answered each as Boolean they need to be True or False.
question correctly in a different variable as True for correct, This is case sensitive.
and False for incorrect.
49
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Answer:
answer1 = int(input("What is 1 + 2?"))
if answer1 == 3:
answer1Result = True
else:
answer2Result = False
answer2 = float(input("What is 3 / 2?"))
if answer2 == 1.5:
answer2Result = True
else:
answer2Result = False
answer3 = input("Enter True if 2 = 3? Or
False otherwise")
if answer3 == "True":
answer3Result = True
else:
answer3Result = False

2. Ask the user to enter True or False. Output a different


message depending on their answer.
Answer:
entered = input("Enter True or False")
if entered == "True":
result = True
else:
result = False

if result == True:
print("Yes you entered True")
else:
print("Oh no, you did not enter True")

50
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


3. Design a questionnaire and write a program to ask the user the When taking input from a user, Python will store
questions and store their answers. all data as a string. To convert it to an integer
Answer: the code int() needs to be used, for example:
firstName = input("Enter your first name")age answer = int(input("What is 1 +
= int(input("Enter your age")) 2?"))
pocketMoney = float(input("Enter the amount For a real number, the key word float is
of pocket money you get")) needed instead of int.
likeGames = input("Enter True if you like
video games") To check for Boolean data, the value would
if likeGames == "True": need to be compared to the String value. It will
likeGames = True not actually store it as a Boolean data type
else:
unless done manually, for example:
likeGames = False result = input("Enter True or
False")
4. Write a program that displays some data and asks the user for if result == "True":
the most appropriate data type for each. Output whether they result = True
are correct or incorrect. This would not be done practically in
Answer: programming, but it is good experience for
print("What data type is more appropriate learners to manipulate the values.
for:")
answer1 = input("True or False")
Depending on your context, you may need to
if answer1 == "Boolean":
use a different example to pocket money.
print("Correct")
Pocket money can be defined as ‘a small
else:
amount of money given regularly to a child by
print("Wrong it is Boolean")
an older family member’.
answer2 = input("1, 4, 6, 12")
if answer2 == "Integer":
print("Correct")
else:
print("Wrong they are integers")

51
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


answer3 = input("horse, spider, rabbit")
if answer3 == "String":
print("Correct")
else:
print("Wrong it is a string")

answer4 = input("1.22, -2.93, 99.00001")


if answer4 == "Real":
print("Correct")
else:
print("Wrong they are real numbers")

Extend this activity using OR conditions to allow different spellings, for


example by checking if the user has entered "Integer" or "integer" or
"int" or "Int".

Display the following questions and allow learners to reflect on them,


based on their experience during this activity:
Did you encounter any problems while writing the programs?
What were the problems?
Were these to do with the data types?
How did you fix them?
Allow learners to discuss their responses in pairs and then ask:
Did you both encounter any problems that were similar?
Did your partner offer any useful solutions to the problems?

Conclude by asking:
What is the difference between a String and a Boolean data
type?
Support learners to recall that Boolean is only ‘true’ or ‘false’, while a
String can be any combination of characters.

52
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Resources:
● data type table or worksheet
8P.07 Use an iterative Introduce this activity by asking: Learners are likely to have already used
process to develop programs. What do we mean by iteration or repetition? iterative development when writing programs
Elicit that it is about doing the same thing more than once. Then ask: without realising. This is because programs
When you write programs, do you always get them right first rarely work first time and, therefore, they are
time? changed and then tested again.
If not, what do you do when a program is wrong?
Do you always write the whole program in one go, or do you
write a small part and then add to it?
Why do you do it this way?

Display the term ‘iterative process’ and explain what we mean by an


iterative process in software development, for example:
An iterative process is the process of writing part of a program,
testing it and editing it, then adding to the program, testing it
and editing it, and then adding to it continually until a final,
working, program is produced.

Put learners into pairs and give them a description of a program that
takes a user’s grades or marks in a range of subjects and then outputs
which subjects they should continue to study. For example, high
scores in Maths and Computing could create an output recommending
that the user continues to study Maths and Computing.

Ask the pairs to discuss, plan and then create their program. Tell them
that they must use the ‘discuss, plan, create’ cycle iteratively until their
program is complete.

Invite pairs to demonstrate their program and to explain:


● how they used an iterative approach

53
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


● how they know it was iterative
● whether they thought this process was useful
● whether the iterative process seemed the natural way to
approach the task.

Support learners to make notes on iterative development processes.


They can choose their own format for their notes but could be guided
by the following questions:
What is iterative development?
Answer: Repeatedly editing and testing a program until it is
complete.
Have you used iterative development before without knowing
it?
Did you find iterative development useful?
How could iterative development be useful when you have a
very large program to write?
Answer: The program can be split it into smaller parts, with
those parts being worked on individually. New features and
parts can then be added to the program throughout the
iterative process.
8P.10 Know how to test Tell learners that this activity is about testing the programs that they
algorithms using suitable create. Ask:
data. Why do we need to test programs?
Answer: to make sure that they work; to check there are no
8P.09 Explain the need for
errors; to check that they give suitable responses to
using a range of test data.
unexpected input
8P.08 Know how to develop How do we test that a program works?
and apply test plans. Answer: we use the program, for example by entering data
and pressing buttons, then check whether it does what is
expected to meet its criteria

54
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Demonstrate a program that only works with some data and not with The second condition is incorrect. It should be
other data, for example: number <= 10. If the user inputs 10, the
number = int(input("Enter a number between 1 program will produce the wrong output.
and 10 inclusive"))
if number >= 1 and number < 10:
print("Success")
else:
print("Wrong")
Demonstrate that testing this program with:
● 5 will output Success
● 15 will output Wrong
● 10 will output Wrong, so it will not work as expected.
Hold a class discussion on why it is not sufficient to test a program Make it clear that not every possibility can be
with one or two examples of test data. Elicit that a range of data tested. Instead, developers need to make a
should be used. reasonable judgement about when they can
state that their program works.
Give learners a blank test table for a program. For example:
Explain that sometimes a program can be
tested with a wide range of data but can still
contain an error that has not been thought of,
such as in a gameplay situation when a
character bumps into an object and can no
longer move.
Put learners into pairs and ask them to use the table to create a test
plan for the program that they looked at earlier in the activity. They
should plan to test it with a range of data, but they should not perform
the test yet. An example of the output from this activity might be:

55
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Ask pairs to share their completed test table with another pair and to
add any further tests that they think are appropriate. The pairs should
then test the program and complete the ‘Actual result’ column.

Ask learners to select a program they have written previously and to


produce a test table for it. Ask them to swap their test tables with a
partner to discuss whether they have included sufficient tests, with a
sufficiently wide range of data. They should then test their programs to
check whether they work as expected.

Hold a class discussion to consider the following questions:

56
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Why did you test your program?
Answer: To make sure it works and to check whether it does
what is expected to meet its criteria. Testing also checks
whether the program is able to give a suitable response to an
unexpected input.
Why should you test a program using a range of data?
Answer: It may work with one input but not any other inputs.
Testing with a range of data also checks whether the program
works in all reasonable cases.

Resources:
● test table template
● learners’ programs from earlier activities.
8P.11 Know how to develop Check learners’ prior experience of using programmable devices, and Learners may have used beebots and
programs that allow two or support them to recall this experience, by asking: micro:bits in earlier stages. For example, they
more physical devices to What devices do you know how to program? may have given directional instruction to a
interact. What commands can you remember for these devices? movable device or may have programmed
What can you make these devices do? simple traffic -control systems.
Ask learners to access programs they have previously written for the
devices and to discuss in pairs what each line of code does and how it If no example programs are available, give
works. learners an example such as the following,
which uses MakeCode:
Hold a class discussion on the interaction of devices in the 'real world'
by asking:
What devices do you know that interact?
Support learners to suggest examples such as:
● computer to printer
● laptop to mobile phone
● thermostat to heating.
Ask:
How do devices communicate? What do they send?

57
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Elicit that devices send messages in binary and that they could be
transmitted by, for example, cable, wi-fi, satellite or Bluetooth.

Demonstrate how to make two or more devices interact. This will The function and methods will depend on the
depend on the devices that you use, but common methods include: devices used. Some devices may need a
● detecting the movement of another device, for example one physical connection (cable) between them;
device stops moving when another device lights up others may use sensors to detect each other;
● receiving and responding to a signal from another device, for while others may use wi-fi or Bluetooth to send
example a device flashes a light when another device tells it to. messages to each other. Set tasks appropriate
Show learners how to program the device to: for the devices that you are using.
● send a message or signal to another device
● receive a message of signal from another device
● use a sensor to record the action or signal from another
device.
For two devices to interact, learners will need to program both devices
individually.
58
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Put learners into pairs or groups and give them a problem that they
need to create a program to solve. Example problems for micro:bits
could be:
● Device 1 needs to send device 2 a maths question. Device 2
needs to calculate the answer and send it back. Device 1
needs to tell device 2 whether it is correct or not.
● Similar to the problem above, but device 2 outputs the
question, then the user has to input the answer which is sent
back to device 1.
● Device 1 sends signals to device 2 telling it how to move. For
example, the user could input the command to move forward
on device 1; device 1 sends a message to device 2, which then
moves forward.
● Two devices need to move around an area. When they sense
each other nearby, they turn towards each other and flash a
message.

Invite pairs or groups to demonstrate their solution and to describe:


● how the devices interact
● the method of interaction (cable, Bluetooth, wi-fi)
● the code that was used.

Hold a class discussion to review the learning from this activity. Ask
the following questions to support the discussion:
How did you test your program?
How did you connect your devices?
How did you make sure that the devices communicated? Did
they communicate by cable, wi-fi or Bluetooth?
How did they know what to do?
Did you encounter any problems or errors in the development?
What were they? How did you correct them?

59
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Resources:
● micro:bits
● example code, using Make Code
● problems for learners to solve.

60
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Unit 8.4 Modelling and databases

Outline of unit:
In this unit, learners will further develop their practical experience of spreadsheets and databases. They will use spreadsheets as a model to explore
‘what-if’ scenarios, by changing values and determining the effect of each change. They will link this to models and simulations, where they can explore
real-life simulations, including their purpose and function.

Learners will use database software to create a data capture form and format it appropriately. They will also analyse a pre-existing database to determine
its suitability. They will begin to learn about validation and will implement validation rules in a database.

Recommended prior knowledge:


Learners should already know:
● that there are a range of systems that can be used to model real-life systems, such as simulators
● how to evaluate the effectiveness of a data capture form
● how to design a spreadsheet that includes a combination of features, including cell referencing, arithmetic operators and functions (SUM,
AVERAGE)
● how to select data that is relevant for a particular purpose
● how to design and create a single table database, including data attributes and data types, for a given purpose
● that data is used to model scenarios within a range of industries, including health, manufacture and retail.

Language:
● database
● model
● simulator / simulation
● data capture form
● data validation
● what-if

61
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


8MD.01 Identify key Introduce this unit by asking:
features of models such as What is a simulator?
simulators, including their Elicit that it is a computer system that provides a realistic version of a
data requirements. system for a user. Then ask:
Can you give me some examples of simulators?
Elicit a range of examples, that include:
● flying an aeroplane
● driving a car
● models of environmental features, such as the flow of a river
or plant growth in different conditions
● models of natural disasters, such as what could happen if a
volcano erupts.
Either demonstrate a simulation or, where possible, give learners For example:
access to a simulation that they can explore for themselves. https://www.stopdisastersgame.org/stop_disasters/

Put learners into pairs and ask them to explore the simulator and The selection of simulations to demonstrate may
identify: be limited by access, but a visual simulation will be
● the features of the simulation, for example the options that more relevant and engaging for learners than a
are available numerical example, such as a financial forecasting
● the inputs that the user can make system.
● the content that is output.
Invite them to share their observations and support them to identify
any features that they might have missed.
Provide each pair with a scenario, such as a theme park that wants A theme park is a park that features various
to install a new ride. Explain that the theme park owners have attractions and rides for children, such as roller
gathered a lot of information about its customer base, its costs and coasters.
its income, and now want to maximise the profit that they receive
from the new ride. Learners may also like to play with the following
simulator during this activity:
Ask the pairs to create a list of data that they could include in a https://www.funderstanding.com/educators/coaster/
simulation that would help the theme park to model the outcomes for

62
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


a range of possible new rides. They should identify examples such In this simulator, the user needs to change the
as: various data so that they can guide the roller
● the cost of installing and maintaining each new ride coaster successfully around its course.
● the current number of visitors
● the ages of the visitors
● the number of additional visitors the new ride is likely to
attract, and their ages
● the entry fee charged for visitors of different ages
● the general running costs of the theme park based on visitor
numbers
● the possible additional amount of money visitors of different
ages spend at the park, for example on food and drink or on
items from the gift shop
● the capacity of other facilities in the park, including
o toilets and baby-changing facilities
o food and drink outlets
o other retail outlets
o the number of staff to run the park.

Ask the pairs to produce an infographic that identifies the data that
the owners of the theme park would need to consider when deciding
which new ride to install.

If there is enough time, invite learners to present their infographics to


the class. They can either do this as a whole-class activity or in
smaller groups, depending on the time that is available.

Resources:
● simulations for learners to investigate
● a scenario for a simulation, such as that for a new ride at a
theme park.

63
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


8MD.03 Know how to use Introduce this activity by asking:
spreadsheets that are What is a model in data analysis?
models of real-life systems, Elicit that a model is a computer application that replicates a real-life
using what-if analysis to environment, where data can be changed to see what happens.
compare alternative Explain that simple models can be built in spreadsheet software. Ask:
scenarios. What is a spreadsheet?
Learners should understand that a spreadsheet is a piece of software
that allows the user to enter and to present data and perform
calculations.

Hold a class discussion on the meaning of a ‘what-if’ question.


Support the discussion by asking:
What if it rains, or snows, tomorrow?
What if you were given extra allowance each week?
What if you were given the answers to the next test you were
going to take?
Explain how these questions can be used to consider what might
happen in the future, and how using multiple ‘what-if’ questions can
help us to make plans.
Put learners into pairs and give them a spreadsheet that already has This task aims to give learners an opportunity to try
the appropriate formulae entered, for example a spreadsheet that lots of different possibilities to see which is best.
calculates:
● how long it will take to save up for a new computer games An example spreadsheet for saving for a games
console console scenario could be:
● how many points a team will need to win a league.
Give the pairs a worksheet with a series of questions or ‘goals’, for
example:
If you need to save $300 and you get $20 a week,
how long will you need to save for?
What if this was increased to $30 a week?
What if the cost of the console was reduced to $220?

64
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


If you want to buy the console in 20 weeks, how The cells ‘Total’ and ‘Target’ contain a formulae.
much money will you need each week? These can be locked so that learners cannot
The pairs should change the values in the spreadsheet until they accidentally delete or change a formula. Learners
answer each question or ‘goal’, and then write the values. should only change the variables.

Once each pair has a complete set of answers, ask them to share
these as part of a class discussion. Model their answers on a
displayed version of the spreadsheet to demonstrate whether the
answers are correct. Correct any misunderstandings.
Demonstrate how to use an in-built spreadsheet function, such as In MS Excel, Goal Seek can be found on the Data
Goal Seek in MS Excel, to model what-if scenarios. Give the pairs a tab by clicking the ‘What-If Analysis’ function. You
different spreadsheet and a new set of questions to answer. Ask may need to experiment with this before the
them to use the Goal Seek function to find the solutions that will activity.
achieve the goals.

Support learners to make notes on this activity by asking:


What was the most interesting thing that you learned during
this activity?
How can we use a model to answer ‘what-if’ questions?
Answer: by changing values and looking at what else
changes
Why might we use a model for ‘what-if’ questions?
Answer: to see what will happen without actually having to
perform the action(s)
Can you suggest any other scenarios where it would be
helpful to use a data model?

Resources:
● example data model, presented as a spreadsheet

65
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


8MD.07 Identify the data Display a scenario, for example:
that are required for A teacher wants to collect data about the marks their
specific applications. learners have gained in recent tests.
Support learners to identify the different items of data that the
8MD.04 Evaluate the
teacher will need to gather for this scenario. Create a list of all the
suitability of data that have
valid suggestions, for example:
been collected for
● learners’ names
particular purposes.
● their class or teaching group
● the name of the test
● the mark achieved in the test
● the date of the test.

Discuss what is required for data to be suitable, for example:


● it should contain all the required data; for example, the
learners’ marks cannot be missing
● it does not contain any excess data; for example, the
learners’ choice of food for a class party is unnecessary
● the data collected is limited to what is acceptable; for
example, all the test marks need to be given as a numeric
value and not some as numbers and others as green, amber
or red.

Put learners into pairs and give them a set of data and a new
scenario for them to use that data with. For example:
Data is required to identify the supermarket products
that sold in the highest quantity during January. The
provided data includes the product name, the sale
price, the quantity sold and the three-month period,
such as ‘Jan-Mar’, in which each sale took place.
Ask the pairs to evaluate the suitability of the data by identifying the
positive items, but also any missing or incomplete items of data.

66
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Bring the class together and discuss the following questions:
What would you change about the data?
Why would you make this change?

Give learners a description of another scenario and ask them to


identify the data that will need to be stored for the required
application. This scenario could be:
● a system to analyse the profile of people who buy products
from a website, such as their age or their employment status
● a system to analyse how environmentally friendly learners
are, based on criteria that the learners have to identify
● a maths test system where students can create an account
and test their knowledge
● a system to store data about films, which enables users to
search for films that meet their chosen criteria.
Ask learners to return to their pairs, having each considered a
different scenario, and to discuss and evaluate the suitability of the
data identified for each of their scenarios. They should agree any
changes that are required.

To recap the learning from this activity, hold a class discussion to


consider the following questions:
Why is it important that collected data is suitable for its
purpose?
Answer: So that it is complete and contains everything that is
required. There is no excess data and the data is in an
appropriate format.
What can happen if the data is not complete?
Answer: It may not be able to be analysed fully and may not
therefore produce the required information.
What can happen if there is excess data?

67
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Answer: It can take longer to process and uses more storage
space. Excess data can also be a distractor.
What can happen if data is not appropriate?
Answer: The application may not function or may not give
accurate results.

Resources:
● prepared data set for learners to evaluate
● descriptions of other data scenarios.
8MD.02 Design appropriate Explore learners’ existing knowledge of data capture forms by In this activity, learners do not have to know the
forms, including data asking: names of the different validation rules, but they
validation, to collect data What are data capture forms? should be able to identify that:
for given purposes. Answer: paper-based or electronic documents that a user ● data must be entered (presence check)
completes with data ● value must be within a set range of values
8MD.05 Know how to add
Why do we need data capture forms? (range check)
validation rules to a
Answer: to collect data in a structured format ● data must have a set length (length check).
database structure.
What are the features of a well-designed data capture form?
Answers will include: suitable layout; clear instructions;
appropriate format (colour, font); restricting response types

Display the word ‘validation’ and ask learners what they think it
means. Learners may benefit from considering the word ‘valid’ first.
Extend this discussion by asking them to consider ‘data validation’.
Elicit that data validation is a method to check that data is
reasonable.

Support learners to understand the difference between ‘reasonable’


and ‘correct’ data. For example, when asking for a user’s date of
birth, the user could give the answer 01/01/1900; this would be
reasonable but incorrect.

68
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Hold a class discussion on why validation is needed in a data
collection form, and what could happen without it. Support the
discussion with examples, such as:
What is reasonable as a date of birth?
Elicit that without validation, words such as ‘house’ can be
entered.
What is reasonable for the number of items to purchase?
Elicit that a reasonable rule would be 1 or more, and then a
limit, such as 100, could be applied depending on the context.
Without this validation, it would be possible to enter a number
such as -100.)
Provide learners with a database that has a single table. Explain that Example data that could be stored:
the database needs to be completed with data that is collected from ● new students: name, date of birth, gender,
users. For example: year group
● new students in a school ● products for sale: product name, quantity in
● products for sale in a shop stock, price
● books in a library. ● books: title, author, number of chapters,
number of pages.
Put learners into pairs and ask them to identify any restrictions that
should be set on the data items, for example if text or numbers
should be entered, or if a number must be greater than 0.
The pairs should also investigate how to install these restrictions. In MS Access, they would add these restrictions in
Explain that they can use the ‘help’ function in the software and the table design option:
conduct web searches for descriptions of how to enter the restrictions ● ‘Not null’ in the validation box means that the
that they require. user must enter data
● they could add a range check such as >0 and
Display the database table and ask the pairs to: <10
● share their ideas for the validation that is required ● they could enter a length check in the length
● demonstrate how to add the validation rules to the fields. field that specifies the maximum number of
characters that the user can enter.

69
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


The pairs should then return to their own copy of the database and
add validation rules to the fields in their table. Learners should make
their own notes about the steps that they take during this activity.

Demonstrate how to create a form for the given database using a


form wizard and adding all fields to the form. Show learners how to
change the form to a design view and then format the form
appropriately. It may be helpful to use an online video or other tutorial
here.

Ask learners, in their pairs, to create a form for the database with the
validation rules installed. They should share their database with
another pair and evaluate each other’s forms by identifying the
features that they like and one area that could be improved. The
pairs should then implement any changes they feel are necessary
based on this feedback and what they have seen in the other pair’s
database and form.

Hold a class discussion to consider the learning from this activity.


Guide the discussion by asking:
What is validation?
Answer: Checking that data is reasonable.
Why is validation important?
Answer: To make sure inappropriate data is not entered.
When did you use validation, and why?
Answer: When data is being input or collected as part of a
survey where respondents are completing a form.
What challenges did you face when creating your form?
How did you overcome them?
What changes did you make following the feedback that you
received?

70
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Resources:
● prepared single table database
8MD.06 Evaluate the Introduce this activity by asking:
suitability of pre-existing What does it mean to ‘evaluate’ something?
databases for given Elicit that evaluation is an appraisal of something to determine how
purposes. effective it is for its purpose.

Ask:
How can you evaluate a database?
What elements would you look at when assessing its
suitability?
Support learners to focus on the following in their responses:
● comparing the data requirements with the data collected, for
example checking that all the required data has been
collected
● checking what validation rules have been put in place to limit
the data that is collected
● considering the structure and format of the form in terms of
how user-friendly it is for the person who is completing it and
its overall purpose
● deciding whether the queries return the required data.
Put learners into pairs and give them a ready-built database and a Use several databases for this task, so that pairs
description of its purpose. The database should include: can evaluate different databases. The system
● one table including validation rules should be designed with some areas for
● a form improvement, for example queries that do not have
● at least one query. appropriate criteria, fields without validation rules,
some required data that is not included.
An example of a description could be:
This is a database about superheroes and their
powers. It needs to identify the most appropriate

71
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


superhero for a given purpose, such as a
superhero who can fly.

Example fields and data types for this scenario could be:

Ask the pairs to evaluate the suitability of the database by identifying Some learners may benefit from a tick-list of points
the appropriate features and ways that it can be improved. They to check for in the database.
should present their findings by ‘walking through’ the database and
responding to questions and comments from the rest of the class. As
learners give their presentations, ask:
What were the positive features you identified in the
database, and why?
Which areas of the database did you look at, and why?
How did you decide on the improvements that were needed?
What were these improvements and why were they needed?

When all the presentations have been delivered, ask learners to


consider the following question:
Why is it important to evaluate a system?
Elicit the importance of identifying the positive features of the system,
and improvements that could be made to it.

72
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Resources:
● a range of prepared single-table databases that include a
form, validation rules and at least one query. The databases
should include good and bad features.

73
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Unit 8.5 Computer systems

Outline of unit:
In this unit, learners will further explore hardware and software. This will include understanding the purpose of operating systems and utility programs, as
well as primary memory.

Learners will also gain practical experience of converting binary numbers to denary, and denary to binary. They will also investigate the use of artificial
intelligence (AI) in robotics and in autonomous programming.

Recommended prior knowledge:


Learners should already know:
● the difference between system software and application software
● that computers represent data in binary (0, 1), and that a binary number can represent different data, such as numbers, characters, images, sound
● that a computer is made up of logic gates that are represented by Boolean logic and understand the role of logic gates in a circuit, including AND,
OR and NOT
● the role of primary and secondary storage within a computer
● that robots can work autonomously
● some applications of Artificial Intelligence (AI) and automation.

Language:
● operating system
● processor
● utility programs
● software
● ASCII
● decipher
● encode / encoded
● character set
● compression
● truth table

74
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

● RAM (random access memory) / ROM (read only memory)


● artificial intelligence (AI)
● machine learning
● augmented reality
● autonomous programming

75
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


8CS.01 Describe the purpose Display the logos of some well-known operating systems, for example Although you may not encourage learners to
of operation systems. Microsoft, Apple and Android. Ask learners if they can identify these use brand names in other contexts, they do
brands and support them to understand that these are all operating, or provide a useful starting point here, as learners
8CS.02 Describe the purpose
operation, systems, as well as being the brand logos of some are likely to be more familiar with specific
of utility programs.
well-known companies. Ask: brands than they are with the concept of an
What system runs on your devices? operating system.
Support learners to identify a device type that they use, for example a
smartphone or laptop and its operating system. If they have their
devices with them, ask learners to expand on their answer by
checking and identifying the exact model that their device uses, for
example Windows 10, iOS, Android 11.
Show learners an operating system (OS) and explain that, without it, An operating system is software that manages
they would have no interface, so they would be unable to a computer’s memory and processes, as well as
communicate with the computer within the device. Ask: all its software and hardware. It allows users to
What would happen if you could not communicate with the communicate with a computer without using a
computer inside your devices? programming language.
Allow learners to focus on specifics, such as they would not be able to
watch videos or request songs to listen to, then guide them to
conclude that a device is useless without its OS.

Explain how the OS manages all aspects of the hardware and


software for the user, so that they do not need to know what happens
inside the computer.
Put learners into groups and ask them to identify the different features Ensure that learners understand that video
that are common across operating systems that they are familiar with. editing and web browsing are not OS features.
For example:
● memory management
● security, including logins
● program execution in response to input commands
● error detection and handling
Ask the groups for their answers and create a list of OS features.

76
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Display the term ‘utility program’ and define this as the software that Some examples of the housekeeping tasks
comes with an OS and performs housekeeping tasks. Differentiate it carried out by utility programs include: disk
from application software, which allows the user to perform useful clean-up, compression, encryption, security
tasks. Utility programs (UP) maintain the computer system. software such as firewall and antivirus, backup.
Learners may need support to recall application
Give learners a list of actions that are performed by a computer, for programs during this activity.
example:
● allows the user to create a presentation The first example is an application program, the
● deletes unused files second example is a utility program, and the
● allows the user to log in. last example is performed by the operating
Ask learners to vote whether each one is an example of an application system.
program, a utility program, or is performed by the operating system.

Ask learners to create graphical representations of operating systems


and utility programs. They should include definitions, examples and
applications of each. They should also add notes that include their
responses to the following questions:
What is an operating system?
Answer: software that allows the user to interact with the
computer
What is the purpose of an operating system?
Answer: to allow the user to interact with the computer without
needing to understand how it does it
Give some examples of what an operating system can do.
Answer: output an interface; manage the hardware and
software
What is a utility program?
Answer: software that comes with the OS and performs
housekeeping tasks
What is the purpose of a utility program?

77
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Answer: to perform maintenance and housekeeping tasks
Give an example of what a utility program can do.
Answers could include: delete unused files, check for faults.

Resources:
● the logos of well known operating systems.
8CS.05 Know how to convert Ask learners to write all the different combinations of bits that can be The answers are:
binary to denary, and denary stored using: ● 2 bits: 00, 01, 10, 11
to binary. ● 2 bits ● 3 bits: 000, 001, 010, 011, 100, 101, 110,
● 3 bits. 111.
Write the correct answers on the board and keep increasing the
number of bits until learners can identify that there is a pattern, in that
the number of possibilities keeps doubling each time, because:
● 2 bits has 4 possibilities
● 3 bits has 8 possibilities
● 4 bits has 16 possibilities
● 5 bits has 32 possibilities.

Display a table for 4 binary digits, with the values in the header row,
for example:

Link the numbers in the header row to the doubling values that
learners have identified. Explain that binary numbers are written from
right to left.

Put 1s and 0s in the table, for example:

78
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Then ask learners to look at the numbers above the 1s, from right to
left, and to add them. Their answer should be:
1+2=3

Give learners a set of 4-bit binary numbers to convert to denary.


Re-display the table for 4 binary digits and this time give a denary Some learners find it easier to add the
number, for example ten. Ask: numbers, while others find it easier to subtract.
Which combination of the 4 digits total ten? To subtract, start with the largest number.
Elicit that the answer is 8 and 2. Put 1s in these boxes. Put 0s in the Subtract it from the number to be converted. If
other boxes. Show learners that 1010 is the binary number for ten: the answer is greater than or equal to 0, put a 1
in that column. If it is less than 0, put a 0. Move
to the next column to the right. If you wrote a 1,
use the answer to the last subtraction. If you
wrote a 0, use the same value as you used for
Give learners a set of denary numbers that can be represented in 4 the previous column. Repeat this process for all
bits in binary. Ask them to convert them to binary. the columns. For example, to convert 13 to
binary:
Repeat this activity, increasing the number of bits from 4 to 6, for 13 - 8 = 5 (5 ≥ 0, so put a 1 in the 8
example: space)
5 - 4 = 1 (put a 1 in the 4 space)
1 - 2 = -1 (put a 0 in the 2 space)
1 - 1 = 0 (put a 1 in the 1 space).

Give learners a set of binary numbers to convert to denary, and a set


of denary numbers to convert to binary.

Put learners into pairs and ask them to create a ‘how to’ guide for
converting binary to denary, and denary to binary. This can be done

79
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


using suitable software, for example text processing or presentation
software. Their guides should answer the following questions:
In the conversion table, are binary numbers written from left to
right or right to left?
In the conversion table, what pattern do the numbers in the
heading follow?
How do you convert a binary number to denary using the
conversion table?
Answer: add the numbers in the header row above the 1s
How do you convert a denary number to binary using the
conversion table?
Answer: identify the numbers that are added together to total
the denary number and write 1s under those numbers; write 0s
under all the other numbers

Resources:
● tables for 4-bit and 6-bit binary numbers.

8CS.03 Describe how ASCII Give learners a list of ASCII codes that correspond to letters, for Use the standard ASCII character set, but note
is used to represent example: that this covers some characters that learners
characters. may not understand, such as other keyboard
keys. Limit the table to the characters that they
recognise.

Give learners a message that has been encoded using this list. Write
the message as a sequence of two-digit ASCII codes, for example
67658483.
Ask learners to decipher this message. (67658483 is ‘CATS’.)

80
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Ask learners to write their own encoded message using ASCII, then
put learners into pairs and ask them to swap codes with their partner
and to decipher each other’s message.
Explain that a character set such as ASCII is a list of all the
characters, including letters, numbers and symbols, that a computer
can use. Explain that each character has a unique binary number. For
example, when the letter ‘k’ is typed, the computer will store the binary
code (01001011) for that letter rather than the letter itself.

Display a further copy of an ASCII character set that includes:


● upper-case letters
● lower-case letters
● common punctuation marks such as question mark (?) and
exclamation mark (!).
Support learners to identify that upper-case and lower-case letters
have different ASCII codes, and therefore binary codes.

Ask learners to use the ASCII character set to write another message,
this time using upper-case and lower-case letters and including some
punctuation. They should then pass this to another learner to decipher.

Ask:
What form of data does a computer store?
Elicit that computers store data in binary, or 1s and 0s.
Why do you think computers have specific ASCII numbers for
characters?
Elicit that this is so each character can have its own number. Then
ask:
How do you think the character number corresponds to binary?
Support learners to understand that the computer will convert each
ASCII number into binary.

81
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Ask learners to identify how many different characters could be


represented by:
● 4 bits (answer: 16) For 4 bits, learners should be able to write all
● 5 bits (answer: 32) sixteen binary codes, for example: 0000 0001
● 6 bits (answer: 64) 0010 0011 0100 0101 0110 0111 1000 1001
● 7 bits (answer: 128) 1010 1011 1100 1101 1110 1111.
● 8 bits (answer: 256)
Learners should understand that the more bits per character, the Learners may ask about characters for other
larger the number of characters the character set can represent. international languages. More bits are assigned
Explain that standard ASCII has 7 bits, but extended ASCII has 8 bits. to each character and that there are other
Ask learners to count how many different characters there are on a character sets that permit these, such as
keyboard and whether all these can be represented by 7 bits. The UNICODE.
answer they give will depend on the keyboard that they are using.

Support learners to make notes about their learning during this activity.
Help them structure their notes by asking:
What is ASCII?
Answer: A set of codes to represent characters in a computer
How is each character stored in the computer?
Answer: As a unique binary number
How many bits does standard ASCII have per character?
Answer: 7
How does the number of bits affect the number of characters?
Answer: More bits allows for more characters

Resources:
● an ASCII character set for lower case letters
● an ASCII character set for lower case and upper case letters
and common punctuation.

82
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


8CS.04 Describe the term Introduce this activity by asking: It may be useful to identify that emails are
‘compression’, including why Have you ever tried to send or upload a file and been told that stored on servers, and these servers have
it is required. it is too large? storage limits. That is why email accounts have
Have you ever tried to save a file and been told that there is a limit on the total size of messages stored.
not enough space?
Discuss the learners’ responses and support them to recall that some It is important to differentiate between the
files are larger in file size than others, and that there is limited storage physical dimensions of a file, for example an
on devices. image, and the actual file size. Size on its own
is ambiguous and can mean width and height,
Display the word ‘compression’ and ask if anyone can explain what it or it can be related to the number of bits taken
means. Elicit or explain that compression relates to the act of reducing to store the file.
something into a smaller space and therefore pressing it closer
together. Explain that, in computing, ‘compression’ is a method of
reducing the file size of a file. Explain that it is usually done for two
reasons:
1. so that the tile takes up less storage space on a computer
2. so that it can be transferred in less time over transmission
media.

Put learners into small groups and ask them to generate a list of ten
examples when compression might be useful. Ask each group for an
answer. When giving their answer, the groups should identify which of
the above two reasons for compression is most applicable. Generate a
list of all the reasons for compression that are shared by the class.
Examples might include:
● sending homework files to the teacher
● uploading images to social media
● freeing up cloud storage space
● storing media such as songs and videos.
Show learners a high-resolution photograph, then demonstrate storing You could use graphics software for this activity.
it in different formats, ranging from 24-bit colour down to 4-bit colour Another example that can be used instead of
and then monochrome. Support them to identify the differences
83
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


between the images. They should be able to identify that the quality an image would be a sound file where the
and detail are significantly different between different versions. resolution or sampling rate is changed.

Each time the image is saved, demonstrate the difference in the file
size that results from changing the number of colours in the image.
Support learners to understand that there is a balance between quality
and file size.
Show learners an example of compression, for example a 16-bit Examples are not required at this stage, but it
image made of pixels of colour. When the file is saved, instead of can help learners to visualise what is meant by
storing the colour of each pixel in the image in turn, the computer can compression.
store the colour with the number of times that it occurs in a sequence.
In the example:

instead of storing ‘Black Black Black Black Black Black’, the computer This is called ‘run-length encoding’.
can store ‘Black 6’. Learners should understand that this is a simple
version of compression and that it takes less space to store than when
each item of the same data is stored repeatedly. Elicit that this
example would continue with ‘Red 5’ and then ‘Yellow 5’.

Ask learners to create a mind map to explain compression. They


should write the word ‘compression’ in the centre and include answers
to the following questions:
What is compression?
Answer: Reducing the file size of a file.

84
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


What are the two reasons why compression may be needed?
Answer: to take up less storage space; to increase the speed
of transferring a file
Learners should also include a range of file types that are compressed
and the reasons that they are compressed.
8CS.06 Complete truth tables Begin this activity by checking learners’ prior knowledge of logic gates, If learners have not yet investigated the
for AND, OR and NOT gates. for example by asking: Boolean expressions AND, OR and NOT with
What are logic gates? conditional statements in Unit 8.3, start with the
Answer: the building blocks of digital circuits that have one or ‘stand up’ exercises in this activity so that
two inputs that can be turned on or off learners can gain an understanding of the role
What are the 3 different logic gates? of each gate. If applicable, support them to
Answer: AND, OR, NOT recall their learning in Unit 8.3 in the activity
linked to 8CT.06 and 8P.06.
Introduce each logic gate in turn and relate their use to expressions in
programming. Give learners some sentences that make use of the At this stage, only two inputs are required for
logic expressions to support them to understand logic gates in a AND and OR gates (although they can have
familiar context, for example: more than two inputs). The NOT gate only has
Stand up if you like pop music AND playing cricket. one input.
Stand up if you like pop music OR playing cricket.
Stand up if you do NOT like computer games.
Use these sentences with 1 for ‘true’ and 0 for ‘false’. Review each
statement in turn and identify the output, for example:
● Stand up if you like pop music and playing cricket.
You like pop music – True (1). You like playing cricket – True
(1). Do you stand up?
Answer: yes
You like pop music – True (1). You do not like playing cricket –
False (0). Do you stand up?
Answer: no
You do not like pop music – False (0). You like playing cricket –
True (1). Do you stand up?
85
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Answer: no
You do not like pop music – False (0). You do not like playing
cricket – False (0). Do you stand up?
Answer: no

Put learners into pairs and support them as they complete a truth table
for each of the gates, identifying the 1s as ‘true’ and the 0s as ‘false’.
Learners may find it easier to use the words ‘true’ and ‘false’ rather
than 1s and 0s at this stage. The answers will be:

AND gate:

OR gate:

NOT gate:

86
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Give learners a set of truth tables, some that are correct and some
that are incorrect. Ask learners, working in their pairs, to identify which
are correct, and to change any that are incorrect. They should only
change the ‘Output’ column.
Recap the learning by giving learners a fast-paced quiz. Explain that
you are going to ask the questions quickly so that learners can
experience thinking like a computer. The questions could include:
What is the output of 1 AND 1? Answer: 1
What is the output of 0 AND 0? Answer: 0
What is the output of NOT 1? Answer: 0
What is the output of 1 OR 0? Answer: 1
What is the output of 1 OR 1? Answer: 1

Resources:
● correct and incorrect truth tables.
8CS.07 Understand the roles Ask learners to recall what is meant by ‘memory’ and ‘secondary
of primary memory, RAM and storage’ and the role of a processor:
ROM. What does a processor do in a computer?
Answer: it takes instructions and executes them
What is memory in a computer?
Answer: hardware where data is stored temporarily or
permanently
What is the purpose of secondary memory?

87
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Answer: to store data in the long term and to create additional
storage capacity
Where do you store data when you save it on a computer?
Answer: hard drive, solid state drive, memory stick
What other types of memory have you heard of?
Explain the difference between primary memory and secondary While it is true that ROM can be changed in
memory, for example: some modern devices, learners do not need to
● primary memory is directly accessed by the processor; it can be aware of this at this stage.
be RAM or ROM
● secondary memory is not directly accessed by the processor.
Define RAM and ROM for learners. For example:
● ROM is Read Only Memory. It stores data permanently and
cannot be changed. The ROM stores the start-up instructions
for the computer. In some computers it stores the programs
that they run, for example in a fridge, where the programs
never need to be changed or updated. The ROM might also
store parts of the operating system that load when the
computer starts.
● RAM is Random Access Memory. It stores data temporarily.
When power is lost, all the data in RAM is deleted. The RAM
stores the programs that are currently running and the data
that they are using.
Put learners into pairs and give them an example of a device that they Possible answers:
are familiar with or have used, such as a washing machine, computer ● washing machine – ROM stores the
games console, or mobile phone. Ask the pairs to identify: start-up instructions, programs for running
● the purpose of ROM in the system the different options; RAM stores the
● examples of the type of data stored in the ROM current time, the selected program, the
● the purpose of RAM in the system current progress in the program
● examples of the type of data stored in the RAM. ● games console – ROM stores the start-up
instructions, might store part of the
operating system; RAM stores the data

88
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Learners should use presentation software to create an audio visual input by the user (e.g. button presses), the
record of their learning from this activity. Their presentation should current game process, the data being
include definitions of RAM and ROM, with examples, and should displayed
address the following questions: ● mobile phone – ROM stores the start-up
What is the purpose of ROM in a computer system? instructions, might store part of the
Answer: Data that does not change e.g. start-up instructions operating system and other software;
What is the purpose of RAM in a computer system? RAM stores the data input by the user, the
Answer: Currently running programs and data software currently open.
What will ROM typically store?
Answer: Start up instructions, part of the operating system,
some programs if a system that has limited function.
8CS.08 Describe the term Display the following question: Learners might find it challenging to identify
‘machine learning’. How do you learn? how they have learned in the past but
Ask learners to discuss their responses in groups, then hold a responses might include:
whole-class discussion to collect: ● doing things multiple times, such as
● what we mean by ‘learning’ through repeated practice
● examples of things that learners have learned ● remembering a series of steps about how
● how they learned them. to do something
Now display the following question: ● being shown how to do something,
How does a machine learn? possibly more than once.
Ask learners to discuss this question in the same groups, then hold a
whole-class discussion to gather their ideas and create a list of
possibilities. Learners are not expected to think of definitive answers
here, but are likely generate a broad set of ideas. Their answers might
include:
● storing a series of steps to follow
● changing its own programming or instructions based on its
experiences.
Put learners into pairs and give them an example of an area where a Possible answers:
machine may need to ‘learn’. Examples can include: ● recognising types of food – it needs to
identify a range of images, so it could be

89
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


● recognising different types of food from images, for example in shown an image of a food item and told
a computerised waiter which food item it shows, then it could
● predictive text compare other images with this image
● natural language processing ● predictive text – it needs to identify the
● computer game AI. most likely word to come next, or be able
Ask the pairs to discuss why the computer needs to learn, and to to complete a word once a few letters
consider ways that it can do this, referring to the class list of ways a have been typed, so it could record how
machine can learn during their discussion. Invite pairs to present their many times words follow other words and
ideas to the class. calculate a percentage change
● natural language processing – it needs to
Support learners to recall their learning from this activity, by asking: understand commands that can be said in
What is machine learning? any number of ways, so it could store
Answer: when a program is able to automatically adapt its different ways in which commands are
own processes or data given and compare statements with these
Why might a machine need to learn? ● computer game AI – it needs to make
Answer: to improve its own performance; to respond to better moves in order to win, so it could
changes in data store its opponent’s moves and its own
moves, and record whether they are
Give an example of machine learning.
successful.
Answer: Recognising images or voices, or playing a game
8CS.10 Describe how Introduce this activity by showing two short videos of two different
autonomous programming robots, one of which is humanoid and the other, such as an arm, that
and AI is used in robotics. has been designed to perform a specific function in manufacturing.
Ask:
Which of these is a robot?
Answer: They both are
What is a robot?
Answer: a machine that moves to mimic human actions
Can you think of some examples where robots are used?
Examples might include the use in industry to build items.
What is artificial intelligence?

90
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Answer: a computer program that makes decisions to
determine its actions to simulate human behaviour

Display the term ‘autonomous programming’. Explain that this is where


a device takes data from its environment using sensors instead of
human interaction, and makes decisions to solve a problem and
produce an output. Autonomous programming allows devices to
function independently. An example would be a self-driving car that
senses an obstacle ahead and has to decide whether to turn or to
stop.
Put learners into pairs and give them one of the following: Choose scenarios that they are accessible and
● a description of a business or industry that uses robots familiar to learners. Videos and other resources
● a website that describes the use of robots where learners can actually see the robots in
● a video showing robots in: action are helpful. If possible, visit an industry
o manufacturing, such as vehicles or organisation where robotics and autonomous
o food processing, such as making bread programming are used.
o space exploration, such as remote explorers.
Ask the groups to identify:
● the purpose of the robots
● how they use autonomous programming
● how they use artificial intelligence.
Ask each pair to present their scenario and their answers. Discuss the
findings and ask other learners to add their own ideas each time.

Give learners a set of scenarios, from those previously listed and


others that are relevant to learners and their experiences.
Also give learners a table to complete individually, for example: The first row in this table has been completed
as an example.

91
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes

Ask learners to complete their own copy of the table. Then learners
should join in pairs to compare their answers and add any further
details. Put pairs of learners together and ask them to again swap,
compare and add to their answers. Gather their final ideas and create
a class document that captures all the valid ideas.

Support learners to make their own notes on autonomous


programming. Their notes could be informed by the following
questions:
What is autonomous programming?
Answer: A robot or device that performs its actions without
human interaction.
Describe an example of where autonomous programming is
used.
Answer: For example, in manufacturing.
Describe how is AI used in your chosen scenario?
Answer: For example, to identify where to move to and to
identify faults.

92
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


Resources:
● descriptions of, or videos showing, robots performing their
function
● table template and scenarios for learners identify the use of
robots, AI and autonomous programming.
8CS.09 Identify the use of Introduce this activity by asking:
augmented reality in familiar Have you ever used a computer where an image was overlaid
contexts, including education on the real world, for example in a computer game?
and entertainment. Some learners may have used apps on their mobile phones or tablets
that make use of augmented reality, such as a game or nature app
where characters or animals appear onscreen with the natural
background behind.

Display the term ‘augmented reality’ and define it as the view a user
has when a computer-generated image is displayed on a view of the
user’s real world.

Show learners an example of augmented reality, such as in a


computer game or an educational resource. Where possible allow
learners to use the app on a mobile device with a camera.

Put learners into small groups and give them a different context from
either education or entertainment. Examples from entertainment could
be from a range of areas, such as games, films, advertising or
communications.
Ask the groups to find at least two different examples of systems that Possible answers:
use augmented reality in their given area and to include a description ● education – to show 3D models of objects
of its functions and purpose. Collate the groups’ ideas and hold a that learners are learning about; to give
discussion on how augmented reality can be used and why it can be learners experiences of places they
used. Link the discussion to learners’ own experiences where cannot visit in person (such as exploring

93
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Learning objectives Suggested teaching activities and resources Additional notes


possible, and ask them to consider whether they think augmented the moon); to view things life-size (such
reality would be useful in this context. as dinosaurs)
● entertainment – to view computer game
Support learners to add to their notes about autonomous programming characters in the real world and interact
by adding notes on augmented reality. Guide their note-making by with them; to play games where players
asking: need to find objects in the real world;
What is augmented reality? ● marketing, to persuade someone to buy
Answer: A computer generated image superimposed on the something such as a new item of furniture
real world by showing them what it would look like in
Give an example of an augmented reality system. their home.
Answer: An application that allows you to view an object from
all angles
How could augmented reality be used in education?
Answer: To view objects from different perspectives or objects
that couldn’t be ordinarily viewed within the local environment.
How could augmented reality be used in entertainment?
Answer: To add reality to computer games or to combine
fantasy and reality in films and advertising.

Resources:
● an augmented reality enabled device/platform.

94
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Unit 8.6 End of stage projects

Outline of unit:
This final unit provides you with three projects to offer your learners. These are:
● Project 1: Virtual-world simulator
● Project 2: Representing data
● Project 3: Iterative quiz design

The projects have been designed to consolidate and build on learning that has already been covered in the previous units. The project descriptions give
you guidance about:
● what you should expect learners to do independently, as individuals or within pairs or groups
● how you can support learners during each project
● what outcomes are expected to support you in your teacher assessments.

The total number of hours for all the projects may be greater than the hours you have available and it is unlikely that you will have time to complete them
all. You can select the ones that are most relevant for your learners and that you can fit into the teaching time you have remaining for Stage 8. You can
also edit and change the projects, including giving learners more time or less time for each project.

You can also use the projects as templates for developing your own projects which consolidate learners’ skills and build on other aspects of the curriculum.

Although the projects have been provided in this final unit, you can use them wherever you feel it is appropriate to do so throughout the year.

95
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Project 1 title Virtual-world simulator

Learning objectives Project overview Resources required


MD.01 Identify key features of In this project, learners will work in groups to design a simulation that Materials for learners to research historical
models such as simulators, allows users to make a virtual visit to a specific site of historic interest, sites to base their simulation on.
including their data and to explore and interact with this site.
requirements.
MD.07 Identify the data that are Learners should consider the inputs and outputs of the system, the
required for specific data requirements (that will be entered, stored and analysed), as well
applications.
as how the user will interact with the system.
CS.09 Identify the use of
augmented reality in familiar They will focus on the design stage to consider:
contexts, including education ● the data requirements
and entertainment.
● the potential for using augmented reality
CT.08 Know how to decompose ● decomposing their plan into sub-problems so that each group
problems into their member, or pair of group members, can make a specific
sub-problems.
contribution.

Learners should present their plan as a portfolio that includes written


descriptions, annotated illustrations and screenshots, and flowcharts.
The focus of the output should be on quality rather than quantity;
therefore learners should focus on one specific attraction if they are
considering a larger historical site.

Project details Teacher guidance


Explain that a computer system needs to be designed so that it will simulate a site of historic interest Learners will need access to resources where
using augmented reality. they can research different sites. It may be
useful to limit the options and give the groups a
Learners should work in larger groups, of four to six, and select a site that is either local to them or is selection of places to choose from to avoid
of mutual interest. The chosen site could reflect their studies in another subject.

96
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

The simulation should allow users to select where to visit, and then to explore and interact with the them spending a long time deciding which site
environment. It should also include some data, and other facts that explain the historic significance of to use.
the site.

The groups need to develop a proposal for the system that identifies the key features of the simulation,
including:
● the different ways the user can interact with the system, including some that involve movement
around the site and others that involve numeric data; for example, a simulator that helps the
user to decide the best time to make a physical visit.
● the inputs that the user can make
● the decisions that the system can make based on the user input; for example, the simulator
may suggest a particular part of the site based on a preference or age that is input by the user
● the outputs from the system
● the data that will be gathered, stored and analysed in the system.

The proposal will also need to include some designs for one site that can be visited, for example an
outline of the objects that will be displayed, where the user can move, what they can interact with.

Finally, the proposal should include a description of how the simulation can be used in specific areas,
such as how it can be used in education or in entertainment.

Expected output
A curated portfolio of documents that explains the system and allows the reader to select and focus on each aspect of the design in the order that they
choose.

The proposal should include a clear description of the inputs, outputs, data requirements, the use of augmented reality and the decisions that the system
will make based on the inputs from the user. It will also include a description of how the simulation can be used in different situations; this could be
presented as an advertisement.

97
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Project 2 title Representing data

Learning objectives Project overview Resources required


CS.03 Describe how ASCII is In this project, learners will work in groups to provide an interactive Software that allows the creation of interaction
used to represent characters. learning guide for the conversion between binary and denary, and the documents and animations.
CS.05 Know how to convert use of ASCII.
binary to denary, and denary
to binary.

Project details Teacher guidance


Explain that the school needs an animation or other presentation to tell next year’s Stage 8 learners: Any appropriate software could be used. If
● how to convert denary to binary learners do not have access to software that
● how to convert binary to denary allows animations, they could video themselves
● how ASCII is used to represent characters. explaining the concepts, or write a program that
Learners can create this using animation software or by using animations in other software such as allows the user to select what to view/read.
presentation software.

The document must be interactive so that the user can select the order in which they complete tasks. It
must also include questions and activities where the user can test their understanding at the end of
each section.

The presentation can also include video sections, where learners:


● welcome the user and briefly describe their highlights from Stage 8 Computing
● introduce and reflect on each section
● thank the user and wish them well with their Computing studies.

As part of their planning, learners will need to describe the structure of their presentation, including the
decisions that the software will make based on the inputs from the user. This plan can be presented as
a diagram.

Expected output
98
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

A diagram that describes the structure of the animation or presentation.


An interactive artefact that includes instructions on converting between binary and denary, and the use of ASCII.

This project could also be linked to Project 3: Iterative quiz design, where the groups could add a ten-question quiz that tests users on everything they
know about binary and denary conversions and ASCII.

99
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Project 3 title Iterative quiz design

Learning objectives Project overview Resources required


CT.08 Know how to decompose In this project, learners will work in groups to design and develop an Text-based programming software.
problems into their interactive quiz on a topic of their choice. They will need to
sub-problems. decompose the problem and present their solutions clearly as a series Materials for learners to research the
P.04 Know how to develop of algorithms. They will use an iterative process to develop the information they need to develop their quiz
text-based programs with program and then test that it is working correctly. questions.
conditional (selection)
statements.
P.05 Know how to develop
text-based programs using
data types, including Integer,
Real, String and Boolean.
P.06 Know how to develop
text-based programs which
use rules involving AND, OR
and NOT.
P.07 Use an iterative process to
develop programs.
P.08 Know how to develop and
apply test plans.
P.09 Explain the need for using a
range of test data.
P.10 Know how to test
algorithms using suitable
data.

100
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Project details Teacher guidance


Explain that the school needs a quiz to test Stage 8 learners’ knowledge of a specific topic. Example Limit the choice of topics, for example to school
topics could include: subjects, to avoid lengthy discussions about
● mental arithmetic topics to use.
● capital cities
● the structure and hardware of personal, local and wider area networks, including the internet
● significant computer scientists from history
● the history of the school, the local area or another region that is of interest to the group.

The quiz must contain at least ten questions, including at least one multiple-choice question where
users have to select from given options and at least one question where users have to enter their
answer.
The user should get 1 point for each correct answer. Their total is calculated and, depending on the Care will be needed to make sure that the
result, a different message should be output; for example, ‘Well done! You got all the questions correct’ output messages are appropriate.
and ‘Nearly there! Only one wrong’. Before the user begins the quiz, it should welcome them and ask
them to enter their name. At the end of the quiz, the user’s name and score should be displayed as
part of a ‘high score’ table.
Before learners start work, they need to decompose the problem into smaller component parts. They Learners can show the decomposition as a
need to create an algorithm to describe the solution for each sub-problem. The group then need to diagram or as a list of the component parts.
work together to code their solution. If different group members work on different
sub-problems, learners who create the
Learners should design a test table to identify how the quiz will be tested with a range of data. They algorithm for the solution could then work on a
need to then use the test table to test the quiz and to document the results. different problem when coding. They can
collaborate when they discuss the algorithms
and support each other. This approach would
also give learners opportunities to evaluate the
algorithms and identify and fix bugs.

101
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Expected output
Decomposition of the problem.
An algorithm for each sub-problem.
A quiz with at least ten questions.
A completed test plan.

102
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Sample lesson 1

CLASS:
DATE:
Learning objectives 8CT.06 Understand and use rules using AND, OR and NOT to create logic
within algorithms.
8P.06 Know how to develop text-based programs which use rules involving
AND, OR and NOT.

Lesson focus / Learners will know how to develop programs using AND, OR and NOT in Python.
success criteria
Prior knowledge / Know how to develop text-based programs with conditional statements.
previous learning

Plan
Lesson Planned activities Notes
Introduction Display a statement that uses AND, OR in an instruction, for Adapt the statement to suit
example: your class to make sure
IF you like playing computer games AND you have that some learners do
no siblings each action.
Sit on the floor
ELSE
Stand up
ENDIF

Learners need to follow the instruction and do the action


that applies to them.

Repeat this at least twice more with different statements,


including at least one OR statement.

Ask selected learners to suggest an AND and an OR


statement of their own. Ask another learner to suggest a
correction if a learner demonstrates misunderstanding.
Main activities Give each learner either a blue or orange coloured card and Adapt the statements to
display a list of statements that use AND, OR and NOT suit your class to make
conditions. For example: sure that some learners
● If you are holding a blue card hair AND your height perform the action and
is more than 1.5 metres, stand up. others do not.
● If you are NOT holding an orange card, sit on the
floor.
● If you are holding a blue card OR you are holding an
orange card, clap your hands.
● If you are holding an orange card OR your height is
more than 1 metre, jump.

103
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Support a discussion about the difference between AND Emphasise that AND
and OR. Link this to the use of AND and OR in logic gates. means both sides of the
Support the discussion by asking questions, such as: expression must be true,
What does the word AND mean? and OR means one or
What do you do if one side of an AND expression is both sides can be true.
true and the other is false? You may need to recap the
Extend the discussion to include NOT. structure of conditional
(selection) statements
Model the format of using AND, OR and NOT in IF prior to introducing AND,
statements in Python. Include several examples of each, OR.
asking learners what the potential outcomes would be.
Ask learners to work in pairs to write programs to solve Adapt the problems to suit
problems. The programs should use AND and OR. These the pairs. Some pairs may
should be gradually increasing in difficulty and be extended find it beneficial to practise
to include NOT. The pairs need to test their programs single-criterion selection
before swapping them with another pair for further testing statements first, and then
and for feedback. move onto AND, OR.
Other pairs may be able to
consider more than two
criteria.
End/Close/ Ask pairs to evaluate their programs by identifying:
Reflection/ ● which programs met the given criteria
Summary ● how they approached the problem(s)
● the errors that they overcame
● the errors which require further support and practise.

Reflection
Use the space below to reflect on your lesson. Answer the most relevant questions for your lesson.
Were the learning objectives and lesson focus realistic? What did the learners learn today?
What was the learning atmosphere like?
What changes did I make from my plan and why?
If I taught this lesson again, what would I change?
What two things went really well (consider both teaching and learning)?
What two things would have improved the lesson (consider both teaching and learning)?
What have I learned from this lesson about the class or individuals that will inform my next lesson?
Next steps
What will I teach next, based on learners’ understanding of this lesson?

104
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Sample lesson 2

CLASS:
DATE:
Learning objectives 8CS.05 Know how to convert binary to denary, and denary to binary.

Lesson focus / Learners will know:


success criteria ● how denary numbers are represented in binary
● how to convert a binary number to denary.
Prior knowledge / Know that computers represent data in binary (0, 1).
previous learning Understand that a binary number can represent different data, such as numbers,
characters, images, sound.

Plan
Lesson Planned activities Notes
Introduction Write the combinations of 2-digit binary numbers on a
board, namely 00 01 10 11.

Ask learners to work individually to write all the different


combinations of bits that can be stored using 3 bits. Start
them off with 000. Learners should work quickly when doing
this. Repeat this with the 4-bit combinations.

Discuss learners’ responses and ask them to count their


total number of combinations for 3 bits and for 4 bits. Write
the different totals of combinations on the board. Support
learners to identify the pattern:
1 bit = 2 combinations
2 bits = 4 combinations
3 bits = 8 combinations
4 bits = 16 combinations
They should notice that the values double each time.
Main activities Use the doubling values to draw a table for the binary
values, for example:

Model how adding 1s and 0s determines which numbers to


add together. For example, 1, 0, 0, 1 = 9, as there is one ‘8’
that is added to one ‘1’.

Ask learners to work in pairs to write the numbers 0 to 15 in


order, using 4-digit binary numbers.

Ask the pairs to compare their answers with another pair


and determine any differences.
105
Cambridge Lower Secondary Computing (0860) Stage 8 Scheme of Work

Starting with 4 digits and working up to 6 digits, give


learners a set of binary numbers and ask them to work out
what they are in denary. Ask learners for the answers to
each, and to model how they produced their answer.
End/Close/ Ask learners what the smallest number is that can be
Reflection/ represented in 4 bits (0) and the largest (15).
Summary
Ask learners to work in pairs to explain to each other how to
convert a binary number to denary.

Explain that, in the next lesson, learners will consider how


to convert denary numbers to binary.

Reflection
Use the space below to reflect on your lesson. Answer the most relevant questions for your lesson.
Were the learning objectives and lesson focus realistic? What did the learners learn today?
What was the learning atmosphere like?
What changes did I make from my plan and why?
If I taught this lesson again, what would I change?
What two things went really well (consider both teaching and learning)?
What two things would have improved the lesson (consider both teaching and learning)?
What have I learned from this lesson about the class or individuals that will inform my next lesson?
Next steps
What will I teach next, based on learners’ understanding of this lesson?

106
Cambridge Assessment International Education
The Triangle Building, Shaftesbury Road, Cambridge, CB2 8EA, United Kingdom
t: +44 1223 553554 f: +44 1223 553558
e: info@cambridgeinternational.org www.cambridgeinternational.org

© UCLES September 2021

You might also like