Oxford Cambridge and RSA Examinations
GCE
Computer Science
H446/01: Computer systems
Advanced GCE
Mark Scheme for November 2020Oxford Cambridge and RSA Examinations
OCR (Oxford Cambridge and RSA) is a leading UK aw
...
Oxford Cambridge and RSA Examinations
GCE
Computer Science
H446/01: Computer systems
Advanced GCE
Mark Scheme for November 2020Oxford Cambridge and RSA Examinations
OCR (Oxford Cambridge and RSA) is a leading UK awarding body, providing a wide range of
qualifications to meet the needs of candidates of all ages and abilities. OCR qualifications
include AS/A Levels, Diplomas, GCSEs, Cambridge Nationals, Cambridge Technicals,
Functional Skills, Key Skills, Entry Level qualifications, NVQs and vocational qualifications in
areas such as IT, business, languages, teaching/training, administration and secretarial skills.
It is also responsible for developing new specifications to meet national requirements and the
needs of students and teachers. OCR is a not-for-profit organisation; any surplus made is
invested back into the establishment to help towards the development of qualifications and
support, which keep pace with the changing needs of today’s society.
This mark scheme is published as an aid to teachers and students, to indicate the requirements
of the examination. It shows the basis on which marks were awarded by examiners. It does not
indicate the details of the discussions which took place at an examiners’ meeting before marking
commenced.
All examiners are instructed that alternative correct answers and unexpected approaches in
candidates’ scripts must be given marks that fairly reflect the relevant knowledge and skills
demonstrated.
Mark schemes should be read in conjunction with the published question papers and the report
on the examination.
© OCR 2020H446-01 Mark Scheme November 2020
Annotations
Annotation Meaning
Omission mark
Benefit of the doubt
Subordinate clause / consequential error
Incorrect point
Expansion of a point
Follow through
Not answered question
No benefit of doubt given
Point being made
Repeat
Correct point
Too vague
Zero (big)
Blank Page – this annotation must be used on all blank pages within an answer
booklet (structured or unstructured) and on each page of an additional object
where there is no candidate response.
Level 1H446-01 Mark Scheme November 2020
Question Answer Mark Guidance
1 (a) i • Client computers connect to server
• Server provides access to a resource/service
• In this case hotel staff use client computers to
connect to database on server (or other sensible
example).
3
AO1.2
ii e.g.
• only one point of failure
• easier to manage users/access
• Easier to backup
• Easier to keep data secure.
• Technicians can more easily remotely install /
monitor.
2
AO1.1
(b) • Joins computers/devices together on a LAN
• Receives packets/data
• Recipient’s address is given in packet header/it
uses the mac address
• Send packets/data
• Out the correct port /to the specific computer
device
3
AO1.1
Level 2
Level 3H446-01 Mark Scheme November 2020
(c) Mark Band 3–High Level (7-9 marks)
The candidate demonstrates a thorough knowledge
and understanding of network security. The material
is generally accurate and detailed.
The candidate is able to apply their knowledge and
understanding directly and consistently to the
context provided. Evidence/examples will be
explicitly relevant to the explanation.
The candidate provides a thorough discussion which
is well balanced. Evaluative comments are
consistently relevant and well-considered.
There is a well-developed line of reasoning which is
clear and logically structured. The information
presented is relevant and substantiated.
Mark Band 2-Mid Level (4-6 marks)
The candidate demonstrates reasonable knowledge
and understanding of network security; the material
is generally accurate but at times underdeveloped.
The candidate is able to apply their knowledge and
understanding directly to the context provided
although one or two opportunities are missed.
Evidence/examples are for the most part implicitly
relevant to the explanation.
The candidate provides a sound discussion, the
majority of which is focused. Evaluative comments
are for the most part appropriate, although one or
two opportunities for development are missed.
There is a line of reasoning presented with some
structure. The information presented is in the most
part relevant and supported by some evidence.
9
AO1.1
(2)
AO1.2
(2)
AO2.1
(2)
AO3.3
(3)
AO1
Malware and viruses are software that can have a negative impact
on computer systems
Spyware and keyloggers can record information entered and send
back to a third party
Phishing attacks attempt to steal data by fraudulently appearing as
legitimate emails asking for secure information
Denial of Service Attacks can overload a computer system with
traffic and effectively disable access for legitimate users
AO2
Hotel’s systems could be disrupted by DDOS attacks so no external
bookings able to be made.
Phishing and spyware attacks may compromise visitor security and
result in financial loss
Malware, viruses could destroy hotel data
Theft of customer data would be an issue under Data Protection Act
/ GDPR for which the hotel could be prosecuted
AO3
Education for staff and customers is important to deal with
recognising and dealing with threats
Up to date software, limitations of use of devices such as USB sticks
and restricted access to wireless networks can all limit risks.
Use of Firewall to restrict traffic entering and leaving the network.
Should be balanced against customer experience; will customers
return if they have no access to It facilities?H446-01 Mark Scheme November 2020
Mark Band 1-Low Level (1-3 marks)
The candidate demonstrates a basic knowledge of
network security; the material is basic and contains
some inaccuracies. The candidate makes a limited
attempt to apply acquired knowledge and
understanding to the context provided.
The candidate provides a limited discussion which is
narrow in focus. Judgments if made are weak and
unsubstantiated. The information is basic and
communicated in an unstructured way. The
information is supported by limited evidence and the
relationship to the evidence may not be clear.
0 marks
No attempt to answer the question or response is not
worthy of credit.
(d) i -Customer, Room and Booking entities, must be
singular
-Customer joined to Booking and Room joined to
booking and no other links
-Customer to Booking relationship indicated as onemany
-Room to Booking relationship indicated as onemany
4
AO2.2
Ii • A field that links to a (primary) key in a
second table
• Example : Customer ID // RoomID…
• … in Booking table
3
AO1.1
(1)
AO2.1
(2)H446-01 Mark Scheme November 2020
iii • Hashing for security
• …e.g. hash passwords in database
• …to make sure they cannot be read if they
are stolen
• Hashing for direct access
• …e.g. Customer/Room/Booking records can
be quickly accessed
• …by using hash of index as address
4
AO1.2
(2)
AO2.2
(2)
(e) • Database/relationships are consistent // each
foreign key links to an existing/valid primary
key
• Suitable example of being broken (e.g. if
primary key is deleted/updated, foreign keys
are no longer valid / changes should be
cascaded)
2
AO1.1
(1)
AO1.2
(1)
Accept example that is not related to the database given (as this is
an AO1 question)H446-01 Mark Scheme November 2020
Question Answer Mark Guidance
2 (a) (i) • Constructor method definition (.e.g new)
• itemname, price passed in as parameters (must use
different identifier names to the ones in the
question)
• …and assigned to attributes
• discount attribute assigned to 0.
4
AO3.2
Example answer
public procedure new(nItemName, nPrice)
itemname = nItemname
price = nPrice
discount = 0
endprocedure
Look out for alternative notation
e.g.
this.itemname = itemName
(ii) • 1 mark for creating object with identifier
mushypeas =
• 1 mark for creating object as type
ItemForSale
• mark for parameters passed in as needed
3
AO3.2
Example answers
mushypeas=new ItemForSale("mushy peas",
0.89)
ItemForSale mushypeas =
ItemForSale(“mushy peas”,0.89);
mushypeas=ItemForSale((“mushy
peas”,0.89);
Do not penalise for use of self parameter as used by
languages such as Python.
Must be correct case and spelling
(iii) • method definition for calculatePrice()
• applies percentage discount
• …returns calculated value
3
AO3.2
Percentage discount must be applied correctly.
Example answer
function calculatePrice()
newPrice = price – (price * discount/100)
return newPrice
end function
2 (b) • discount attribute made private
• Set method created
• …that restricts value to maximum 50%
3
AO2.2
2 (c) • Create new class 4H446-01 Mark Scheme November 2020
• …inheriting from / subclass of ItemsForSale
• new attribute for stock location
• calculatePrice() method overridden // new
version of calculatePrice() implemented in
subclass.
AO2.2H446-01 Mark Scheme November 2020
Question Answer Mark Guidance
3 (a) i 1000 1001 1
AO1.2
Correct answer only
3 ii 6D 1
AO1.2
Correct answer only
3 iii AB 1
AO1.2
Correct answer only
3 iv 1010 0110
1 mark per nibble
2
AO1.2
Correct answer only
3 (b) • 10110.111 in fixed point
• Move binary point four places to the left (1.0110111)
• Gives mantissa of 10110111
• therefore exponent is 4 = 0100
• Forming final answer of 10110111 0100
5
AO1.2
3 (c) (i) • 1001 1010 2
AO1.2
1 mark per nibble, mark left to right
(ii) • 1000 0000
• OR
2
AO2.2H446-01 Mark Scheme November 2020
Question Answer Mark Guidance
4 (a) i
• left column filled with 1s (¬ A ∧ ¬ B) …
• right column filled with 1s ( A ∧ ¬ B)…
• …Middle 2 columns filled with zero or blank
3
AO1.2
(1)
AO2.2
(2)
4 ii
• ¬ B / NOT B
• Karnaugh map used to show 1s highlighted with
overlap
2
AO2.2
4 (b) i • Delay / store a value…
• …of 1 bit
• When a signal is given
2
AO1.1
4 (b) Ii • Data input
• Clock input
4H446-01 Mark Scheme November 2020
• Q output
• When clock input goes high…
• …Q changes to D
• NOT Q is reverse of Q
AO1.1
(2)
AO1.2
(2)H446-01 Mark Scheme November 2020
Question Answer Mark Guidance
5 Mark Band 3–High Level (7-9 marks)
The candidate demonstrates a thorough knowledge and
understanding of electronic communication monitoring
techniques and the social and legal impact of this. The
material is generally accurate and detailed.
The candidate is able to apply their knowledge and
understanding directly and consistently to the context
provided. Evidence/examples will be explicitly relevant
to the explanation.
The candidate provides a thorough discussion which is
well balanced. Evaluative comments are consistently
relevant and well-considered.
There is a well-developed line of reasoning which is
clear and logically structured. The information
presented is relevant and substantiated.
Mark Band 2-Mid Level (4-6 marks)
The candidate demonstrates reasonable knowledge
and understanding electronic communication
monitoring techniques and the social and legal impact
of this; the material is generally accurate but at times
underdeveloped.
The candidate is able to apply their knowledge and
understanding directly to the context provided although
one or two opportunities are missed.
Evidence/examples are for the most part implicitly
relevant to the explanation.
The candidate provides a sound discussion, the
majority of which is focused. Evaluative comments are
for the most part appropriate, although one or two
opportunities for development are missed.
9
AO1.1
(2)
AO1.2
(2)
AO2.1
(2)
AO3.3
(3)
AO1
Encryption means that data is scrambled so that if it is
intercepted, it cannot be understood.
Requires the use of a key to decrypt.
Symmetric encryption uses on key for encrypt/decrypt
and so key exchange is problematic.
Asymmetric encryption uses different keys (public and
private) so no need to exchange keys.
Regulation of Investigatory Powers Act (RIPA) gives
authorities the power to compel disclosure of encryption
keys
AO2
Encrypted messages cannot be read by outsiders
without the key
RIPA gives Police the power to insist on users
decrypting messages / handing over the key to allow
reading of messages.
Many messaging services already include end-to-end
encryption by default
Use of VPNs to re-route traffic and attempt to escape
monitoring possible
The ending of encrypted data shows that two parties
are passing information they want to keep secret.
Techniques like steganography can be used to his the
existence of encrypted data.
AO3
Monitoring communication runs the risk of revealing
secret but non-illegal communications
Restricting encryption means that secure sites (eg
banks) may struggle to function
Legislation (RIPA) already ensures that
communications can be monitored if there is just cause
Routine monitoring runs the risk of false-positives
However, will reduce risk of illegal activities being coordinated (e.g. terrorism, drug trafficking).H446-01 Mark Scheme November 2020
There is a line of reasoning presented with some
structure. The information presented is in the most part
relevant and supported by some evidence.
Mark Band 1-Low Level (1-3 marks)
The candidate demonstrates a basic knowledge of
electronic communication monitoring techniques and
the social and legal impact of this; the material is basic
and contains some inaccuracies. The candidate makes
a limited attempt to apply acquired knowledge and
understanding to the context provided.
The candidate provides a limited discussion which is
narrow in focus. Judgments if made are weak and
unsubstantiated. The information is basic and
communicated in an unstructured way. The information
is supported by limited evidence and the relationship to
the evidence may not be clear.
0 marks
No attempt to answer the question or response is not
worthy of credit.H446-01 Mark Scheme November 2020
Question Answer Mark Guidance
6 (a) • Stores current player
• …and alternates between player on each go
• Allows a number to be input
• …and validates that this is between 1 and 3
• Outputs numbers chosen (e.g. 4, 5, 6)
• Checks if number 15 has been reached
• …and displays winning message
• …and stops
8
AO3.2
Example answer
num = 1
turn = "player 1"
while num <= 15
print(turn + "'s turn")
choice = input("how many numbers?")
if choice >= 1 and choice <= 3 then
for y = 1 to choice
print(num)
num = num + 1
next y
//swap turn
if turn == "player 1" then
turn = "player 2"
else
turn = "player 1"
end if
end if
endwhile
print(turn + " wins!")H446-01 Mark Scheme November 2020
Question Answer Mark Guidance
7 (a) • Store value in accumulator at address given
• BRA // BR
• Branch if zero
• Branch if zero or positive
• HLT // COB // END
5
AO1.1
Mnemonic Instruction
ADD Add
SUB Subtract
STA
Store value in
accumulator at
address given
LDA Load (to
accumulator)
BRA Branch always
BRZ Branch if zero
BRP Branch if zero or
positive
INP Input
OUT Output
HLT End program
7 (b) • Inputs two numbers
• ..stores at least one of them
• Comparison / subtraction to decide which is larger
• Jump / output if num1 larger
• Jump / output if num2 larger or nums equal
• Loops back to start after either output
6
AO3.2
Example answer
start INP
STA x
INP
STA y
SUB x
BRP first
LDA x
OUT
BRA start
first LDA y
OUT
BRA start
x DAT
y DATH446-01 Mark Scheme November 2020
Question Answer Mark Guidance
8 (a) Mark Band 3–High Level (9-12 marks)
The candidate demonstrates a thorough knowledge and
understanding of procedural and object oriented
programming. The material is generally accurate and
detailed.
The candidate is able to apply their knowledge and
understanding directly and consistently to the context
provided. Evidence/examples will be explicitly relevant
to the explanation.
The candidate provides a thorough discussion which is
well balanced. Evaluative comments are consistently
relevant and well-considered.
There is a well-developed line of reasoning which is
clear and logically structured. The information
presented is relevant and substantiated.
Mark Band 2-Mid Level (5-8 marks)
The candidate demonstrates reasonable knowledge
and understanding of procedural and object oriented
programming; the material is generally accurate but at
times underdeveloped.
The candidate is able to apply their knowledge and
understanding directly to the context provided although
one or two opportunities are missed.
Evidence/examples are for the most part implicitly
relevant to the explanation.
The candidate provides a sound discussion, the
majority of which is focused. Evaluative comments are
for the most part appropriate, although one or two
opportunities for development are missed.
12
AO1.1
(2)
AO1.2
(2)
AO2.1
(23
AO3.3
(5)
AO1
Object oriented programming makes use of classes
(templates) from which objects are made.
Classes have attributes and methods
Classes can be encapsulated by making attributes
private and providing public access methods
Object oriented programming supports inheritance
which allows classes to use attributes and methods of
parent classes.
Object oriented programming supports polymorphism
meaning that class attributes and methods can take on
many different forms if required.
AO2
OO approach would call on classes per type of player
or enemy object
Objects made from these classes, so one enemy class
may generate many enemy objects, each with different
values for their attributes (e.g. speed, energy)
Special types of Player or Enemy objects could be
instantiated from classes that inherit from the original
Player/Enemy classes, but have attributes/methods of
their own.
Polymorphism would allow for the attributes/methods of
Player/Enemy objects to behave differently from normal
if required.
AO3
OO promotes a modular approach (procedural through
use of subroutines, OO through classes).
OO is an abstraction of a real world problem, with
classes for each type of things to be modelled and
objects for each instance of these.
OO has advantages in data security in that
encapsulation forces developers/users to use methodsH446-01 Mark Scheme November 2020
There is a line of reasoning presented with some
structure. The information presented is in the most part
relevant and supported by some evidence.
Mark Band 1-Low Level (1-4 marks)
The candidate demonstrates a basic knowledge of
procedural or object oriented programming; the material
is basic and contains some inaccuracies. The candidate
makes a limited attempt to apply acquired knowledge
and understanding to the context provided.
(with their built in validation) to access/amend data
stored in attributes.
OO has advantages in efficiency of design where
classes can be reused and can inherit from one
another. Procedural programming struggles to support
this.
OO also offers flexibility through polymorphism.H446-01 Mark Scheme November 2020
Question Answer Mark Guidance
9 (a) i • Paging
• …blocks of memory of equal size / fixed size
• Segmentation
• …blocks of memory split logically /variable size
4
AO1.2
ii e.g.
• Security
• …does not let programs access memory reserved
for other programs.
• Multitasking
• ...allows multiple programs to run at once
2
AO1.2
iii • (Currently unneeded) pages moved from memory to
secondary storage
• …to create room in memory
• pages moved back to memory when required
2
AO1.1
(b) • Software/program
• …that allows the operating system to communicate
with hardware
Examples:
• Printer driver
• Webcam driver
• Sound card driver
• Graphics card driver etc.
3
AO1.1
(1)
AO2.1
(2)
Max two for description, Max one for example
(c) e.g.
• Encryption
• …scrambles meaning of data files with a key
• Defragmentation
• …organises file segments on secondary storage
• Compression
• … reduces size of files
• Backup
• …makes regular copies of files in case of loss
• Disk Checker
4
AO1.1
Mark in pairs, 2 marks per example.
Accept other sensible examples of utility software.
(d) i • Source code / program code is freely available
• …to edit/amend recompile.
2
AO1.1H446-01 Mark Scheme November 2020
ii e.g.
• Can modify code and adapt IDE to her needs
• Is likely to be financially free of cost.
• Can recompile to work on different systems
• Has the benefit of a community potentially
improving the system
• Can learn from others
• Can ensure no backdoors / malware
1
AO2.1
Do not accept simply seeing the code (previous
question).
(e) i • Sections of code / program file
• Written by other authors / already written
• Containing useful routines
• Suitable example (e.g. GUI routines, database
access routine, encryption, graphics)
3
AO1.1
(2)
AO2.1
(1)
Maximum 2 for definition, 1 for example
ii • Save time…
• …because no need to rewrite code
• Use expertise of others..
• …to complete tasks that require specialist
knowledge / abstract away complexity.
• Has already been tested/the programmer doesn’t
have to test it themselves
• Making debugging easier/saving time
2
AO1.2
iii • May (significantly) increase size of compiled file…
• …as library contains many routines that aren‘t being
used.
• Not written by the programmer
• …so introduces uncertainty / require further testing /
programmer needs to spend time familiarising
themselves with it
2
AO1.2
iv • Links the main program to libraries
• ..can either include them in the final executable
code
• ..or get the executable code to point to the external
libraries
•
3
\
AO1.2
Accept terms static and dynamic for bullets 2 and 3, but
only if these are explained.OCR (Oxford Cambridge and RSA Examinations)
The Triangle Building
Shaftesbury Road
Cambridge
CB2 8EA
[Show More]