Computer Science Workbook 2020
Computer Science Workbook 2020
Hand Book
Assessment overview
Students must take all three components to be awarded the OCR A Level in
Computer Science.
Content overview
Page 1 of 20
It covers:
It covers:
Page 2 of 20
Personal Learning Check List
AS A
Code Specification point description Complete
Level Level
The differences between, and uses of,
SLR2 1.1.2a 1.1.2a
CISC and RISC processors
SLR2 1.1.2b 1.1.2c Multicore and parallel systems
How different input output and storage
SLR3 1.1.3a 1.1.3a devices can be applied as a solution of
different problems
The uses of magnetic, flash and optical
SLR3 1.1.3b 1.1.3b
storage devices
SLR3 1.1.3c 1.1.3c RAM and ROM
SLR3 1.1.3d 1.1.3d Virtual storage
The need for, function and purposes of
SLR4 1.2.1a 1.2.1a
operating systems
Memory management (paging,
SLR4 1.2.1b 1.2.1b
segmentation and virtual memory)
Interrupts, the role of interrupts and
SLR4 1.2.1c 1.2.1c Interrupt Service Routines (ISR), role
within the fetch decode execute cycle
Scheduling: round robin, first come first
served, multi-level feedback queues,
SLR4 1.2.1d 1.2.1d
shortest job first and shortest remaining
time
Distributed, embedded, multi-tasking,
SLR4 1.2.1e 1.2.1e multi-user and real time operating
systems
SLR4 1.2.1f 1.2.1f BIOS
SLR4 1.2.1g 1.2.1g Device drivers
Virtual machines, any instance where
software is used to take on the function
SLR4 1.2.1h 1.2.1h of a machine including executing
intermediate code or running an
operating system within another
The nature of applications, justifying
SLR5 1.2.2a 1.2.2a suitable applications for a specific
purpose
SLR5 1.2.2b 1.2.2b Utilities
SLR5 1.2.2c 1.2.2c Open source vs Closed source
Translators: interpreters, compilers and
SLR5 1.2.2d 1.2.2d
assemblers
Page 3 of 20
Procedural programming language
techniques: program flow, variables
and constants, procedures and
SLR8 1.2.3a 1.2.3a
functions, arithmetic, Boolean and
assignment operators, string handling,
file handling
Assembly language (including following
SLR8 1.2.3b 1.2.3b and writing programs with Little Man
Computer)
Relational database, flat file, primary
key, foreign key, secondary key, entity
SLR10 1.3.1a 1.3.2a
relationship modelling, normalisation
and indexing
Methods of capturing, selecting,
SLR10 1.3.1b 1.3.2b
managing and exchanging data
Characteristics of networks and the
SLR11 1.3.2a 1.3.3a
importance of protocols and standards
Internet structure: -The TCP/IP Stack -
SLR11 1.3.2b 1.3.3b DNS -Protocol layering -LANs and WANs
-Packet and circuit switching
SLR11 1.3.2c 1.3.3e Client-server and Peer to Peer
SLR12 1.3.3a 1.3.4a HTML, CSS and JavaScript
SLR12 1.3.3b 1.3.1a Lossy vs lossless compression
Primitive data types, integer,
SLR13 1.4.1a 1.4.1a real/floating point, character, string and
Boolean
SLR13 1.4.1b 1.4.1b Represent positive integers in binary
Use of sign and magnitude and two's
SLR13 1.4.1c 1.4.1c complement to represent negative
numbers in binary
Addition and subtraction of binary
SLR13 1.4.1d 1.4.1d
integers
Represent positive integers in
SLR13 1.4.1e 1.4.1e
hexadecimal
Convert positive integers between
SLR13 1.4.1f 1.4.1f
binary hexadecimal and denary
Positive and negative real numbers
SLR13 1.4.1g using normalised floating point
representation
How character sets (ASCII and
SLR13 1.4.1h 1.4.1j
UNICODE) are used to represent text
Arrays (of up to 3 dimensions), records,
SLR14 1.4.2a 1.4.2a
lists, tuples
Page 4 of 20
SLR14 1.4.2b The properties of stacks and queues
SLR15 1.4.3a 1.4.3a Define problems using Boolean logic
Manipulate Boolean expressions,
SLR15 1.4.3b 1.4.3b including the use of Karnaugh maps to
simplify Boolean expressions
Using logic gate diagrams and truth
SLR15 1.4.3c 1.4.3d
tables
SLR16 1.5.1a 1.5.1a The Data Protection Act 1998
SLR16 1.5.1b 1.5.1b The Computer Misuse Act 1990
The Copyright Design and Patents Act
SLR16 1.5.1c 1.5.1c
1988
The Regulation of Investigatory Powers
SLR16 1.5.1d 1.5.1d
Act 2000
SLR18 2.1.1a 2.1.1a The nature of abstraction
SLR18 2.1.1b 2.1.1b The need for abstraction
The differences between an abstraction
SLR18 2.1.1c 2.1.1c
and reality
Devise an abstract model for a variety
SLR18 2.1.1d 2.1.1d
of situations
Identify the inputs and outputs for a
SLR19 2.1.2a 2.1.2a
given situation
Determine the preconditions for
SLR19 2.1.2b 2.1.2b
devising a solution to a problem
The need for reusable program
SLR19 2.1.2c 2.1.2d
components
SLR20 2.1.3a 2.1.3a Identify the components of a problem
Identify the components of a solution to
SLR20 2.1.3b 2.1.3b
a problem
Determine the order of the steps
SLR20 2.1.3c 2.1.3c
needed to solve a problem
Identify sub-procedures necessary to
SLR20 2.1.3d 2.1.3d
solve a problem
Identify the points in a solution where a
SLR21 2.1.4a 2.1.4a
decision has to be taken
Determine the logical conditions that
SLR21 2.1.4b 2.1.4b
affect the outcome of a decision
Determine how decisions affect flow
SLR21 2.1.4c 2.1.4c
through a program
Page 5 of 20
Lesson Expectations
All students to be issued with exercise books to take notes; different exercise books
for each teacher. Exercise books must be used in line with school policy. This includes
titles and long dates each lesson. Titles should include referential links to spec points.
E.g. 1.1.1a-1.1.1d. Students should be encouraged to highlight keywords where
appropriate. Students should print off work that is done on the computer and stick in.
Resources needed:
Students should purchase the following text book:
Homework
Students to be set meaningful homework that consolidates learning from each
lesson. Remember one hour of homework for each hour of lesson time. This can take
the form of:
Definitions from the terminology document for content covered. Definitions should
be written into the back of the exercise book like a glossary.
Coding
Where programming exercises have been done, they need to be printed in colour
and stuck in. If comments are missing, students need to hand annotate the different
programming techniques used. Programming activities should be linked to unit 2 SLR
activities.
Page 6 of 20
Extend your learning
Places to visit
Looking for places to visit to expand your understand of Computer Science try:
Websites to watch
https://www.ocr.org.uk/qualifications/as-and-a-level/computer-science-h046-h446-from-2015/
https://www.memrise.com/course/1211053/ocr-a-level-computer-science-2/
https://student.craigndave.org/a-level-videos
http://teach-ict.com/
https://teachyourselfcs.com/
Page 7 of 20
Computer Science Task
To ensure that you are fully ready for your first lessons in Computer Science you need
to complete the following:
Task 1:
• Hello, World!
• Variables and Types
• Conditionals
• Arrays
• Loops
• Functions
• Objects
• Compiling and Running with Arguments
You should make notes and take screen captures of your code and add to this
booklet.
Task 2:
A thief has managed to find out the four digits for an online PIN code but doesn’t
know the correct sequence needed to hack into the account.
Design and write a program that displays all the possible combination for any four
numerical digits entered by the user. The program should avoid displaying the same
combination more than once.
Task 3:
You have a budget of only £950. You are to list the hardware you are to select to
build this gaming PC.
Page 8 of 20
Task 4:
Explain how the internals of a CPU work. What are the differences and applications
of the two CPU architectures Von Neumann and Harvard architectures?
Task 5:
Explain how the internals of a CPU work. What are the differences and applications
of the two CPU architectures Von Neumann and Harvard architectures?
Task 6a:
To create a web page you need to mark it up in HTML. Use the tutorials provided by
w3schools, http://www.w3schools.com/html, to help you to create a simple web
page in HTML that defines a form for a user to enter sign in details for a customer of
an online business. You need to consider the data required, but this must contain
some form of ID or username and password.
Task 6b:
Adding a suitable style sheet will add consistency to any pages produced. Referring
to the resource by w3schools: http://www.w3schools.com/html/html_css.asp.
Add suitable style sheet commands to format the web page you have created.
Task 6c:
Add validation to ensure customer IDs are of the right length and type and that all
fields have been completed.
Page 9 of 20
Task 7 – optional extension
This task will help you towards A-Level Component 3 Programming Project. Research
how to install Python and install the graphics library called PyGame. Research how
to code in Object Oriented Programming (OOP) and create a retro game of your
choosing.
https://www.python.org
https://www.pygame.org
http://programarcadegames.com
Page 10 of 20
Task 1:
Conditions Evidence:
Page 11 of 20
Arrays Evidence:
Loops Evidence:
Functions Evidence:
Page 12 of 20
Arguments Evidence:
Page 13 of 20
Task 2 Evidence:
Page 14 of 20
Task 3 Evidence:
Task 4 Evidence:
Task 5 Evidence:
Page 15 of 20
Task 6 Evidence:
Page 16 of 20
Task 7 – optional extension
Page 17 of 20
Computer Science and Ethics - extension
Read the BBC New article ‘Biased and wrong, facial recognition tech in the dock - https://www.bbc.co.uk/news/business-
48842750 or use the QR code and then Outline your views on facial recognition below
What is facial recognition technology and what is it being used for If you hover your
(according the article) phone over this QR
code, your smart
phone will link you to
the article you need!
Page 18 of 20