| 1.1.1 | Structure and function of the processor | A9.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 |
| 1.1.2 | Types of processor | A9.8 Performance, pipelining and parallel processors |
| 1.1.3 | Input, output and storage | A9.9 Input, output and storage |
| 1.2.1 | Systems Software | A9.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 |
| 1.2.2 | Applications Generation | A10.1 Classifying software, A10.7 Programming languages and translators, A10.8 Stages of compilation, linkers and loaders |
| 1.2.3 | Software Development | A14.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 |
| 1.2.4 | Types of Programming Language | 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, 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 |
| 1.3.1 | Compression, Encryption and Hashing | A7.9 Compression, encryption and hashing, A7.10 Project: a secure sensor packet |
| 1.3.2 | Databases | A11.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 |
| 1.3.3 | Networks | A12.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 |
| 1.3.4 | Web Technologies | A12.9 Web technologies and search |
| 1.4.1 | Data Types | A7.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 |
| 1.4.2 | Data Structures | A3.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 |
| 1.4.3 | Boolean Algebra | A8.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 |
| 1.5.1 | Computing related legislation | A14.7 Computing legislation |
| 1.5.2 | Moral and ethical Issues | A14.8 Moral, ethical, social and cultural issues |
| 2.1.1 | Thinking abstractly | A2.4 Abstraction and models, A2.5 Procedural, functional and data abstraction, A2.10 Project: out of the dead end |
| 2.1.2 | Thinking ahead | A2.7 Thinking ahead and thinking logically, A2.10 Project: out of the dead end |
| 2.1.3 | Thinking procedurally | A2.6 Decomposition, composition and automation, A2.10 Project: out of the dead end |
| 2.1.4 | Thinking logically | A2.7 Thinking ahead and thinking logically, A2.10 Project: out of the dead end |
| 2.1.5 | Thinking concurrently | A2.8 Thinking concurrently |
| 2.2.1 | Programming techniques | A1.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 |
| 2.2.2 | Computational methods | A2.6 Decomposition, composition and automation, A2.8 Thinking concurrently, A2.9 Computational methods, A2.10 Project: out of the dead end |
| 2.3.1 | Algorithms | A4.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 |