← BugBotLab

Specification coverage

Every point of each GCSE and A level computer science specification, and the BugBot lesson that teaches it. 404 lessons, each marked by the simulator, with questions that carry the same specification codes. Print this page for one sheet per board.

GCSE
A level

OCR GCSE Computer Science (J277)

26 of 26 specification sections are taught by a lesson, 100% of the specification.

SectionWhat the specification saysTaught inQuestions
1.1.1Architecture of the CPUF9.3 Hardware, software and von Neumann
F9.4 The CPU and fetch-execute
10
1.1.2CPU performanceF9.5 CPU performance
5
1.1.3Embedded systemsF9.8 Embedded systems: inside BugBot
6
1.2.1Primary storage (memory)F9.6 Memory
5
1.2.2Secondary storageF9.7 Secondary storage
5
1.2.3UnitsF8.1 Bits, bytes and units
5
1.2.4Data storageF8.2 Binary and denary
F8.3 Hexadecimal
F8.4 Binary addition, overflow and shifts
F8.6 Characters: ASCII and Unicode
F8.7 Images
F8.8 Sound
F13.5 Number and data questions
48
1.2.5CompressionF8.9 Compression
3
1.3.1Networks and topologiesF10.1 What is a network?
F10.2 Network hardware and connections
F10.3 Network performance
F10.4 Network topologies
F10.6 The internet, DNS and the cloud
24
1.3.2Wired and wireless networks, protocols and layersF10.5 Addresses and packets
F10.7 Protocols
F10.8 Layers
F10.9 Project: reliable delivery
19
1.4.1Threats to computer systems and networksF11.1 Why cyber security
F11.2 Malware
F11.3 Social engineering
F11.4 Network attacks
22
1.4.2Identifying and preventing vulnerabilitiesF11.5 Passwords and authentication
F11.6 Encryption
F11.7 Defending a network
F11.8 Writing secure programs
F11.9 Project: secure the robot
26
1.5.1Operating systemsF9.9 Operating systems and utilities
3
1.5.2Utility softwareF9.9 Operating systems and utilities
3
1.6.1Ethical, legal, cultural and environmental impactF12.1 Impacts of technology
F12.2 Personal data and privacy
F12.3 Computer misuse and the law
F12.4 Copyright and licences
F12.5 Technology and the environment
F12.6 The digital divide and accessibility
F12.7 AI, robots and bias
F12.8 Technology, jobs and daily life
F12.9 Project: an impact report
F13.6 Long answer questions
52
2.1.1Computational thinkingF4.4 Decomposition and abstraction
7
2.1.2Designing, creating and refining algorithmsF5.1 What an algorithm is
F5.2 Flowcharts
F5.3 Pseudocode and the exam reference language
F5.4 Trace tables
33
2.1.3Searching and sorting algorithmsF5.5 Linear search
F5.6 Binary search
F5.7 Bubble sort
F5.8 Insertion sort
F5.9 Merge sort and comparing algorithms
29
2.2.1Programming fundamentalsF1.1 What a program is
F1.2 Output: print
F1.6 Variables, constants and assignment
F1.7 Input from the user
F1.9 Arithmetic operators
F2.1 Blocks and indentation
F2.2 Selection: if
F2.3 else, elif and Boolean operators
F2.4 Nested selection and match
F2.5 Count-controlled loops: for
F2.6 Condition-controlled loops: while
F2.7 Loop patterns
F13.9 Project: the revision robot
101
2.2.2Data typesF1.8 Data types and casting
F3.2 Character codes and conversion
14
2.2.3Additional programming techniquesF1.3 Calling functions
F3.1 String handling
F3.3 Lists: one-dimensional arrays
F3.4 Iterating over a list
F3.5 Two-dimensional arrays
F3.6 Records
F3.7 Random numbers
F4.1 Writing functions
F4.2 Parameters and return values
F4.3 Local and global variables
F4.5 Libraries and your own modules
F7.1 Reading and writing files
F7.2 Relational databases
F7.3 SQL: SELECT
F7.4 SQL: two tables and changing data
100
2.3.1Defensive designF1.5 Comments and readable code
F6.1 Defensive design and validation
F6.2 Authentication
20
2.3.2TestingF1.4 Errors: syntax, runtime and logic
F6.3 Testing and test data
F6.4 Debugging logic errors
21
2.4.1Boolean logicF9.1 Logic gates and truth tables
F9.2 Logic circuits and expressions
18
2.5.1LanguagesF6.5 Languages and translators
6
2.5.2The Integrated Development Environment (IDE)F6.6 The IDE
4

AQA GCSE Computer Science (8525)

35 of 35 specification sections are taught by a lesson, 100% of the specification.

