AQA A Level Computer Science Paper 2 — Last-Minute Revision Guide (7517/2)
Everything you need for AQA A Level Computer Science Paper 2: data representation, computer systems, architecture, networking, databases, Big Data and functional programming — with exam phrases and a calculation appendix.
Gareth Edgell
Head of CS · Senior Examiner · 15+ years tutoring
AQA A Level Computer Science Paper 2 (7517/2) is a 2 hour 30 minute written exam worth 40% of the A Level, covering sections 14–21 of the specification: data representation, computer systems, organisation and architecture, consequences of computing, communication and networking, databases, Big Data, and functional programming.
Every question is compulsory, so you can’t skip a topic you’re unsure of. This guide compresses the whole paper into the definitions, model phrases and calculation methods that pick up marks fastest.
How to use this guide before Wednesday: first pass — learn the bold definitions and exam phrases. Second pass — cover the answer and say it aloud. Third pass — do one calculation from each section below.
1. Data Representation (Section 14)
Number systems
| Term | What to know |
|---|---|
| Bit | A single binary digit, 0 or 1 |
| Nibble | 4 bits — one hex digit |
| Byte | 8 bits |
| Binary → denary | Add the place values where the bit is 1. E.g. 10110110 = 128+32+16+4+2 = 182 |
| Denary → binary | Use the largest place value that fits, subtract, repeat. E.g. 77 = 64+8+4+1 = 01001101 |
| Binary ↔ hex | Split binary into groups of 4 from the right, convert each to one hex digit. E.g. 1101 0110 = D6 |
Common mistakes: forgetting leading zeros on 8/16-bit answers; treating A–F as letters instead of values (A=10 … F=15).
Units
- 1 byte = 8 bits
- 1 KiB = 1024 bytes, 1 MiB = 1024 KiB, 1 GiB = 1024 MiB — binary prefixes, powers of 2
- 1 kB = 1000 bytes, 1 MB = 1000 kB — decimal prefixes, powers of 10
- Read the question carefully: KiB/MiB vs kB/MB changes your answer
Two’s complement
- The most significant bit has a negative place value (in 8 bits: -128, 64, 32, 16, 8, 4, 2, 1)
- To negate: write the positive binary, invert every bit, add 1. E.g. +5 =
00000101→ invert11111010→ +1 =11111011= -5 - Overflow = result too large/small for the available bits
Floating point
- Mantissa = significant digits; exponent = how far the binary point shifts
- Normalisation maximises precision by avoiding unnecessary leading bits
- “Increasing the number of mantissa bits increases precision because more significant bits can be stored.”
- “Increasing the number of exponent bits increases range because the binary point can be shifted further.”
Characters, images and sound
- ASCII (7-bit) is mainly for English; Unicode can represent many languages and symbols — “Unicode is more suitable because it can represent a much wider range of characters, including non-English characters and symbols.”
- Bitmap image size (bits) = width × height × colour depth. E.g. 800×600 image at 24-bit colour = 800 × 600 × 24 = 11,520,000 bits = 1,440,000 bytes
- Sound file size (bits) = sample rate × bit depth × channels × duration
Compression, encryption and hashing
- Lossless restores the original exactly (program/text files); lossy permanently removes data (images/sound/video)
- Encryption is reversible with a key (symmetric = same key; asymmetric = public/private key pair). Hashing produces a fixed-length digest and is intended to be one-way — “A hash is used to check integrity because changing the original data should produce a different hash value.”
2. Computer Systems (Section 15)
- System software manages the computer (OS, utilities, translators); application software helps the user do tasks
- Operating system roles: processor management, memory management, file management, device management, user interface, security — name the specific role, don’t just say “it runs the computer”
- Compiler translates the whole program before execution (faster to run, errors reported before running); interpreter translates and executes line by line (slower, errors found during execution)
Boolean algebra
| Gate | Rule |
|---|---|
| AND | 1 only if both inputs are 1 |
| OR | 1 if at least one input is 1 |
| NOT | inverts the input |
| XOR | 1 if inputs differ |
| NAND / NOR | inverse of AND / OR |
- De Morgan’s laws: NOT(A AND B) = NOT A OR NOT B; NOT(A OR B) = NOT A AND NOT B
- Karnaugh maps: use Gray-code ordering (00, 01, 11, 10), group 1s into rectangles sized as powers of 2 (1, 2, 4, 8…), groups can wrap around edges, choose the largest groups
3. Organisation and Architecture (Section 16)
Registers — know the full names
| Register | Full name | Purpose |
|---|---|---|
| PC | Program Counter | Address of the next instruction |
| MAR | Memory Address Register | Address currently being accessed |
| MDR | Memory Data Register | Data being transferred to/from memory |
| CIR | Current Instruction Register | The instruction being decoded/executed |
| ACC | Accumulator | Results of ALU operations |
Fetch-Decode-Execute cycle
- Address in PC copied to MAR
- Instruction at that address fetched into MDR
- Instruction copied to CIR
- PC incremented
- Control unit decodes the instruction
- Instruction executed (using ALU, registers, memory or I/O as needed)
Exam tip: name the registers by their full names — AQA rewards accurate register use heavily on “describe the FDE cycle” questions.
Buses, memory and performance
- Address bus (CPU → memory, carries addresses), data bus (bidirectional, carries data/instructions), control bus (read/write/clock signals)
- “Increasing the width of the address bus allows more memory locations to be addressed.”
- “Increasing the width of the data bus allows more data to be transferred at once.”
- Virtual memory uses secondary storage as extra RAM — slower because disk access is far slower than RAM; thrashing = spending more time swapping pages than executing
- Pipelining overlaps instruction stages; parallel processing uses multiple cores/processors
RISC vs CISC
| RISC | CISC | |
|---|---|---|
| Instruction set | Small, simple | Large, complex |
| Instruction size | Fixed | Variable |
| Pipelining | Easier | Harder |
| RAM use | More (more instructions needed) | Less (one instruction does more) |
Storage
- SSD: fast, robust, no moving parts — but more expensive per GB and limited write cycles (it does have disadvantages!)
- HDD: large capacity, cheap per GB — but slower, moving parts
- Access time ≠ capacity — don’t confuse them
4. Consequences of Computing (Section 17)
This section is marked on balanced judgement, not just definitions.
Answer structure:
- Name the stakeholder (user, company, employee, government, patient, society…)
- Make a clear point — “This could improve safety because…”
- Explain the consequence — “This may reduce privacy because…”
- Give the other side of the argument
- Finish with a justified judgement if asked to evaluate
Model phrases:
- “One legal issue is data protection, because personal data must be processed fairly and securely.”
- “One ethical issue is bias, because the system may produce unfair outcomes if the training data is not representative.”
- “A benefit for the organisation is reduced cost, but this may disadvantage employees if jobs are automated.”
- “Overall, I would recommend this only if safeguards such as encryption, access controls and human review are used.”
5. Communication and Networking (Section 18)
Key terms
- Bandwidth = capacity/rate (don’t confuse with latency); latency = delay before data starts arriving
- LAN (small area), WAN (large area, third-party infrastructure), PAN (around one person)
- Client-server: central management/security, but server failure affects many clients
- Peer-to-peer: no central server, cheaper for small networks, harder to manage consistently
Packets and protocols
- A packet has a header (source, destination, sequence number), payload (the data) and sometimes a trailer (error checking)
- Packet switching: a message is split into packets that may take different routes and are reassembled at the destination — shares links efficiently and routes around failures
- Router forwards packets between networks using routing tables
The layered model
| Layer | Job | Example protocols |
|---|---|---|
| Application | Network services for applications | HTTP/HTTPS, SMTP, IMAP/POP3, DNS, FTP |
| Transport | End-to-end communication | TCP (reliable), UDP (fast, less reliable) |
| Network/Internet | Addressing and routing | IP |
| Link | Local physical network | Ethernet, Wi-Fi |
- “Layering reduces complexity because each layer only needs to interact with adjacent layers.”
- “TCP is suitable when reliability is important because packets can be acknowledged and retransmitted.”
- “UDP is suitable when low latency is more important than perfect reliability.”
Security
- Firewall filters traffic by rules; proxy server sits between client and internet (can cache/filter); VPN creates an encrypted tunnel; WPA/WPA2/WPA3 secure Wi-Fi; TLS/SSL secures communication (e.g. HTTPS)
6. Databases (Section 19)
Core vocabulary
- Entity (e.g. Student), attribute (e.g. StudentID), table/relation, record/tuple (a row), field (one item of data)
- Primary key uniquely identifies a record; foreign key links to a primary key in another table; composite key = primary key made of multiple fields
- Referential integrity: foreign key values must match an existing primary key (or be null)
Relationships
- “This is a one-to-many relationship because one customer can place many orders, but each order belongs to one customer.”
- Many-to-many relationships are resolved with a link table containing foreign keys to both original tables
Normalisation
| Stage | What it removes |
|---|---|
| 1NF | Repeating groups — values must be atomic |
| 2NF | Partial dependencies on part of a composite key |
| 3NF | Dependencies between non-key attributes |
“Normalisation reduces duplicated data and helps avoid insert, update and delete anomalies.”
SQL crash sheet
-- Basic selection
SELECT Forename, Surname
FROM Student
WHERE YearGroup = 13
ORDER BY Surname ASC;
-- Join
SELECT Student.Forename, Student.Surname, Subject.SubjectName
FROM Student
INNER JOIN SubjectChoice ON Student.StudentID = SubjectChoice.StudentID
INNER JOIN Subject ON SubjectChoice.SubjectID = Subject.SubjectID;
-- Aggregate (note: HAVING, not WHERE, after GROUP BY)
SELECT Department, COUNT(*) AS NumberOfStaff
FROM Staff
GROUP BY Department
HAVING COUNT(*) > 5;
ACID and transactions
- Atomicity — all of a transaction happens, or none of it does (“if one part of the bank transfer fails, the whole transaction is rolled back”)
- Consistency — database moves between valid states
- Isolation — concurrent transactions don’t interfere
- Durability — committed changes survive a power failure
- Record locking prevents two users editing the same data simultaneously
7. Big Data (Section 20)
The 3 (or 5) Vs: Volume (huge amounts), Velocity (arrives/changes fast), Variety (many formats), plus Veracity (quality/trust) and Value (useful insight).
- Structured data fits a predictable schema (relational tables); unstructured data doesn’t (emails, images, video, social media)
- Distributed processing/storage: work and data split across many machines because one machine isn’t enough
- MapReduce: map — process chunks in parallel; shuffle/sort — group related results; reduce — combine into a final answer (e.g. counting words across millions of documents)
- NoSQL: non-relational, useful for varied/large-scale data — “A NoSQL database may be suitable because the data is varied and does not fit neatly into fixed relational tables.”
8. Functional Programming (Section 21)
- Pure function: no side effects, same input → same output always
- Side effect: anything that changes state outside the function (global variables, file writes)
- Immutability: data can’t be changed after creation
- First-class function: can be stored in a variable, passed as an argument, returned from another function
- Higher-order function: takes a function as an argument or returns one
- Recursion: must have a base case, a recursive case, and each call must move closer to the base case
numbers = [1, 2, 3, 4]
# map: apply a function to every item
squares = list(map(lambda x: x * x, numbers)) # [1, 4, 9, 16]
# filter: keep items passing a test
evens = list(filter(lambda x: x % 2 == 0, numbers)) # [2, 4]
# reduce: combine into a single value
from functools import reduce
total = reduce(lambda a, b: a + b, numbers) # 10
- “map is suitable because the same operation must be applied to every item in the list.”
- “filter is suitable because only values meeting a condition should be kept.”
- “reduce is suitable because the list must be combined into a single value.”
Calculation cheat sheet
| Question type | Method |
|---|---|
| Binary → denary | Add place values where the bit is 1 |
| Denary → binary | Use place values largest to smallest |
| Binary → hex | Group bits in 4s from the right |
| Two’s complement negative | Negative leftmost place value, or invert + 1 |
| Image size | width × height × colour depth |
| Sound size | sample rate × bit depth × channels × duration |
| Transmission time | file size ÷ data rate (check units match!) |
| Addressable memory | 2^(number of address bits) |
Exam survival checklist
- Underline the command word: state, describe, explain, compare, evaluate, calculate
- Circle the context: school, hospital, business, network, database, image, sound, Big Data
- For explain questions, use “because” in every point
- For compare questions, write about both things in the same sentence/row
- For calculations, write the formula, substitute the numbers, then give units
- For extended answers: benefit → drawback → stakeholder → judgement
Sentence starters to fall back on: “This is because…”, “A benefit of this is…”, “A drawback is…”, “For example…”, “This would be suitable when…”
Good luck for Wednesday! For more topic-by-topic notes and practice, visit the AQA A Level Computer Science revision hub or browse the full A Level revision notes on CompSci Tutoring.