As CS Spec
As CS Spec
5 21 January 2019
3 Subject content – AS
We will support the following programming languages:
• C#
• Java
• Pascal/Delphi
• Python
• VB.Net.
Schools and colleges will be asked to indicate their programming language preference at the start
of the study of the specification.
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 11
3.1.1.2 Programming concepts
Content Additional information
Use, understand and know how the following The three combining principles (sequence,
statement types can be combined in programs: iteration/repetition and selection/choice) are
basic to all imperative programming languages.
• variable declaration
• constant declaration
• assignment
• iteration
• selection
• subroutine (procedure/function).
12 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 13
3.1.1.8 Random number generation in a programming language
Content Additional information
14 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 15
3.2 Fundamentals of data structures
3.2.1 Data structures and abstract data types
3.2.1.1 Data structures
Content Additional information
Be familiar with the concept of data structures. It may be helpful to set the concept of a data
structure in various contexts that students may
already be familiar with. It may also be helpful
to suggest/demonstrate how data structures
could be used in a practical setting.
Use arrays (or equivalent) in the design of A one-dimensional array is a useful way of
solutions to simple problems. representing a vector. A two-dimensional array
is a useful way of representing a matrix. More
generally, an n-dimensional array is a set of
elements with the same data type that are
indexed by a tuple of n integers, where a tuple
is an ordered list of elements.
Be aware that before a problem can be solved, Students should have experience of using
it must be defined, the requirements of the abstraction to model aspects of the external
system that solves the problem must be world in a program.
established and a data model created.
16 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
3.3.1.2 Design
Content Additional information
Be aware that before constructing a solution, Students should have sufficient experience of
the solution should be designed and specificed, successfully structuring programs into modular
for example planning data structures for the parts with clear documented interfaces to
data model, designing algorithms, designing an enable them to design appropriate modular
appropriate modular structure for the solution structures for solutions.
and designing the human user interface.
3.3.1.3 Implementation
Content Additional information
Be aware that the models and algorithms need Students should have sufficient practice of
to be implemented in the form of data structures writing, debugging and testing programs to
and code (instructions) that a computer can enable them to develop the skills to articulate
understand. how programs work, arguing for their
correctness and efficiency using logical
reasoning, test data and user feedback.
3.3.1.4 Testing
Content Additional information
Be aware that the implementation must be Students should have practical experience of
tested for the presence of errors, using selected designing and applying test data, normal,
test data covering normal (typical), boundary boundary and erroneous to the testing of
and erroneous data. programs so that they are familiar with these
test data types and the purpose of testing.
3.3.1.5 Evaluation
Content Additional information
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 17
3.4 Theory of computation
3.4.1 Abstraction and automation
3.4.1.1 Problem-solving
Content Additional information
18 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
3.4.1.3 Abstraction
Content Additional information
Know that procedural abstraction represents a The result of abstracting away the actual values
computational method. used in any particular computation is a
computational pattern or computational method
- a procedure.
Know that for functional abstraction the The result of a procedural abstraction is a
particular computation method is hidden. procedure, not a function. To get a function
requires yet another abstraction, which
disregards the particular computation method.
This is functional abstraction.
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 19
3.4.1.7 Data abstraction
Content Additional information
Know that details of how data are actually Data abstraction is a methodology that enables
represented are hidden, allowing new kinds of us to isolate how a compound data object is
data objects to be constructed from previously used from the details of how it is constructed.
defined types of data objects.
For example, a stack could be implemented as
an array and a pointer for top of stack.
3.4.1.9 Decomposition
Content Additional information
3.4.1.10 Composition
Content Additional information
20 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
3.4.1.11 Automation
Content Additional information
Understand that automation requires putting Computer science is about building clean
models (abstraction of real world objects/ abstract models (abstractions) of messy, noisy,
phenomena) into action to solve problems. This real world objects or phenomena. Computer
is achieved by: scientists have to choose what to include in
models and what to discard, to determine the
• creating algorithms
minimum amount of detail necessary to model
• implementing the algorithms in program in order to solve a given problem to the required
code (instructions) degree of accuracy.
• implementing the models in data
structures Computer science deals with putting the models
• executing the code. into action to solve problems. This involves
creating algorithms for performing actions on,
and with, the data that has been modelled.
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 21
3.5.1.3 Rational numbers
Content Additional information
Be familiar with the concept of a rational ℚ is the set of numbers that can be written as
number and the set ℚ of rational numbers, and fractions (ratios of integers). Since a number
that this set includes the integers. such as 7 can be written as 7/1, all integers are
rational numbers.
Be familiar with the concept of an irrational An irrational number is one that cannot be
number. written as a fraction, for example √2.
Be familiar with the concept of a real number ℝ is the set of all 'possible real world quantities'.
and the set ℝ of real numbers, which includes
the natural numbers, the rational numbers, and
the irrational numbers.
Be familiar with the concept of ordinal numbers When objects are placed in order, ordinal
and their use to describe the numerical numbers are used to tell their position. For
positions of objects. example, if we have a well-ordered set S = {‘a’,
‘b’, ‘c’, ‘d’}, then ‘a’ is the 1st object, ‘b’ the 2nd,
and so on.
22 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
Be familiar with the concept of a number base, Students should be familiar with expressing a
in particular: number’s base using a subscript as follows:
• decimal (base 10) Base 10: Number10, eg 6710
• binary (base 2) Base 2: Number2, eg 100110112
• hexadecimal (base 16).
Base 16: Number16, eg AE16
Know that the 2n different values can be For example, 3 bits can be configured in 23 = 8
represented with n bits. different ways.
000, 001, 010, 011, 100, 101, 110, 111
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 23
3.5.3.2 Units
Content Additional information
Know that quantities of bytes can be described Historically the terms kilobyte, megabyte, etc
using binary prefixes representing powers of 2 have often been used when kibibyte, mebibyte,
or using decimal prefixes representing powers etc are meant.
of 10, eg one kibibyte is written as 1KiB = 210 B
and one kilobyte is written as 1 kB = 103 B.
Know the names, symbols and corresponding
powers of 2 for the binary prefixes:
• kibi, Ki - 210
• mebi, Mi - 220
• gibi, Gi - 230
• tebi, Ti - 240
Know the names, symbols and corresponding
powers of 10 for the decimal prefixes:
• kilo, k - 103
• mega, M - 106
• giga, G - 109
• tera, T - 1012
Know the difference between unsigned binary Students are expected to be able to convert
and signed binary. between unsigned binary and decimal and vice
versa.
Be able to:
• add two unsigned binary integers
• multiply two unsigned binary integers.
24 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
Know that signed binary can be used to This is the only representation of negative
represent negative integers and that one integers that will be examined. Students are
possible coding scheme is two’s complement. expected to be able to convert between signed
binary and decimal and vice versa.
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 25
3.5.5.2 ASCII and Unicode
Content Additional information
26 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
Explain the following for bitmaps: The size of an image is also alternatively
sometimes described as the resolution of an
• resolution
image.
• colour depth
• size in pixels. Size of an image in pixels is width of image in
pixels x height of image in pixels.
Resolution is expressed as number of dots per
inch where a dot is a pixel.
Colour depth = number of bits stored for each
pixel.
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 27
3.5.6.7 Data compression
Content Additional information
3.5.6.8 Encryption
Content Additional information
Understand what is meant by encryption and be Students should be familiar with the terms
able to define it. cipher, plaintext and ciphertext.
Caesar and Vernam ciphers are at opposite
extremes. One offers perfect security, the other
doesn’t. Between these two types are ciphers
that are computationally secure – see below.
Students will be assessed on the two types.
Ciphers other than Caesar may be used to
assess students' understanding of the principles
involved. These will be explained and be similar
in terms of computational complexity.
Be familiar with Vernam cipher or one-time pad Since the key k is chosen uniformly at random,
and be able to apply it to encrypt a plaintext the ciphertext c is also distributed uniformly.
message and decrypt a ciphertext. The key k must be used once only. The key k is
known as a one-time pad.
Explain why Vernam cipher is considered as a
cypher with perfect security.
28 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
Compare Vernam cipher with ciphers that Vernam cipher is the only one to have been
depend on computational security. mathematically proved to be completely secure.
The worth of all other ciphers ever devised is
based on computational security. In theory,
every cryptographic algorithm except for
Vernam cipher can be broken, given enough
ciphertext and time.
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 29
3.6.1.4 Role of an operating system (OS)
Content Additional information
30 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
Construct truth tables for the following logic Students should know and be able to use ANSI/
gates: IEEE standard 91-1984 Distinctive shape logic
gate symbols for these logic gates.
• NOT
• AND
• OR
• XOR
• NAND
• NOR.
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 31
Content Additional information
Have an understanding and knowledge of the Although exam questions about specific
basic internal components of a computer machines will not be asked, it might be useful to
system. base this section on the machines used at the
centre.
32 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
Be able to explain the difference between von Embedded systems such as digital signal
Neumann and Harvard architectures and processing (DSP) systems use Harvard
describe where each is typically used. architecture processors extensively.
Von Neumann architecture is used extensively
in general purpose computing systems.
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 33
3.7.3.2 The Fetch-Execute cycle and the role of registers within it
Content Additional information
Know that instructions consist of an opcode and A simple model will be used in which the
one or more operands (value, memory address addressing mode will be incorporated into the
or register). bits allocated to the opcode so the latter defines
both the basic machine operation and the
addressing mode. Students will not be expected
to define opcode, only interpret opcodes in the
given context of a question.
For example, 4 bits have been allocated to the
opcode (3 bits for basic machine operation, eg
ADD, and 1 bit for the addressing mode). 4 bits
have been allocated to the operand, making the
instruction, opcode + operand, 8 bits in length.
In this example, 16 different opcodes are
possible (24 = 16).
Understand and apply immediate and direct Immediate addressing: the operand is the
addressing modes. datum.
Direct addressing: the operand is the address of
the datum. Address to be interpreted as
meaning either main memory or register.
34 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
Know the main characteristics, purposes and Devices that need to be considered are:
suitability of the devices and understand their
• barcode reader
principles of operation.
• digital camera
• laser printer
• RFID.
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 35
3.7.4.2 Secondary storage devices
Content Additional information
Know the main characteristics, purposes, SSD = NAND flash memory + a controller that
suitability and understand the principles of manages pages, and blocks and complexities of
operation of the following devices: writing. Based on floating gate transistors that
trap and store charge. A block, made up of
• hard disk
many pages, cannot overwrite pages, page has
• optical disk to be erased before it can be written to but
• solid-state disk (SSD). technology requires the whole block to be
erased. Lower latency and faster transfer
speeds than a magnetic disk drive.
36 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
Show awareness of current individual (moral), Teachers may wish to employ two very powerful
social (ethical), legal and cultural opportunities techniques, hypotheticals and case studies, to
and risks of computing. engage students in the issues.
Understand that: Hypotheticals allow students to isolate quickly
important ethical principles in an artificially
• developments in computer science and
simplified context. For example, a teacher might
the digital technologies have dramatically
ask students to explain and defend how, as a
altered the shape of communications and
Google project manager, they would evaluate a
information flows in societies, enabling
proposal to bring Google’s Street View
massive transformations in the capacity
technology to a remote African village. What
to:
questions should be asked? Who should be
• monitor behaviour consulted? What benefits, risks and safeguards
• amass and analyse personal considered? What are the trade-offs?
information
• distribute, publish, communicate and Case studies allow students to confront the
disseminate personal information. tricky interplay between the sometimes
competing ethical values and principles relevant
• computer scientists and software
in real world settings. For example, the Google
engineers therefore have power, as well
Street View case might be used to tease out the
as the responsibilities that go with it, in the
ethical conflicts between individual and cultural
algorithms that they devise and the code
expectations, the principle of informed consent,
that they deploy.
Street View’s value as a service, its potential
• software and their algorithms embed
impact on human perceptions and behaviours,
moral and cultural values.
and its commercial value to Google and its
• the issue of scale, for software the whole shareholders.
world over, creates potential for individual
computer scientists and software There are many resources available on the
engineers to produce great good, but with Internet to support teaching of this topic.
it comes the ability to cause great harm.
Be able to discuss the challenges facing
legislators in the digital age.
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 37
3.9 Fundamentals of communication and networking
3.9.1 Communication
3.9.1.1 Communication methods
Content Additional information
Define:
• baud rate
• bit rate
• bandwidth
• latency
• protocol.
Differentiate between baud rate and bit rate. Bit rate can be higher than baud rate if more
than one bit is encoded in each signal change.
Understand the relationship between bit rate Bit rate is directly proportionate to bandwidth.
and bandwidth.
38 Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration
AQA AS and A-level Computer Science . AS and A-level exams June 2016 onwards. Version 1.5 21 January 2019
3.9.2 Networking
3.9.2.1 Network topology
Content Additional information
Explain the following and describe situations In a peer-to-peer network, each computer has
where they might be used: equal status. In a client-server network, most
computers are nominated as clients and one or
• peer-to-peer networking
more as servers. The clients request services
• client-server networking. from the servers, which provide these services,
for example file server, email server.
Explain the purpose of WiFi. A wireless local area network that is based on
international standards.
Used to enable devices to connect to a network
wirelessly.
Be familiar with how wireless networks are Strong encryption of transmitted data using
secured. WPA (Wifi Protected Access)/WPA2, SSID
(Service Set Identifier) broadcast disabled,
MAC (Media Access Control) address white list.
Explain the wireless protocol Carrier Sense Knowledge of Carrier Sense Multiple Access/
Multiple Access with Collision Avoidance Collection Detection (CSMA/CD) as used in, for
(CSMA/CA) with and without Request to Send/ example, Ethernet, is not required.
Clear to Send (RTS/CTS).
Visit aqa.org.uk/7517 for the most up-to-date specification, resources, support and administration 39