SectionWhat the specification saysTaught inQuestions
3.1.1Representing algorithmsF4.4 Decomposition and abstraction
F5.1 What an algorithm is
F5.2 Flowcharts
F5.3 Pseudocode and the exam reference language
F5.4 Trace tables
37
3.1.2Efficiency of algorithmsF5.9 Merge sort and comparing algorithms
4
3.1.3Searching algorithmsF5.5 Linear search
F5.6 Binary search
12
3.1.4Sorting algorithmsF5.7 Bubble sort
F5.8 Insertion sort
13
3.2.1Data typesF1.8 Data types and casting
3
3.2.2Programming conceptsF1.1 What a program is
F1.5 Comments and readable code
F1.6 Variables, constants and assignment
F2.1 Blocks and indentation
F2.4 Nested selection and match
F2.5 Count-controlled loops: for
F2.6 Condition-controlled loops: while
F2.7 Loop patterns
F13.9 Project: the revision robot
65
3.2.3Arithmetic operations in a programming languageF1.9 Arithmetic operators
12
3.2.4Relational operations in a programming languageF2.2 Selection: if
9
3.2.5Boolean operations in a programming languageF2.3 else, elif and Boolean operators
9
3.2.6Data structuresF3.3 Lists: one-dimensional arrays
F3.4 Iterating over a list
F3.5 Two-dimensional arrays
F3.6 Records
24
3.2.7Input/outputF1.2 Output: print
F1.7 Input from the user
12
3.2.8String handling operations in a programming languageF3.1 String handling
F3.2 Character codes and conversion
26
3.2.9Random number generation in a programming languageF3.7 Random numbers
5
3.2.10Structured programming and subroutines (procedures and functions)F1.3 Calling functions
F4.1 Writing functions
F4.2 Parameters and return values
F4.3 Local and global variables
F4.5 Libraries and your own modules
38
3.2.11Robust and secure programmingF1.4 Errors: syntax, runtime and logic
F6.1 Defensive design and validation
F6.2 Authentication
F6.3 Testing and test data
F6.4 Debugging logic errors
35
3.3.1Number basesF8.2 Binary and denary
1
3.3.2Converting between number basesF8.2 Binary and denary
F8.3 Hexadecimal
F13.5 Number and data questions
18
3.3.3Units of informationF8.1 Bits, bytes and units
5
3.3.4Binary arithmeticF8.4 Binary addition, overflow and shifts
5
3.3.5Character encodingF8.6 Characters: ASCII and Unicode
12
3.3.6Representing imagesF8.7 Images
7
3.3.7Representing soundF8.8 Sound
5
3.3.8Data compressionF8.9 Compression
7
3.4.1Hardware and softwareF9.3 Hardware, software and von Neumann
1
3.4.2Boolean logicF9.1 Logic gates and truth tables
F9.2 Logic circuits and expressions
12
3.4.3Software classificationF9.9 Operating systems and utilities
7
3.4.4Classification of programming languages and translatorsF6.5 Languages and translators
F6.6 The IDE
6
3.4.5Systems architectureF9.4 The CPU and fetch-execute
F9.5 CPU performance
F9.6 Memory
F9.7 Secondary storage
F9.8 Embedded systems: inside BugBot
31
3.5Fundamentals of computer networksF10.1 What is a network?
F10.2 Network hardware and connections
F10.4 Network topologies
F10.5 Addresses and packets
F10.7 Protocols
F10.8 Layers
F10.9 Project: reliable delivery
34
3.6.1Fundamentals of cyber securityF11.1 Why cyber security
5
3.6.2Cyber security threatsF11.2 Malware
F11.3 Social engineering
11
3.6.3Methods to detect and prevent cyber security threatsF11.5 Passwords and authentication
F11.6 Encryption
F11.7 Defending a network
F11.8 Writing secure programs
F11.9 Project: secure the robot
26
3.7.1Relational databasesF7.2 Relational databases
6
3.7.2Structured query language (SQL)F7.3 SQL: SELECT
F7.4 SQL: two tables and changing data
12
3.8Ethical, legal and environmental impacts of digital technology on wider society, including issues of privacyF12.1 Impacts of technology
F12.2 Personal data and privacy
F12.3 Computer misuse and the law
F12.4 Copyright and licences
F12.5 Technology and the environment
F12.6 The digital divide and accessibility
F12.7 AI, robots and bias
F12.8 Technology, jobs and daily life
F12.9 Project: an impact report
F13.6 Long answer questions
52

Pearson Edexcel GCSE Computer Science (1CP2)

66 of 66 specification sections are taught by a lesson, 100% of the specification.

