Computer Science
Computer Science
Computer Science
COMPUTER SCIENCE
Paper 0984/11
Computer Systems
Key messages
It would be beneficial for candidates to show a greater use of technical terminology in their responses. It
would also be beneficial for candidates to note the key terms given in a question and structure their response
based upon these. Candidates should note that any context given in a question should be used in the
answer, and their answer should be applied to the given context.
General comments
Candidates and centres are reminded that written papers are scanned in and marked on computer screens
by Examiners. Consequently, if a candidate writes the answer to a question on an additional page, they must
indicate very clearly to the Examiner where their revised answer is to be found. Also, if answers have been
crossed out, the new answer must be written very clearly, so that Examiners can easily read the text and
award candidates the appropriate mark.
Question 1
(a) Most candidates ticked the correct box. The most common incorrect answer given was base 1
system. Candidates are reminded to only tick one box when a question gives this as an instruction.
If candidates tick more than one box, a mark cannot be awarded.
(b) Most candidates were able to provide the correct binary numbers. Binary conversions continue to
be a strong point for candidates.
(c) Many candidates were able to provide the correct binary numbers. It is beneficial for candidates to
show all their working. Some candidates only showed partial stages of their working. For example,
a candidate would seem to flip each of the values, but didn’t show that they then added 1, just gave
their final answer.
(d) Many candidates were able to provide the correctly add the binary numbers, using binary addition.
Some candidates didn’t show all their working. For example, they did not show the values they
carried from one column to the next. It would be beneficial for candidates to note that the question
requires them to demonstrate binary addition. Some candidates converted the values to denary,
added the values and converted the answer back to binary. Candidates should note that this is not
answering the question, as they do not demonstrate binary addition.
(e) Many candidates were able to recognise that an overflow error occurs when the value is larger than
255. Some candidates were also able to state that this means the value will require more than 8
bits to be stored.
Question 2
(a) Few candidates were able to state what is meant by the sample rate and resolution. Some
candidates tried to describe the sample resolution in relation to an image. It would be beneficial for
candidates to have a greater understanding of how sound is represented by a computer.
© 2023
Cambridge International General Certificate of Secondary Education (9–1)
0984 Computer Science June 2023
Principal Examiner Report for Teachers
(b) Most candidates were able to provide the correct type of compression. Some candidates gave an
example of compression rather than a type of compression. For example, they gave MP3.
Candidates should provide a type of compression, when requested, and not an example of the
compression type.
(c) (i) Most candidates were able to give two items of data that would be included in the packet header.
The two most common answers were sender’s IP address and receiver’s IP address.
(ii) Few candidates were able to give a full description of how data is transmitted using packet
switching. The most common mark points awarded were stating that data is broken down into
packets, and each packet can take a different route. It would be beneficial for candidates to
understand more about the process of how candidates take a different path, and the reordering of
packets at the end of transmission.
Question 3
(a) Many candidates circled the correct storage devices. The most common incorrect answers were
RAM and ROM.
(b) Some candidates identified the correct option. The most common incorrect answer given was
volatile.
Question 4
Most candidates were able to correctly complete the first two missing terms. Few candidates were able to
correctly complete the second two missing terms. The most common incorrect answer given was bootloader.
Question 5
(a) Many candidates were able to provide a correct sensor. The most common correct answer was
level sensor. The most common unsuitable sensor given was infrared.
(b) Very few candidates were able to provide a detailed, technical and accurate response for this
question. Many candidates gave a generic description of a system that uses sensors and
microprocessors. It would be beneficial for candidates to understand how to analyse and describe
the operation of a specific system, using the context given in the question.
Question 6
(a) (i) Many candidates were able to provide the correct component. The most common incorrect answer
was router.
(ii) Most candidates were able to identify the correct type of address.
(b) (i) Many candidates were able to provide the correct device.
(ii) Many candidates were able to describe a dynamic IP address. Some candidates provided
responses that were more suitable for describing what an IPv4 or IPv6 address is. Candidates are
reminded to look at the key terminology in the questions and structure their answer based on this.
Question 7
(a) Many candidates were able to describe what is meant by a low-level language.
(b) Few candidates were able to give reasons why a programmer would use a low-level language.
Many gave answer based upon it making the program more secure from hackers. It would be
beneficial for candidates to have a greater understanding of the benefits of using a low-level
language.
© 2023
Cambridge International General Certificate of Secondary Education (9–1)
0984 Computer Science June 2023
Principal Examiner Report for Teachers
Question 8
(a) Few candidates were able to provide an accurate description of how a brute-force attack is carried
out. The most common mark point awarded was trying to guess a password. It would be beneficial
for candidates to have a greater understanding of how a brute-force attack is carried out.
(b) (i) Many candidates were able to give suitable reasons why a brute-force attack might be carried out.
Some candidates repeated information given in the question, stating that it was done to gain
access to a person’s account. Candidates are reminded to note information given in the question
and provide information beyond this in their response. Simply repeating information in the question
will not gain marks.
(ii) Most candidates were able to provide three types of malware that could be installed.
(c) Most candidates were able to provide suitable security solutions. The most common incorrect
answer given was using anti-virus software.
Question 9
(a) Many candidates were able to give at least one other characteristic of a robot. The most common
correct answer given was in relation to electrical components.
(b) Few candidates were able to give advantages to the company employees. Many candidates gave
advantages that would be applicable to the company’s owners, but not the employee, such as
robots do not need to take breaks.
Question 10
(b) Few candidates were able to draw and annotate an accurate diagram of the process of pharming.
The most common mark point awarded was a redirection to a fake website. It would be beneficial
for candidates to understand the focus of their diagram should be providing a simple structure and
annotation about the process. Many candidates had spent time drawing elaborate artworks, that
gained them few marks.
(c) Some candidates were able to describe the purpose of a web browser. Some candidates gave
functions of a web browser, rather than its purpose.
(d) Most candidates were able to provide at least two functions of a web browser. The most common
correct functions given were bookmarks and user history.
(e) Many candidates were able to provide some understanding about session cookies and persistent
cookies. This was mainly about them being temporary and permanent. Few candidates could
provide any detail beyond this. It would be beneficial for candidates to have a greater
understanding of session cookies and persistent cookies.
© 2023
Cambridge International General Certificate of Secondary Education (9–1)
0984 Computer Science June 2023
Principal Examiner Report for Teachers
COMPUTER SCIENCE
Paper 0984/12
Computer Systems
Key messages
It would be beneficial for candidates to show a greater use of technical terminology in their responses. It
would also be beneficial for candidates to note the key terms given in a question and structure their response
based upon these. Candidates should note that any context given in a question should be used in the
answer, and their answer should be applied to the given context.
General comments
Candidates and centres are reminded that written papers are scanned in and marked on computer screens
by Examiners. Consequently, if a candidate writes the answer to a question on an additional page, they must
indicate very clearly to the Examiner where their revised answer is to be found. Also, if answers have been
crossed out, the new answer must be written very clearly, so that Examiners can easily read the text and
award candidates the appropriate mark.
Question 1
Most candidates were able to provide three correct output devices. The most common incorrect answer
given was microphone. The most common correct answer missed was actuator.
Question 2
(a) Most candidates were able to convert the binary numbers to hexadecimal. If a value converts to 0,
candidates should note that they should still give this value in their response.
(b) (i) Many candidates were able to correctly complete the register.
(b) (ii) Many candidates were able to state the effect of this shift. Some candidates gave an answer that
did not provide enough detail, such as the value decreases.
(c) Most candidates were able to give two suitable reasons. Some candidates who gave an answer in
relation to being shorter representation, were too vague in their response. For example, they stated
it takes up less space, but did not refer to where this happens. The most common incorrect answer
given is that it saves storage space.
(d) Most candidates were able to convert the denary number to hexadecimal. Number conversions
continue to be strong point for candidate knowledge.
Question 3
(a) Few candidates were able to accurately describe how text is converted to binary. Some candidates
focussed on how a keyboard process key presses, rather than how text is converted to binary.
Centres are reminded that describing the operation of input devices is no longer part of this
syllabus. It would be beneficial for candidates to have a greater understanding of how text is
converted to binary using a character set.
(b) (i) Most candidates were able to recognise that the file size would be reduced.
© 2023
Cambridge International General Certificate of Secondary Education (9–1)
0984 Computer Science June 2023
Principal Examiner Report for Teachers
(ii) Some candidates were able to provide an accurate description of how lossless compression would
compress the text file. Some candidates gave confused descriptions relating to images, rather than
text. Some candidates provided a description that was more reflective of lossy compression, and
often still relating to an image. It would be beneficial for candidates to have a greater understanding
of how lossless compression compresses a text file.
Question 4
(a) (i) Most candidates were able to accurately describe serial transmission. Data transmission methods
continue to be a strong point in candidates’ knowledge.
(ii) Most candidates were able to give two benefits of using serial transmission.
(b) (i) Many candidates were able to state the correct device. The most common incorrect answer was IP
address.
(ii) Most candidates were able to describe what is meant by cloud storage.
(iii) Few candidates were able to give a suitable disadvantage for storing the photos in cloud storage.
Many candidates stated the photos could be hacked. Candidates should understand the photos
could also be hacked when stored locally, so this is not a disadvantage of storing in the cloud over
storing locally. The most common correct answer given was not being able to access them if
internet connection is lost. It would be beneficial for candidates to have a greater understanding of
the disadvantages of cloud storage.
Question 5
(a) Some candidates were able to tick the correct box. The most common incorrect answer was the
program is harder to debug. It would be beneficial for candidates to have a greater understanding
of the benefits of using a high-level language. Candidates also often confuse the benefits of low-
level and high-level languages. It is possible they get this misconception because high-level
language has the word ‘high-level’, that they interpret as more difficult.
(b) (i) Few candidates were able to accurately and technically describe the operation of a compiler. The
most common mark point awarded was for stating an executable file is created. It would beneficial
for candidates to have a greater technical understanding of the operation of a compiler. Some
candidates described the benefits of a compiler, rather than the operation.
(ii) Some candidates were able to describe how a compiler reports errors. It would be beneficial for
candidates to have a greater understanding of this process.
(c) Many candidates were able to provide at least two other functions of an IDE.
Question 6
(a) Many candidates were able to correctly complete the missing terms.
(b) Many candidates were able to give at least two functions of a cookie.
Question 7
(a) Many candidates had a very good attempt at drawing this process. The most common marks
awarded were for creating bots and the bots sending requests to the webserver. It would be
beneficial for candidates to have a greater technical understanding of the process of a DDoS.
Some candidates had spent time drawing elaborate artworks, that gained them few marks.
Candidates should focus on providing simple diagrams that are well annotated.
(b) Many candidates were able to provide two aims of carrying out a DDoS attack.
© 2023
Cambridge International General Certificate of Secondary Education (9–1)
0984 Computer Science June 2023
Principal Examiner Report for Teachers
(c) Many candidates were able to give at suitable security solutions for a DDoS.
Question 8
(b) Many candidates were able to provide characteristics of an IP address, but did not extend this to
giving specific characteristics of an IPv4 address. It would be beneficial for candidates to have a
greater understanding of the specific characteristics of an IPv4 address.
Question 9
(a) Some candidates were able to identify the other parts of an expert system. Candidates seemed to
either know this fully, or not at all.
(b) Very few candidates were able to accurately describe the role of the inference engine. It would be
beneficial for candidates to have a greater understanding of the role of the components in an
expert system.
Question 10
(a) Many candidates were able to give a suitable example of each type of software, but few were able
to describe the difference between the type of software. Candidates are reminded that they should
not use brand names when referring to examples of software.
© 2023
Cambridge International General Certificate of Secondary Education (9–1)
0984 Computer Science June 2023
Principal Examiner Report for Teachers
COMPUTER SCIENCE
Paper 0984/21
Algorithms, Programming and Logic
Key messages
Candidates were able to demonstrate a good level of understanding of algorithms and programming. It would
be beneficial to candidates to fully understand the published pseudocode within the syllabus as this is the
basis for the initial set of questions within the paper.
General comments
Candidates using additional pages are reminded to clearly indicate the question for which they are providing
a further response. With the additional pages, the candidates need to clearly write their name and candidate
number on any additional booklets.
Question 1
(a) Most candidates were able to match the life cycle descriptions to the correct life cycle stage.
(b) Few candidates were able to provide a fully correct answer. Most candidates did not understand
that a program can be split into input, output, process and storage. Candidates either scored all the
marks or none of the marks.
Question 2
Most candidates were able to correctly identify the array as the correct answer.
Question 3
(a) Many candidates were able to provide the answer that data needs to be sensible/reasonable but
not that it was an automatic check carried out by the computer. Many candidates achieved the
second mark by providing an example of a validation check.
(b) Most candidates were able to provide the correct test data for normal and abnormal with many
providing correct test data for extreme. There was some confusion between extreme and boundary
data. Many candidates were able to give correct reasons with why it was the type of test data and if
the data would be accepted or rejected.
Question 4
Few candidates understood the purpose of DIV and ROUND. Candidates who understood the library
routines were able to give a suitable example.
Question 5
(a) Most candidates were able to provide two or more of the errors within the algorithm. Many
candidates provided all four errors and the corrections.
(b) Many candidates achieved all the marks for describing how they would correct the algorithm with a
description and a snippet of code. Some candidates incorrectly used program code to answer this
question.
© 2023
Cambridge International General Certificate of Secondary Education (9–1)
0984 Computer Science June 2023
Principal Examiner Report for Teachers
Question 6
Only a few candidates managed to achieve all the marks for this question correctly identifying how
techniques can be used to create a maintainable program. Many candidates mistakenly linked this question
to the previous question and tried to adjust the code in the previous question. Many candidates suggested
verification, validation and the use of loops.
Question 7
(a) Many candidates answered this question well and achieved a mark for initialising the pointer. A
common mistake was not copying the output correctly from the flowchart.
(b) Only stronger candidates were able to correctly identify the type of algorithm used which was a
linear search. Many candidates incorrectly identified it as a flowchart.
(c) Most candidates achieved one mark for correctly identifying that the algorithm would go into an
endless loop/continually adding 1 to the pointer. A few identified that the algorithm would crash
when it tried to access an index that did not exist.
Question 8
(a) Most candidates were able to store the phrase correctly and use the length function correctly but
only a few were able to use the correct pseudocode uppercase function. Many candidates used
code for the uppercase function.
(b) Most candidates were able to achieve one mark for the correct uppercase version of the string with
many correctly identifying the correct number of characters in the string. A few incorrectly only
counted the actual letters in the phrase.
Question 9
(a) Most candidates achieved all the marks for this question, identifying and applying the correct
symbols of the gates. A few incorrectly identified the XOR gate with many different variations of
this.
(b) Most candidates achieved all the marks for this question.
Question 10
(a) Most candidates were able to identify the correct field for the primary key and gave a valid reason.
(b) Most candidates achieved all the marks for this question applying the correct data types to the
fields. A few candidates did not use the data types provided and a few repeated the data types for
the fields.
(c) Most candidates achieved three or more of the marks available. A few candidates did not copy the
field names correctly. A few candidates did not refer back to the previous question when selecting
the response to the WHERE part of the question.
Question 11
This question focused on candidates’ ability to solve a problem by either using code or pseudocode. Very
few candidates tried to write the answer to this question in a language that is not stated within the syllabus.
Candidates were asked to meet three requirements. Requirement 1 was to input reading for a week,
requirement 2 was to find the average for each day and week and requirement 3 was to output the averages
in Fahrenheit rounded to one decimal place. Requirement 1 was quite well attempted by most candidates
using a nested loop and using the 2D array stated in the question. A few candidates achieved all of
requirement 1 with validating the input with a loop within the loops. A few candidates attempted to validate by
using an if statement allowing only 1 attempt at entering a correct answer. Requirements 2 and 3 were quite
well attempted by many candidates. Only a very few candidates achieved all aspects of each requirement as
many candidates, despite calculating the averages correctly and converting to Fahrenheit correctly, did not
round their answer.
© 2023
Cambridge International General Certificate of Secondary Education (9–1)
0984 Computer Science June 2023
Principal Examiner Report for Teachers
COMPUTER SCIENCE
Paper 0984/22
Algorithms, Programming and Logic
Key messages
Candidates who took care to ensure that they fully answered the questions that were asked, with responses
that matched the context of the questions, scored higher marks than those who gave generic responses.
Candidates are advised to answer algorithm questions as stated so that pseudocode questions are
answered using pseudocode and flowchart questions are answered using a flowchart. Candidates are further
advised to ensure that the style of pseudocode used matches the syntax of the pseudocode defined within
the syllabus for this course.
Candidates are advised to make sure that any answers they provide are appropriate for the command word
used in the question, such that questions beginning with ‘explain’ will require more detail than those
beginning with ‘state’.
Candidates must ensure that they write a program using pseudocode, Python, Java or VB.NET for the final
question. They must also ensure that the program accurately follows the details given in the scenario.
General comments
Candidates demonstrated a good overall understanding of the requirements of the paper with very few
questions left unanswered.
Candidates are reminded to read the questions carefully before answering them and only provide the answer
that is required. For example, for Question 4(b)(ii), candidates were asked to write pseudocode to perform a
double entry check until a successful input is made. A significant number of candidates also included
validation checks, such as a range check, which was unnecessary.
Candidates are reminded that when answering the final programming question, that they should read the
scenario through to the end and only provide declarations and initialisations of variables and arrays as
required within the solution to ensure valuable time is not used unnecessarily.
Question 1
Most candidates correctly identified option A (Analysis) as the first stage of the program development life
cycle.
Question 2
Most candidates were able to match all or most of the named logic gates to their correct standard symbol.
Question 3
Many candidates identified all or most of the methods: structure diagram, flowchart and pseudocode as ways
to present the design of a solution. Some common examples of incorrect answers included programming
concepts such as iteration, sequence and selection, or the component parts of a problem such as inputs,
processes and outputs.
© 2023
Cambridge International General Certificate of Secondary Education (9–1)
0984 Computer Science June 2023
Principal Examiner Report for Teachers
Question 4
(a) Most candidates were able to achieve at least one mark for describing one of the validation checks
required for the given scenario. Candidates who identified a range check with both correct limits, a
presence check to ensure that a value had been entered and a type check to ensure a number had
been entered, achieved full marks.
(b) (i) Candidates who correctly stated that the check described was needed to verify the data, achieved
the mark.
(ii) Candidates who wrote pseudocode that included two inputs, a comparison to check that the two
inputs were the same, with iteration to allow re-input if they were not the same and used the
variable measurement within the algorithm, achieved high or full marks. Some candidates
unnecessarily included additional pseudocode to check for other issues such as inputs being of a
specific range, which were not required for this part of the question.
Question 5
This question has been removed from the question paper due to an issue with the question.
Question 6
This question required candidates to state three different features of a high-level programming language that
could be used to make a program easier to understand by a programmer. Correct answers included use of
commenting, ensuring identifiers have meaningful names and the use of procedures and functions for the
tasks within a program. In addition, candidates were asked to give an example of each one. Most candidates
achieved some marks for identifying at least one feature, with many of these also giving at least one
appropriate example. However, very few candidates achieved full marks. Some candidates incorrectly
described the features they had named or gave benefits of using them, rather than simply giving an example,
as required by the question.
Question 7
(a) This question was very well answered with most candidates correctly naming the sections of the
given pseudocode that contained all or most of the programming concepts: totalling, count-
controlled loop and post-condition loop.
(b) Most candidates correctly identified and corrected at least one of the errors in the given
pseudocode. However, only the strongest candidates achieved high marks.
(c) This question was answered quite well with most candidates identifying the correct location in the
algorithm for the placement of the new check. Many of these candidates went on to achieve more
marks for partially or fully correct examples of appropriate pseudocode.
Question 8
This question was very well answered with most candidates achieving full or nearly full marks for identifying
the truth table output for a given logic expression.
Question 9
(a) Most candidates achieved at least one mark for this trace table, with some of these candidates
achieving high marks. Candidates who correctly completed the table as they followed the progress
of the given algorithm, achieved the highest marks.
(b) A large proportion of candidates correctly described the algorithm as sorting the data in an array,
with those who also stated that the outcome was in ascending order achieving both marks.
© 2023
Cambridge International General Certificate of Secondary Education (9–1)
0984 Computer Science June 2023
Principal Examiner Report for Teachers
Question 10
(a) Most candidates correctly identified SongNumber as the most appropriate primary key field.
(b) Candidates who identified appropriate data types as used in a database, such as text,
alphanumeric, date/time or real against the given fields, achieved the marks. In this case, the
correct answer was text or alphanumeric for SongNumber, text or alphanumeric for Title,
date/time for Recorded and real for Minutes.
(c) This question was mostly well answered with candidates correctly interpreting the given structured
query language (SQL) statements.
Question 11
(a) Candidates who correctly declared the two variables P and Q and assigned the given values to
them using appropriate pseudocode statements achieved the marks.
(b) Candidates generally appeared to find this question challenging. However, many candidates did
achieve at least one mark. Those who correctly used the string handling functions UCASE, LENGTH
and SUBSTRING to complete the given scenario achieve the highest marks.
(c) Candidates who correctly identified the position 5 as being the location of the letter 'w' in the
string "The world" achieved this mark.
Question 12
Candidates were required to complete an extended program using pseudocode, Python, Java or VB.NET to
meet a set of requirements given in a scenario based on an online banking system.
A wide range of quality of responses was seen, with most responses using either pseudocode or Python, but
some Java and a limited number of VB.NET solutions were also seen.
The full range of marks was awarded, with many candidates achieving high marks. Candidates whose
responses closely matched the requirements given towards the end of the scenario, ensuring that all aspects
of the requirements were fully covered, achieved the highest marks.
Candidates who achieved full or near full marks also followed the remaining guidance at the end of the
scenario well. This included the comprehensive use of comments to explain what each part or sub-part of the
solution was doing and the use of appropriate messages to accompany all inputs and outputs.
The strongest candidates also correctly used all the data structures given in the scenario in the way they
were expected to be used as stated in their descriptions.
© 2023