UK Schooling System · KS3 and GCSE

A-Level Computer Science Exam Structure: Papers, NEA and Grades Explained

A-Level Computer Science has two written papers and a programming project worth 20%. This guide explains what each component covers and how the NEA project works.

Duke Harewood — author of AI Tutors for Key Stage 3Updated 5 min read

On this page

Short answer

A-Level Computer Science is a two-year qualification with two substantial written examinations and a non-exam assessment (NEA) programming project. The course combines theoretical computer science — data structures, algorithms, logic — with practical programming in a high-level language, making it one of the most technically demanding A-Levels available.

At a glance

Key stage
KS3 and GCSE
Subject
Uk schooling
Type
Guide
For
Parents
Read time
5 min
Last updated
8 October 2026

Where this fits

  1. Key Stage 3Years 7–9This article
  2. GCSEYears 10–11This article
This article is relevant at Key Stage 3 (Years 7–9) and at GCSE (Years 10–11).

Method at a glance

  1. Identify a suitable real-world problem to solve
  2. Analyse the problem and write a requirements specification
  3. Design a solution (with data structures, algorithms, and a user…
  4. Implement the solution in a chosen programming language
  5. Test thoroughly using a test plan with documented evidence
  6. Evaluate the solution against the original specification
The 6 numbered steps in this article, in order.

What are the components of A-Level Computer Science?

Under the AQA specification (the most widely taught in England), A-Level Computer Science has three components.

Component Format Duration Marks Weighting
Paper 1: Computer Systems On-screen written exam 2h 30m 100 40%
Paper 2: Algorithms and Programming Written exam 2h 30m 100 40%
NEA: Programming Project Coursework Approx. 45 hours 75 20%

Papers 1 and 2 are sat in May or June of Year 13. The NEA is completed during Year 13, typically between September and February, and submitted to AQA before the written exams.

What does Paper 1 (Computer Systems) cover?

Paper 1 is delivered as an on-screen exam, allowing students to write, run, and test code as part of their answers. It covers the theory and architecture of computer systems:

  • The characteristics of contemporary processors: CPU architecture (von Neumann and Harvard), fetch-execute cycle, registers, pipelining
  • Types of software and programming languages: assembler, compilers, interpreters, OS functions, virtual machines
  • Exchanging data: compression algorithms (lossless and lossy), encryption (symmetric and asymmetric), hashing
  • Data types, data structures and algorithms: binary, hexadecimal, character encoding, arrays, linked lists, trees, graphs, stacks, queues
  • Legal, moral, cultural and ethical issues: legislation affecting computing, environmental impact, professional responsibility

Paper 1 questions include multiple-choice items, short-answer questions requiring explanation, and extended questions requiring code to be written and explained.

What does Paper 2 (Algorithms and Programming) cover?

Paper 2 is a traditional written exam. It focuses on computational thinking, algorithms, and programming concepts:

  • Elements of computational thinking: abstraction, decomposition, algorithmic thinking
  • Problem-solving and programming: data structures in practice (stacks, queues, trees), object-oriented and functional programming paradigms
  • Algorithms: searching (linear, binary), sorting (bubble, merge, quicksort), graph traversal (Dijkstra's shortest path, Bellman-Ford)
  • Regular languages: finite state machines, regular expressions, Backus-Naur Form (BNF)
  • The Turing machine and computability: decidable and undecidable problems, the Halting problem

Questions in Paper 2 include algorithm tracing, writing pseudocode, and evaluating the time complexity of algorithms (Big-O notation). Students who are confident programmers typically find Paper 2 more straightforward than Paper 1.

What is the NEA programming project?

The NEA (Non-Exam Assessment) is a substantial individual programming project completed in approximately 45 hours of supervised and unsupervised time. Students:

  1. Identify a suitable real-world problem to solve
  2. Analyse the problem and write a requirements specification
  3. Design a solution (with data structures, algorithms, and a user interface)
  4. Implement the solution in a chosen programming language
  5. Test thoroughly using a test plan with documented evidence
  6. Evaluate the solution against the original specification

The project is marked by the teacher and moderated by AQA. A good project demonstrates not just programming skill but systematic design, comprehensive testing, and honest evaluation. Students who choose a project that is too simple or too complex both risk losing marks.

How is A-Level Computer Science graded?

The final grade runs A*, A, B, C, D, E with U (ungraded). The A* requires at least 80% overall and at least 90% across Papers 1 and 2 combined (the NEA does not contribute to the A* calculation under AQA).

As a rough benchmark:

  • An A grade typically requires around 70–75% of total marks
  • A C grade typically requires around 50–55%
  • Grade boundaries are published by AQA in August each year

How does the content split across Year 12 and Year 13?

Year Typical content
Year 12 Fundamentals of programming (data types, control structures, file handling), basics of data structures, computer architecture, binary and hexadecimal
Year 13 Advanced algorithms, theory of computation, communication and networking, databases, NEA project development

The NEA is almost always completed in Year 13, but some schools begin the project scoping in the summer between Year 12 and Year 13.

Frequently asked questions

Do students need to be strong programmers before starting A-Level Computer Science?

Most schools require GCSE Computer Science (grade 6 or above) as an entry requirement. Students who have GCSE CS should already be comfortable with a language such as Python. A-Level goes considerably further — Year 12 introduces object-oriented programming, recursion, and file handling — so students who are not already confident coders will need to invest time outside lessons in the early weeks of Year 12 to build fluency.

Which programming language should students use for the NEA?

AQA does not specify a language: students may use any programming language appropriate to their project. In practice, Python is used by the large majority of students because it is taught throughout GCSE and A-Level and is well-suited to most project types. Java, C#, or C++ are acceptable alternatives and can score just as highly. Using a lower-level language does not automatically earn higher marks; the quality of the design, implementation, and evaluation matters more than the language choice.

Does A-Level Computer Science help with university computer science applications?

It is effectively essential. Almost all university computer science courses in the UK require or strongly prefer A-Level Computer Science (or equivalent). Some of the most selective courses additionally look for A-Level Mathematics, as theoretical CS draws heavily on formal logic and discrete mathematics. Students with an A in both Computer Science and Mathematics are well placed for competitive university CS courses.

How much time should a student allocate to the NEA project?

AQA suggests approximately 45 hours of project time, but the actual time varies considerably. A well-scoped, systematically approached project can be completed in 40–50 hours. Under-planned projects or those with scope-creep can consume significantly more time and still score poorly if documentation is weak. Teachers should advise on scope in September; students should expect to dedicate at least one full day or its equivalent each weekend to the NEA throughout the autumn term.


For A-Level Computer Science theory coaching, algorithm support, and NEA project guidance, visit aitutors.me.

Key terms

  • Exchanging data
  • Elements of computational thinking
  • Problem-solving and programming
  • Algorithms
  • Regular languages
  • The Turing machine

Sources