SectionWhat the specification saysTaught inQuestions
1.1.1Benefits of decomposition and abstractionF4.4 Decomposition and abstraction
5
1.1.2Benefits of subprogramsF4.1 Writing functions
1.2.1Following and writing algorithmsF5.1 What an algorithm is
F5.2 Flowcharts
15
1.2.2Algorithms with variables and data structuresF5.3 Pseudocode and the exam reference language
1.2.3Algorithms with arithmetic, relational and logical operatorsF2.3 else, elif and Boolean operators
1.2.4The output of an algorithmF2.7 Loop patterns
F5.4 Trace tables
12
1.2.5Types of errorF1.4 Errors: syntax, runtime and logic
6
1.2.6Standard sorting and searching algorithmsF5.5 Linear search
F5.6 Binary search
F5.7 Bubble sort
F5.8 Insertion sort
21
1.2.7Fitness for purpose and efficiencyF5.9 Merge sort and comparing algorithms
4
1.3.1Truth tablesF9.1 Logic gates and truth tables
F9.2 Logic circuits and expressions
9
2.1.1Binary represents dataF8.1 Bits, bytes and units
1
2.1.2Unsigned and two's complement integersF8.5 Negative numbers: two's complement
4
2.1.3Denary and 8-bit binaryF8.2 Binary and denary
F13.5 Number and data questions
12
2.1.4Binary addition and shiftsF8.4 Binary addition, overflow and shifts
3
2.1.5OverflowF8.4 Binary addition, overflow and shifts
2
2.1.6HexadecimalF8.3 Hexadecimal
6
2.2.1Characters: 7-bit ASCIIF8.6 Characters: ASCII and Unicode
6
2.2.2Bitmap imagesF8.7 Images
7
2.2.3SoundF8.8 Sound
5
2.2.4Limits of binary representationF8.8 Sound
2.3.1Units of storage, in binary multiplesF8.1 Bits, bytes and units
5
2.3.2CompressionF8.9 Compression
3
3.1.1The von Neumann stored program conceptF9.3 Hardware, software and von Neumann
F9.4 The CPU and fetch-execute
F9.6 Memory
13
3.1.2Secondary storageF9.7 Secondary storage
5
3.1.3Embedded systemsF9.8 Embedded systems: inside BugBot
6
3.2.1Operating systemsF9.9 Operating systems and utilities
3
3.2.2Utility softwareF9.9 Operating systems and utilities
3
3.2.3Robust softwareF6.1 Defensive design and validation
3.3.1Low-level and high-level languagesF6.5 Languages and translators
2
3.3.2Interpreters and compilersF6.5 Languages and translators
3
4.1.1Why networksF10.1 What is a network?
1
4.1.2LAN and WANF10.1 What is a network?
2
4.1.3How the internet is structuredF10.5 Addresses and packets
F10.6 The internet, DNS and the cloud
10
4.1.4Wired and wirelessF10.2 Network hardware and connections
1
4.1.5Network speedsF10.3 Network performance
5
4.1.6ProtocolsF10.7 Protocols
F10.9 Project: reliable delivery
10
4.1.7The 4-layer TCP/IP modelF10.8 Layers
5
4.1.8TopologiesF10.4 Network topologies
6
4.2.1Network securityF11.4 Network attacks
F11.7 Defending a network
F11.9 Project: secure the robot
12
5.1.1Environmental issuesF12.1 Impacts of technology
F12.5 Technology and the environment
F12.6 The digital divide and accessibility
F12.9 Project: an impact report
F13.6 Long answer questions
28
5.2.1Personal dataF12.2 Personal data and privacy
8
5.2.2AI, machine learning and roboticsF12.7 AI, robots and bias
F12.8 Technology, jobs and daily life
6
5.2.3Intellectual propertyF12.3 Computer misuse and the law
F12.4 Copyright and licences
10
5.3.1Threats: malware and social engineeringF11.1 Why cyber security
F11.2 Malware
F11.3 Social engineering
16
5.3.2Protecting digital systemsF11.6 Encryption
F11.8 Writing secure programs
13
6.1.1Decomposition and abstraction in codeF4.4 Decomposition and abstraction
3
6.1.2Read, write, analyse and refine programsF6.4 Debugging logic errors
6.1.3Algorithms into codeF13.9 Project: the revision robot
13
6.1.4Readable codeF1.5 Comments and readable code
6
6.1.5Finding and correcting errorsF6.4 Debugging logic errors
F6.6 The IDE
5
6.1.6Test data and evaluationF6.3 Testing and test data
10
6.2.1Structural components of programsF2.1 Blocks and indentation
7
6.2.2Sequence, selection, repetition and iterationF1.1 What a program is
F2.4 Nested selection and match
F2.5 Count-controlled loops: for
F2.6 Condition-controlled loops: while
F3.4 Iterating over a list
43
6.3.1Primitive and structured data typesF1.8 Data types and casting
F3.3 Lists: one-dimensional arrays
F3.5 Two-dimensional arrays
F3.6 Records
25
6.3.2Variables and constantsF1.6 Variables, constants and assignment
8
6.3.3String manipulationF3.1 String handling
F3.2 Character codes and conversion
21
6.4.1Responding to user inputF1.2 Output: print
F1.7 Input from the user
12
6.4.2Reading and writing CSV filesF7.1 Reading and writing files
9
6.4.3ValidationF6.1 Defensive design and validation
8
6.4.4AuthenticationF6.2 Authentication
F11.5 Passwords and authentication
13
6.5.1Arithmetic operatorsF1.9 Arithmetic operators
12
6.5.2Relational operatorsF2.2 Selection: if
9
6.5.3Logical operatorsF2.3 else, elif and Boolean operators
9
6.6.1Built-in, library and user-devised subprogramsF1.3 Calling functions
F3.7 Random numbers
F4.5 Libraries and your own modules
19
6.6.2Writing functions and proceduresF4.1 Writing functions
F4.2 Parameters and return values
15
6.6.3Local and global variablesF4.3 Local and global variables
6

OCR A Level Computer Science (H446)

24 of 24 specification sections are taught by a lesson, 100% of the specification.

