Skip to topic
    ← Back to course topics

    Non-exam assessment - the computing practical project — AQA A-Level Computer Science

    Test yourself on Non-exam assessment - the computing practical project with AQA A-Level practice questions.

    Start free

    7 days Premium · Then free forever · No card, no charge

    Non-exam assessment - the computing practical project explained

    The non-exam assessment (NEA) is a computing practical project that allows A-level students to independently solve a realistic problem or conduct an investigation.

    Read the full explanation

    It serves as both a learning experience and an assessment, requiring students to apply a systematic approach to problem solving across five key stages: analysis, design, technical solution, testing, and evaluation.

    What to demonstrate

    1. Analysis (9 marks): Scoping, requirements documentation, and measurable specific objectives.
    2. Documented design (12 marks): Articulation of the solution structure and reliance on external libraries or frameworks.
    3. Technical solution (42 marks): Completeness of the solution and demonstration of technical skills (algorithms, data models, coding style).
    Show all 5 objectives
    1. Testing (8 marks): Evidence of thorough testing using representative samples (normal, boundary, erroneous data).
    2. Evaluation (4 marks): Assessment of how well the outcome meets requirements, independent feedback, and discussion of potential improvements.

    Non-exam assessment - the computing practical project exam tips

    Topic Overview

    The non-exam assessment (NEA) for AQA A-Level Computer Science is a substantial programming project that accounts for 20% of your final grade. You must develop a complete software solution to a problem of your choice, applying the systematic approach of analysis, design, implementation, testing, and evaluation. This project is your opportunity to demonstrate creativity, technical skill, and the ability to manage a complex task independently. It mirrors real-world software development, where you identify a user's needs, design a solution, write code, and reflect on your work.

    The NEA is divided into five sections: Analysis, Design, Implementation, Testing, and Evaluation. In Analysis, you define the problem, identify stakeholders, and gather requirements. Design involves planning the system architecture, algorithms, data structures, and user interface. Implementation is where you write the code, using a programming language of your choice (e.g., Python, Java, C#). Testing requires you to create a test plan, execute tests, and fix bugs. Finally, Evaluation asks you to assess your solution against the original requirements and suggest improvements. Each section is equally important; examiners look for a clear, logical progression and evidence of refinement.

    This project is not just about coding; it's about the entire development lifecycle. You must show that you can think like a software engineer: breaking down a problem, designing a solution, and justifying your decisions. The NEA also prepares you for university or industry, where project management and documentation are key. To succeed, choose a problem that genuinely interests you and is complex enough to demonstrate high-level skills, such as using databases, APIs, or advanced algorithms. Avoid over-ambitious projects; a well-executed moderate project scores higher than a poorly finished complex one.

    Key Concepts
    • →Systematic approach: Follow the project lifecycle (Analysis, Design, Implementation, Testing, Evaluation) in order, but be prepared to iterate as you refine your solution.
    • →Requirements specification: Clearly define functional and non-functional requirements, using techniques like user stories, use cases, or MoSCoW prioritisation.
    • →Algorithm design and data structures: Plan efficient algorithms (e.g., sorting, searching) and choose appropriate data structures (e.g., arrays, lists, dictionaries, trees) to solve the problem.
    • →Testing methodology: Create a comprehensive test plan covering normal, boundary, and erroneous data. Use black-box and white-box testing, and document test results with screenshots.
    • →Evaluation against objectives: Assess your solution against the original success criteria, discussing strengths, weaknesses, and potential improvements. Reflect on the development process and lessons learned.
    Marking Points
    • Analysis (9 marks): Scoping, requirements documentation, and measurable specific objectives.
    • Documented design (12 marks): Articulation of the solution structure and reliance on external libraries or frameworks.
    • Technical solution (42 marks): Completeness of the solution and demonstration of technical skills (algorithms, data models, coding style).
    • Testing (8 marks): Evidence of thorough testing using representative samples (normal, boundary, erroneous data).
    • Evaluation (4 marks): Assessment of how well the outcome meets requirements, independent feedback, and discussion of potential improvements.
    Examiner Tips
    • 💡Start prototyping and writing code early in the project process.
    • 💡Tackle the critical path of the project first to ensure a working system.
    • 💡Ensure the project documentation is concise and presented in the order specified by the mark scheme.
    • 💡Use a best-fit approach when assigning levels in the mark scheme.
    • 💡Ensure the problem chosen is sufficiently different from other students in the centre to avoid malpractice.
    • 💡Document everything as you go. Keep a development log with screenshots of early versions, bugs, and changes. This shows the evolution of your project and can be used in your evaluation.
    • 💡Choose a project that allows you to demonstrate a range of skills, such as file handling, database connectivity, or use of external libraries. Avoid projects that are purely console-based or too simple.
    • 💡In the evaluation, be honest about limitations. Examiners reward critical reflection. If something didn't work, explain why and how you would fix it. This shows maturity and understanding.
    Common Mistakes
    • Choosing a project that is not of A-level standard, leading to restricted marks.
    • Failing to provide clear evidence of testing or using non-representative samples.
    • Lack of independent feedback in the evaluation section.
    • Poorly structured code that lacks annotation or meaningful identifiers.
    • Treating the project as a linear process rather than an iterative one.
    • Mistake: Starting implementation without a detailed design. Correction: Spend time on design; it saves time later. Use structure charts, flowcharts, or pseudocode to plan before coding.
    • Mistake: Testing only with 'normal' data. Correction: Include boundary and invalid data tests. For example, if input expects a number between 1 and 10, test with 0, 1, 10, 11, and letters.
    • Mistake: Writing evaluation that is too brief or generic. Correction: Be specific. Compare your solution to the original requirements, mention what you would change, and justify why.
    Frequently Asked Questions
    What programming language should I use for my AQA A-Level Computer Science NEA?
    You can use any programming language, but choose one you are comfortable with and that can handle your project's requirements. Popular choices include Python (for its simplicity and libraries), Java (for OOP and cross-platform), C# (for Windows apps), or VB.NET. Avoid languages you are not confident in, as you need to write substantial code. Check with your teacher if you are unsure.
    How long should my NEA project be?
    There is no strict page count, but a typical project report is around 30-50 pages including code listings, screenshots, and appendices. Focus on quality over quantity. Each section (Analysis, Design, etc.) should be thorough but concise. The code itself should be around 500-2000 lines, depending on complexity. Aim for a project that demonstrates depth rather than breadth.
    Can I work with a partner on the NEA?
    No, the NEA is an individual project. You must complete all work independently. However, you can discuss ideas with classmates or get feedback from your teacher. The final submission must be your own work. Collaboration on code or sharing solutions is not allowed and could lead to disqualification.
    What if my project doesn't work perfectly?
    It's okay if your project has minor bugs or incomplete features, as long as you document them honestly. The evaluation section is your chance to explain what went wrong and how you would fix it. Examiners value reflection and understanding over a perfect product. However, ensure core functionality works and you have tested thoroughly.
    How do I choose a good NEA project idea?
    Pick a problem that interests you and has a real user (e.g., a friend, family member, or teacher). The user should be able to provide requirements and feedback. Ensure the project has enough complexity to show advanced skills, such as data persistence, user authentication, or algorithm implementation. Avoid overused ideas like a tic-tac-toe game or a simple calculator. Brainstorm with your teacher to refine your idea.
    Do I need to include a user manual in my NEA?
    A user manual is not explicitly required, but it can be included in the appendices to show you have considered the end user. The main sections are Analysis, Design, Implementation, Testing, and Evaluation. If you create a user guide, keep it brief and focus on how to use your software. It can demonstrate your understanding of usability and user needs.