SectionWhat the specification saysTaught inQuestions
1.1.1Structure and function of the processorA9.1 Hardware, software and the stored program
A9.2 The processor and its registers
A9.3 The fetch-decode-execute cycle in detail
A9.8 Performance, pipelining and parallel processors
A9.10 Project: a processor of your own
19
1.1.2Types of processorA9.8 Performance, pipelining and parallel processors
3
1.1.3Input, output and storageA9.9 Input, output and storage
3
1.2.1Systems SoftwareA9.7 Interrupts
A10.2 The operating system, BIOS and device drivers
A10.3 Memory management: paging, segmentation and virtual memory
A10.4 Interrupts
A10.5 Scheduling algorithms
A10.6 Types of operating system and virtual machines
A10.9 Project: a tiny robot operating system
34
1.2.2Applications GenerationA10.1 Classifying software
A10.7 Programming languages and translators
A10.8 Stages of compilation, linkers and loaders
13
1.2.3Software DevelopmentA14.1 The systems lifecycle and feasibility
A14.2 Development methodologies
A14.3 Analysis: requirements and success criteria
A14.4 System design
A14.5 Testing strategies
A14.6 Software engineering tools and version control
A14.9 Project: the delivery robot
16
1.2.4Types of Programming LanguageA1.6 Programming paradigms and procedural programming
A1.7 Classes and objects
A1.8 Inheritance, polymorphism and overriding
A1.9 Aggregation, composition and class diagrams
A1.10 Project: the behaviour controller
A9.4 Instruction sets and addressing modes
A9.5 Assembly language: the Little Man Computer
A9.6 AQA assembly language and bitwise operations
A9.10 Project: a processor of your own
A10.7 Programming languages and translators
A13.1 The functional paradigm
25
1.3.1Compression, Encryption and HashingA7.9 Compression, encryption and hashing
A7.10 Project: a secure sensor packet
4
1.3.2DatabasesA11.1 Data models and entity relationships
A11.2 Relational databases and keys
A11.3 Normalisation to third normal form
A11.4 SQL: defining tables and joining them
A11.5 SQL: changing data and referential integrity
A11.6 Transactions and ACID
A11.7 Client server databases and concurrent access
A11.8 Capturing, managing and exchanging data
A11.10 Project: the run database
50
1.3.3NetworksA12.1 Communication methods
A12.2 Topologies and wireless networks
A12.3 How the Internet works
A12.4 The TCP/IP stack and protocols
A12.7 Internet security
A12.8 Client server, REST and thin clients
A12.10 Project: a reliable link
21
1.3.4Web TechnologiesA12.9 Web technologies and search
6
1.4.1Data TypesA7.1 Number sets, bases and units
A7.2 Binary arithmetic and signed integers
A7.3 Fixed point and floating point
A7.4 Errors, range and precision
A7.5 Bitwise operations and characters
A7.10 Project: a secure sensor packet
A15.7 Calculation and theory questions
27
1.4.2Data StructuresA3.1 Arrays, records and tuples
A3.2 Abstract data types and stacks
A3.3 Queues: linear, circular and priority
A3.4 Linked lists
A3.5 Hash tables
A3.6 Dictionaries
A3.9 Project: mission control
A4.1 Graphs
A4.2 Adjacency matrix and adjacency list
A4.5 Trees
A4.6 Binary search trees
A4.8 Project: plan the route
62
1.4.3Boolean AlgebraA8.1 Logic gates and notation
A8.2 Circuits, expressions and truth tables
A8.3 Boolean identities and laws
A8.4 De Morgan's laws
A8.5 Simplifying expressions
A8.6 Karnaugh maps
A8.7 Half adders and full adders
A8.8 D-type flip-flops and clocks
A8.9 Project: the robot's safety logic
A15.7 Calculation and theory questions
50
1.5.1Computing related legislationA14.7 Computing legislation
6
1.5.2Moral and ethical IssuesA14.8 Moral, ethical, social and cultural issues
5
2.1.1Thinking abstractlyA2.4 Abstraction and models
A2.5 Procedural, functional and data abstraction
A2.10 Project: out of the dead end
8
2.1.2Thinking aheadA2.7 Thinking ahead and thinking logically
A2.10 Project: out of the dead end
5
2.1.3Thinking procedurallyA2.6 Decomposition, composition and automation
A2.10 Project: out of the dead end
2
2.1.4Thinking logicallyA2.7 Thinking ahead and thinking logically
A2.10 Project: out of the dead end
1
2.1.5Thinking concurrentlyA2.8 Thinking concurrently
4
2.2.1Programming techniquesA1.1 Data types and programming constructs
A1.4 Subroutines, parameters and passing by reference
A1.5 Scope, lifetime and debugging in an IDE
A1.7 Classes and objects
A1.8 Inheritance, polymorphism and overriding
A1.10 Project: the behaviour controller
A2.1 Stack frames and the call stack
A2.2 Recursion
A2.3 Recursion versus iteration
A15.1 How your A level is assessed
A15.2 Command words and levels of response
A15.3 Trace tables and hand-tracing
A15.4 Pseudocode in the exam languages
A15.5 Writing algorithms and code in the exam
A15.6 Pre-release material and skeleton programs
A15.8 A revision plan and mixed practice
53
2.2.2Computational methodsA2.6 Decomposition, composition and automation
A2.8 Thinking concurrently
A2.9 Computational methods
A2.10 Project: out of the dead end
10
2.3.1AlgorithmsA4.3 Depth-first traversal
A4.4 Breadth-first traversal
A4.7 Tree traversals
A4.8 Project: plan the route
A5.1 Comparing algorithms
A5.2 Big O notation
A5.3 Linear and binary search
A5.4 Bubble sort and insertion sort
A5.5 Merge sort
A5.6 Quick sort
A5.7 Dijkstra's shortest path algorithm
A5.8 A* search
A5.9 Project: plan the route, then drive it
A6.6 Reverse Polish notation
A6.7 Limits of computation: tractable and intractable problems
A15.1 How your A level is assessed
A15.3 Trace tables and hand-tracing
A15.5 Writing algorithms and code in the exam
A15.7 Calculation and theory questions
A15.8 A revision plan and mixed practice
97

AQA A-level Computer Science (7517)

151 of 151 specification sections are taught by a lesson, 100% of the specification.

SectionWhat the specification saysTaught inQuestions
4.1.1.1Data typesA1.1 Data types and programming constructs
3
4.1.1.2Programming conceptsA1.1 Data types and programming constructs
A1.10 Project: the behaviour controller
2
4.1.1.3Arithmetic operations in a programming languageA1.2 Operations, strings and random numbers
3
4.1.1.4Relational operations in a programming languageA1.2 Operations, strings and random numbers
4.1.1.5Boolean operations in a programming languageA1.2 Operations, strings and random numbers
1
4.1.1.6Constants and variables in a programming languageA1.1 Data types and programming constructs
A1.10 Project: the behaviour controller
1
4.1.1.7String-handling operations in a programming languageA1.2 Operations, strings and random numbers
1
4.1.1.8Random number generation in a programming languageA1.2 Operations, strings and random numbers
1
4.1.1.9Exception handlingA1.3 Exception handling
A1.10 Project: the behaviour controller
7
4.1.1.10Subroutines (procedures/functions)A1.4 Subroutines, parameters and passing by reference
A1.10 Project: the behaviour controller
1
4.1.1.11Parameters of subroutinesA1.4 Subroutines, parameters and passing by reference
A1.10 Project: the behaviour controller
3
4.1.1.12Returning a value/values from a subroutineA1.4 Subroutines, parameters and passing by reference
1
4.1.1.13Local variables in subroutinesA1.5 Scope, lifetime and debugging in an IDE
A1.10 Project: the behaviour controller
2
4.1.1.14Global variables in a programming languageA1.5 Scope, lifetime and debugging in an IDE
2
4.1.1.15Role of stack frames in subroutine callsA2.1 Stack frames and the call stack
A2.3 Recursion versus iteration
A2.10 Project: out of the dead end
6
4.1.1.16Recursive techniquesA2.2 Recursion
A2.3 Recursion versus iteration
A2.10 Project: out of the dead end
13
4.1.2.1Programming paradigmsA1.6 Programming paradigms and procedural programming
A1.10 Project: the behaviour controller
1
4.1.2.2Procedural-oriented programmingA1.6 Programming paradigms and procedural programming
3
4.1.2.3Object-oriented programmingA1.7 Classes and objects
A1.8 Inheritance, polymorphism and overriding
A1.9 Aggregation, composition and class diagrams
A1.10 Project: the behaviour controller
18
4.2.1.1Data structuresA3.1 Arrays, records and tuples
A3.9 Project: mission control
4.2.1.2Single- and multi-dimensional arrays (or equivalent)A3.1 Arrays, records and tuples
5
4.2.1.3Fields, records and filesA3.1 Arrays, records and tuples
A3.8 Fields, records and file organisation
3
4.2.1.4Abstract data types/data structuresA3.2 Abstract data types and stacks
A3.3 Queues: linear, circular and priority
A3.4 Linked lists
A3.5 Hash tables
A3.6 Dictionaries
A3.7 Vectors
A3.9 Project: mission control
5
4.2.2.1QueuesA3.3 Queues: linear, circular and priority
7
4.2.3.1StacksA3.2 Abstract data types and stacks
6
4.2.4.1GraphsA4.1 Graphs
A4.2 Adjacency matrix and adjacency list
A4.8 Project: plan the route
15
4.2.5.1Trees (including binary trees)A4.5 Trees
A4.6 Binary search trees
A4.8 Project: plan the route
13
4.2.6.1Hash tablesA3.5 Hash tables
6
4.2.7.1DictionariesA3.6 Dictionaries
6
4.2.8.1VectorsA3.7 Vectors
7
4.3.1.1Simple graph-traversal algorithmsA4.3 Depth-first traversal
A4.4 Breadth-first traversal
A4.8 Project: plan the route
15
4.3.2.1Simple tree-traversal algorithmsA4.7 Tree traversals
6
4.3.3.1Reverse Polish - infix transformationsA6.6 Reverse Polish notation
6
4.3.4.1Linear searchA5.3 Linear and binary search
2
4.3.4.2Binary searchA5.3 Linear and binary search
5
4.3.4.3Binary tree searchA4.6 Binary search trees
6
4.3.5.1Bubble sortA5.4 Bubble sort and insertion sort
4
4.3.5.2Merge sortA5.5 Merge sort
5
4.3.6.1Dijkstra's shortest path algorithmA5.7 Dijkstra's shortest path algorithm
A5.9 Project: plan the route, then drive it
8
4.4.1.1Problem-solvingA2.7 Thinking ahead and thinking logically
A2.9 Computational methods
1
4.4.1.2Following and writing algorithmsA2.7 Thinking ahead and thinking logically
A15.1 How your A level is assessed
A15.2 Command words and levels of response
A15.3 Trace tables and hand-tracing
A15.4 Pseudocode in the exam languages
A15.5 Writing algorithms and code in the exam
A15.6 Pre-release material and skeleton programs
A15.7 Calculation and theory questions
A15.8 A revision plan and mixed practice
34
4.4.1.3AbstractionA2.4 Abstraction and models
A2.10 Project: out of the dead end
6
4.4.1.4Information hidingA2.5 Procedural, functional and data abstraction
2
4.4.1.5Procedural abstractionA2.5 Procedural, functional and data abstraction
1
4.4.1.6Functional abstractionA2.5 Procedural, functional and data abstraction
1
4.4.1.7Data abstractionA2.5 Procedural, functional and data abstraction
2
4.4.1.8Problem abstraction/reductionA2.4 Abstraction and models
A2.9 Computational methods
1
4.4.1.9DecompositionA2.6 Decomposition, composition and automation
A2.10 Project: out of the dead end
1
4.4.1.10CompositionA2.6 Decomposition, composition and automation
2
4.4.1.11AutomationA2.6 Decomposition, composition and automation
A2.10 Project: out of the dead end
1
4.4.2.1Finite state machines (FSMs) with and without outputA6.1 Finite state machines
A6.2 Mealy machines: FSMs with output
A6.10 Project: the mission robot
A15.7 Calculation and theory questions
11
4.4.2.2Maths for regular expressionsA6.3 Sets
A6.10 Project: the mission robot
7
4.4.2.3Regular expressionsA6.4 Regular expressions and regular languages
6
4.4.2.4Regular languageA6.4 Regular expressions and regular languages
A6.10 Project: the mission robot
3
4.4.3.1Backus-Naur Form (BNF)/syntax diagramsA6.5 Backus-Naur Form and syntax diagrams
A6.10 Project: the mission robot
7
4.4.4.1Comparing algorithmsA5.1 Comparing algorithms
A5.2 Big O notation
A5.9 Project: plan the route, then drive it
4
4.4.4.2Maths for understanding Big-0 notationA5.1 Comparing algorithms
5
4.4.4.3Order of complexityA5.2 Big O notation
A5.9 Project: plan the route, then drive it
A15.7 Calculation and theory questions
8
4.4.4.4Limits of computationA6.7 Limits of computation: tractable and intractable problems
2
4.4.4.5Classification of algorithmic problemsA6.7 Limits of computation: tractable and intractable problems
A6.10 Project: the mission robot
5
4.4.4.6Computable and non-computable problemsA6.8 Computable problems and the Halting problem
4
4.4.4.7Halting problemA6.8 Computable problems and the Halting problem
A6.10 Project: the mission robot
5
4.4.5.1Turing machineA6.9 Turing machines
6
4.5.1.1Natural numbersA7.1 Number sets, bases and units
1
4.5.1.2Integer numbersA7.1 Number sets, bases and units
1
4.5.1.3Rational numbersA7.1 Number sets, bases and units
2
4.5.1.4Irrational numbersA7.1 Number sets, bases and units
1
4.5.1.5Real numbersA7.1 Number sets, bases and units
1
4.5.1.6Ordinal numbersA7.1 Number sets, bases and units
1
4.5.1.7Counting and measurementA7.1 Number sets, bases and units
1
4.5.2.1Number baseA7.1 Number sets, bases and units
A7.2 Binary arithmetic and signed integers
2
4.5.3.1Bits and bytesA7.1 Number sets, bases and units
1
4.5.3.2UnitsA7.1 Number sets, bases and units
1
4.5.4.1Unsigned binaryA7.2 Binary arithmetic and signed integers
1
4.5.4.2Unsigned binary arithmeticA7.2 Binary arithmetic and signed integers
2
4.5.4.3Signed binary using two's complementA7.2 Binary arithmetic and signed integers
A15.7 Calculation and theory questions
5
4.5.4.4Numbers with a fractional partA7.3 Fixed point and floating point
A7.10 Project: a secure sensor packet
4
4.5.4.5Rounding errorsA7.4 Errors, range and precision
2
4.5.4.6Absolute and relative errorsA7.4 Errors, range and precision
2
4.5.4.7Range and precisionA7.4 Errors, range and precision
A7.10 Project: a secure sensor packet
2
4.5.4.8Normalisation of floating point formA7.3 Fixed point and floating point
A15.7 Calculation and theory questions
5
4.5.4.9Underflow and overflowA7.4 Errors, range and precision
1
4.5.5.1Character form of a decimal digitA7.5 Bitwise operations and characters
1
4.5.5.2ASCII and UnicodeA7.5 Bitwise operations and characters
2
4.5.5.3Error checking and correctionA7.6 Error checking and correction
A7.10 Project: a secure sensor packet
8
4.5.6.1Bit patterns, images, sound and other dataA7.7 Analogue, digital and graphics
1
4.5.6.2Analogue and digitalA7.7 Analogue, digital and graphics
1
4.5.6.3Analogue/digital conversionA7.7 Analogue, digital and graphics
2
4.5.6.4Bitmapped graphicsA7.7 Analogue, digital and graphics
1
4.5.6.5Vector graphicsA7.7 Analogue, digital and graphics
2
4.5.6.6Vector graphics versus bitmapped graphicsA7.7 Analogue, digital and graphics
1
4.5.6.7Digital representation of soundA7.8 Sound and MIDI
3
4.5.6.8Musical Instrument Digital Interface (MIDI)A7.8 Sound and MIDI
3
4.5.6.9Data compressionA7.9 Compression, encryption and hashing
2
4.5.6.10EncryptionA7.9 Compression, encryption and hashing
A7.10 Project: a secure sensor packet
3
4.6.1.1Relationship between hardware and softwareA9.1 Hardware, software and the stored program
1
4.6.1.2Classification of softwareA10.1 Classifying software
3
4.6.1.3System softwareA10.1 Classifying software
A10.8 Stages of compilation, linkers and loaders
3
4.6.1.4Role of an operating system (OS)A10.2 The operating system, BIOS and device drivers
A10.3 Memory management: paging, segmentation and virtual memory
A10.4 Interrupts
A10.5 Scheduling algorithms
A10.9 Project: a tiny robot operating system
5
4.6.2.1Classification of programming languagesA10.7 Programming languages and translators
2
4.6.3.1Types of program translatorA10.6 Types of operating system and virtual machines
A10.7 Programming languages and translators
5
4.6.4.1Logic gatesA8.1 Logic gates and notation
A8.2 Circuits, expressions and truth tables
A8.7 Half adders and full adders
A8.8 D-type flip-flops and clocks
A8.9 Project: the robot's safety logic
26
4.6.5.1Using Boolean algebraA8.3 Boolean identities and laws
A8.4 De Morgan's laws
A8.5 Simplifying expressions
A8.6 Karnaugh maps
A8.9 Project: the robot's safety logic
23
4.7.1.1Internal hardware components of a computerA9.1 Hardware, software and the stored program
A9.10 Project: a processor of your own
5
4.7.2.1The meaning of the stored program conceptA9.1 Hardware, software and the stored program
1
4.7.3.1The processor and its componentsA9.2 The processor and its registers
5
4.7.3.2The Fetch-Execute cycle and the role of registers within itA9.3 The fetch-decode-execute cycle in detail
A9.10 Project: a processor of your own
7
4.7.3.3The processor instruction setA9.4 Instruction sets and addressing modes
3
4.7.3.4Addressing modesA9.4 Instruction sets and addressing modes
4
4.7.3.5Machine-code/assembly language operationsA9.5 Assembly language: the Little Man Computer
A9.6 AQA assembly language and bitwise operations
A9.10 Project: a processor of your own
9
4.7.3.6InterruptsA9.7 Interrupts
5
4.7.3.7Factors affecting processor performanceA9.8 Performance, pipelining and parallel processors
3
4.7.4.1Input and output devicesA9.9 Input, output and storage
2
4.7.4.2Secondary storage devicesA9.9 Input, output and storage
3
4.8.1Individual (moral), social (ethical), legal and cultural issues and opportunitiesA14.7 Computing legislation
A14.8 Moral, ethical, social and cultural issues
11
4.9.1.1Communication methodsA12.1 Communication methods
2
4.9.1.2Communication basicsA12.1 Communication methods
3
4.9.2.1Network topologyA12.2 Topologies and wireless networks
2
4.9.2.2Types of networking between hostsA12.8 Client server, REST and thin clients
1
4.9.2.3Wireless networkingA12.2 Topologies and wireless networks
4
4.9.3.1The Internet and how it worksA12.3 How the Internet works
A12.10 Project: a reliable link
6
4.9.3.2Internet securityA12.7 Internet security
6
4.9.4.1TCP/IPA12.4 The TCP/IP stack and protocols
A12.10 Project: a reliable link
9
4.9.4.2Standard application layer protocolsA12.4 The TCP/IP stack and protocols
2
4.9.4.3IP address structureA12.5 IP addresses and subnets
2
4.9.4.4Subnet maskingA12.5 IP addresses and subnets
4
4.9.4.5IP standardsA12.5 IP addresses and subnets
1
4.9.4.6Public and private IP addressesA12.5 IP addresses and subnets
1
4.9.4.7Dynamic Host Configuration Protocol (DHCP)A12.6 DHCP, NAT and port forwarding
2
4.9.4.8Network Address Translation (NAT)A12.6 DHCP, NAT and port forwarding
3
4.9.4.9Port forwardingA12.6 DHCP, NAT and port forwarding
1
4.9.4.10Client server modelA11.8 Capturing, managing and exchanging data
A12.8 Client server, REST and thin clients
6
4.9.4.11Thin- versus thick-client computingA12.8 Client server, REST and thin clients
1
4.10.1Conceptual data models and entity relationship modellingA11.1 Data models and entity relationships
A11.10 Project: the run database
7
4.10.2Relational databasesA11.2 Relational databases and keys
A11.5 SQL: changing data and referential integrity
5
4.10.3Database design and normalisation techniquesA11.3 Normalisation to third normal form
A11.10 Project: the run database
8
4.10.4Structured Query Language (SQL)A11.4 SQL: defining tables and joining them
A11.5 SQL: changing data and referential integrity
A11.10 Project: the run database
14
4.10.5Client server databasesA11.6 Transactions and ACID
A11.7 Client server databases and concurrent access
11
4.11.1Big DataA11.9 Big data
A13.7 Functional programming and big data
13
4.12.1.1Function typeA13.2 Function types and function application
A13.8 Project: the way out
5
4.12.1.2First-class objectA13.3 First-class objects and higher-order functions
A13.8 Project: the way out
3
4.12.1.3Function applicationA13.2 Function types and function application
A13.8 Project: the way out
3
4.12.1.4Partial function applicationA13.4 Partial application and composition
A13.8 Project: the way out
3
4.12.1.5Composition of functionsA13.4 Partial application and composition
A13.8 Project: the way out
6
4.12.2.1Functional language programsA13.1 The functional paradigm
A13.3 First-class objects and higher-order functions
A13.5 Map, filter and fold
A13.8 Project: the way out
19
4.12.3.1List processingA13.6 List processing
A13.8 Project: the way out
6
4.13.1.1AnalysisA14.1 The systems lifecycle and feasibility
A14.2 Development methodologies
A14.3 Analysis: requirements and success criteria
A14.9 Project: the delivery robot
11
4.13.1.2DesignA14.2 Development methodologies
A14.4 System design
A14.9 Project: the delivery robot
6
4.13.1.3ImplementationA14.2 Development methodologies
A14.6 Software engineering tools and version control
A14.9 Project: the delivery robot
6
4.13.1.4TestingA14.5 Testing strategies
A14.9 Project: the delivery robot
11
4.13.1.5EvaluationA14.1 The systems lifecycle and feasibility
A14.9 Project: the delivery robot
11

WJEC Eduqas A Level Computer Science (A500QS)

16 of 16 specification sections are taught by a lesson, 100% of the specification.

SectionWhat the specification saysTaught inQuestions
1.1Data structuresA3.1 Arrays, records and tuples
A3.2 Abstract data types and stacks
A3.3 Queues: linear, circular and priority
A3.4 Linked lists
A3.5 Hash tables
A3.6 Dictionaries
A3.9 Project: mission control
A4.1 Graphs
A4.2 Adjacency matrix and adjacency list
A4.5 Trees
A4.6 Binary search trees
A4.7 Tree traversals
A4.8 Project: plan the route
66
1.2Logical operationsA8.1 Logic gates and notation
A8.2 Circuits, expressions and truth tables
A8.3 Boolean identities and laws
A8.4 De Morgan's laws
A8.5 Simplifying expressions
A8.6 Karnaugh maps
A8.9 Project: the robot's safety logic
33
1.3Algorithms and programsA2.2 Recursion
A2.3 Recursion versus iteration
A2.9 Computational methods
A2.10 Project: out of the dead end
A5.1 Comparing algorithms
A5.2 Big O notation
A5.3 Linear and binary search
A5.4 Bubble sort and insertion sort
A5.5 Merge sort
A5.6 Quick sort
A5.7 Dijkstra's shortest path algorithm
A5.9 Project: plan the route, then drive it
50
1.4Principles of programmingA1.1 Data types and programming constructs
A1.2 Operations, strings and random numbers
A1.4 Subroutines, parameters and passing by reference
A1.6 Programming paradigms and procedural programming
A1.7 Classes and objects
A1.8 Inheritance, polymorphism and overriding
A1.9 Aggregation, composition and class diagrams
A1.10 Project: the behaviour controller
A13.1 The functional paradigm
A13.3 First-class objects and higher-order functions
A13.4 Partial application and composition
A13.5 Map, filter and fold
A13.6 List processing
A13.7 Functional programming and big data
A13.8 Project: the way out
16
1.5Systems analysisA14.1 The systems lifecycle and feasibility
A14.2 Development methodologies
A14.3 Analysis: requirements and success criteria
A14.9 Project: the delivery robot
21
1.6System designA14.4 System design
A14.9 Project: the delivery robot
6
1.7Software engineeringA14.5 Testing strategies
A14.6 Software engineering tools and version control
A14.9 Project: the delivery robot
12
1.8Program constructionA1.5 Scope, lifetime and debugging in an IDE
A1.10 Project: the behaviour controller
A6.5 Backus-Naur Form and syntax diagrams
A10.7 Programming languages and translators
A10.8 Stages of compilation, linkers and loaders
A15.1 How your A level is assessed
A15.2 Command words and levels of response
A15.3 Trace tables and hand-tracing
A15.4 Pseudocode in the exam languages
A15.5 Writing algorithms and code in the exam
A15.6 Pre-release material and skeleton programs
A15.7 Calculation and theory questions
A15.8 A revision plan and mixed practice
25
2.1Hardware and communicationA9.1 Hardware, software and the stored program
A9.2 The processor and its registers
A9.3 The fetch-decode-execute cycle in detail
A9.4 Instruction sets and addressing modes
A9.8 Performance, pipelining and parallel processors
A9.9 Input, output and storage
A9.10 Project: a processor of your own
A12.2 Topologies and wireless networks
17
2.2Data transmissionA12.1 Communication methods
A12.3 How the Internet works
A12.4 The TCP/IP stack and protocols
A12.10 Project: a reliable link
7
2.3Data representation and data typesA7.1 Number sets, bases and units
A7.2 Binary arithmetic and signed integers
A7.3 Fixed point and floating point
A7.4 Errors, range and precision
A7.5 Bitwise operations and characters
A7.7 Analogue, digital and graphics
A7.8 Sound and MIDI
A7.10 Project: a secure sensor packet
6
2.4Organisation and structure of dataA3.8 Fields, records and file organisation
A11.2 Relational databases and keys
A11.8 Capturing, managing and exchanging data
11
2.5Databases and distributed systemsA11.1 Data models and entity relationships
A11.2 Relational databases and keys
A11.3 Normalisation to third normal form
A11.4 SQL: defining tables and joining them
A11.5 SQL: changing data and referential integrity
A11.6 Transactions and ACID
A11.7 Client server databases and concurrent access
A11.9 Big data
A11.10 Project: the run database
A12.8 Client server, REST and thin clients
38
2.6The operating systemA10.2 The operating system, BIOS and device drivers
A10.3 Memory management: paging, segmentation and virtual memory
A10.4 Interrupts
A10.5 Scheduling algorithms
A10.9 Project: a tiny robot operating system
13
2.7The need for different types of software systems and their attributesA10.1 Classifying software
A10.6 Types of operating system and virtual machines
7
2.8Data security and integrity processesA7.6 Error checking and correction
A7.10 Project: a secure sensor packet
2