WJEC A2 · Unit 5

WJEC A2 Unit 5: Programmed Solution
to a Problem

Unit 5 is your non-exam assessment (NEA), worth 20% of your full A Level. You choose a substantial programming problem, then investigate, design, build, test, and evaluate a working solution over an extended period. This guide breaks down every assessed section, tells you exactly what the examiner is looking for at each band, and gives you a checklist to track your own evidence.

100 marks available 20% of A Level Original code required 72 guided learning hours
Your XP
Sign in to track XP
Unit 5 Guide
5
Discussion
10
Investigation
15
Design
10
Prototype
5
Post-Prototype Refinement
25
Software Development
15
Testing
15
Evaluation

Total: 100 marks · Assessment objective AO2.1b / AO3.1a / AO3.1b / AO3.1c

Assessment Sections

What You Need to Produce

Unit 5 is marked against eight sections. Work through them in order and keep evidence of every stage because your teacher uses the banded mark schemes below to assess your final submission.

1. Discussion

5 marks AO2.1b

You describe your project to others, identify its limitations, and use feedback to sharpen your understanding of the problem. This is an oral or documented discussion, not just a written paragraph.

  • Describe the broad aims of the project to peers or your teacher, using appropriate technical vocabulary.
  • Identify and describe the possible limitations of a solution to the problem in detail.
  • Consider feedback from others and use it to refine your understanding and proposed solution.
At Band 3 you must identify a problem that is substantial enough to access all sections of the mark scheme. If your problem is too small, you will be limited to Band 1 across the entire project. Discuss scope with your teacher before you begin.
34–5 marks
Full description with technical vocabulary. Substantial problem identified. Limitations described in detail using technical language. Feedback fully considered and used to refine the proposed solution.
23 marks
Realistic description with main aims identified. Suitable problem for the level. Main limitations described to a competent third party. Feedback considered and used to increase understanding.
11–2 marks
Limited scope and description. Problem may be too small. At least one limitation identified. Limited use of feedback received from others.
00 marks
Response not credit worthy or not attempted.

2. Investigation

10 marks AO2.1b

A thorough investigation of the existing system using a variety of methods, including desk research into similar solutions and a detailed look at stakeholders, data, processing, and outputs.

  • Investigate the current system using interviews, questionnaires, observation, or document analysis.
  • Research existing solutions to similar problems and identify features to include in your own solution.
  • Identify all stakeholders and describe their requirements for the proposed system.
  • Analyse data collected for input and processing by the current system.
  • Identify and describe all outputs from the current system.
  • Consider the limitations of the current system.
  • Produce a working specification that summarises the purpose of the project.
  • Justify the methods to be used in your solution.
  • Set measurable objectives and success criteria for the proposed system.
Band 3 requires you to have used a range of investigation methods, not just one. A questionnaire alone is not sufficient. Combine it with an interview or observation, and reference at least two commercially available existing solutions.
38–10 marks
Thorough, multi-method investigation. All stakeholders described with requirements. Full data and processing analysis. All outputs considered. Working specification produced. Methods justified with technical reasoning. Measurable success criteria set.
24–7 marks
Several investigation methods used. Most stakeholders identified. Majority of input and processing analysed. Specification produced. Methods described. Success criteria included.
11–3 marks
Limited investigation. Main stakeholders identified. Limited data and output consideration. Summary of purpose produced. Limited number of methods identified.
00 marks
Response not credit worthy or not attempted.

3. Design

15 marks AO3.1a

Full documentation of the proposed solution before you write any final code. This section rewards thorough, clear design documentation that a competent third party could implement.

  • Break the problem into sub-problems and explain the links between them and your objectives.
  • Design and document all input and output interfaces, including screen layouts and reports.
  • Design all data structures and describe methods of access.
  • Ensure all data entered is valid, with validation rules documented.
  • Design processing routines using a structured convention such as pseudocode or flowcharts.
  • Describe the relationships between data and the processes that manipulate it.
Band 3 explicitly requires processing routines described in sufficient detail for a competent third party to implement them, and a data model normalised to at least a level that reduces redundancy. Use entity-relationship diagrams for databases and pseudocode for algorithms.
311–15 marks
Comprehensive, implementable design. Full breakdown into sub-problems linked to objectives. All inputs, outputs, data structures, and validation routines fully described. Processing routines documented in detail with a recognised convention. Interconnections between programs and files clearly shown.
26–10 marks
Working design covering most areas. Majority of inputs and outputs designed. Main data structures described with access methods. Most validation routines covered. Processing routines described using a recognised convention.
11–5 marks
Limited design documentation. Outline designs for main inputs and outputs. Main data structures described. Several validation rules identified. More than one process identified and attempted in a recognised convention.
00 marks
Response not credit worthy or not attempted.

4. Prototype

10 marks AO3.1b

A working early version of your system covering a justified subset of the full solution, built with realistic data and evaluated honestly.

  • Justify which areas of the problem are included in the prototype and explain why others are omitted.
  • Produce a range of screens and outputs for the chosen prototype areas.
  • Create a functioning system that carries out all chosen processes using realistic data.
  • Evaluate the prototype, identifying its good features, shortcomings, and specific improvements needed.
A prototype is not a mock-up with dummy data. Use real data throughout and ensure the processes actually run. Your evaluation must be specific, for example naming exact screens or routines that need improvement, not just saying "it could be better".
38–10 marks
Functioning prototype with justified scope. Reasons for areas included and omitted explained. Comprehensive screens and outputs. All chosen processes run with realistic data. Evaluation justifies good features and makes specific improvement suggestions.
24–7 marks
Working system covering most chosen areas. Areas described. Mock-ups of all described screens produced. Most processes run with realistic data. Good features and shortcomings identified with some improvement suggestions.
11–3 marks
Some prototype areas identified. Main screens mocked up. Some processes simulated but without real data.
00 marks
Response not credit worthy or not attempted.

5. Post-Prototype Refinement of Design

5 marks AO3.1a

After evaluating your prototype you obtain feedback from a competent third party and revise your design documentation before building the final system.

  • Obtain feedback on the prototype from a competent third party (not just a friend; someone who can assess the technical quality).
  • Describe the feedback received and explain its implications for redesign.
  • Revise input, output, data structures, and processing routines in response to the feedback.
  • Justify any feedback suggestions that you have chosen not to implement.
  • Produce fully updated processing routines in a recognised convention, in sufficient detail for implementation.
The third party must be competent, meaning they should have sufficient technical knowledge to give meaningful feedback. A teacher, another computer science student, or an industry professional all count. A parent or friend who does not understand the system does not.
34–5 marks
Full refinement with justified decisions. Competent third party feedback obtained and fully described. All design areas reconsidered. All processing routines updated to implementable standard. Discounted suggestions justified.
23 marks
Design revised in key areas. Feedback described and areas to refine identified. Input, output, and data structures updated as needed. Revised routines presented in a recognised convention.
11–2 marks
Limited refinement. Feedback summarised briefly. Limited alterations made to design. Routines partially re-defined in a recognised convention.
00 marks
Response not credit worthy or not attempted.

6. Software Development

25 marks AO3.1b

The largest section in the unit. You refine your prototype into a complete, functional, well-structured, and well-annotated solution. The code must be original and submitted with annotated listings.

  • Refine the prototype using the amended design documentation.
  • Produce a functioning solution that meets most objectives and is suitable for its audience and purpose.
  • Make effective use of the programming language, including user-defined routines.
  • Create a well-structured, modular solution using local variables and minimising global variables.
  • Produce a well-structured data model; better candidates will normalise to third normal form.
  • Write fully self-documenting code with annotation to allow a third party to maintain the solution.
  • Implement validation for all key components; better candidates will use exception handling.
  • Document all variables and data structures used.
  • Provide a completed user interface with a full description of the features that make it fit for audience and purpose.
Band 4 (the top band) rewards recursive algorithms, third normal form database design, and effective exception handling. Even if you cannot implement all three, aim for at least one of these differentiators. Annotated listings mean every non-trivial line has a comment explaining why, not just what.
419–25 marks
Highly demanding, fully functional solution. Meets almost all objectives. Language facilities fully exploited. Modular, well-structured code with local variables. Data model normalised to 3NF. Recursive algorithms used. Validation and exception handling throughout. Fully annotated listings.
313–18 marks
Demanding, functional solution meeting many objectives. Language facilities exploited. Modular structure with local variables. Linked data structures with reduced redundancy. User-defined routines including sorts and searches. Most key components annotated. Effective validation for most elements.
27–12 marks
Partially functional solution meeting basic objectives. Range of programming facilities used. Simple linked data structures. Linear searches and mathematical routines present. Basic validation in evidence. Most key components annotated.
11–6 marks
Partially functional, limited use of facilities. Basic data structures. Possibly linear code with limited annotation. Little or no validation. Limited documentation of variables.
00 marks
Response not credit worthy or not attempted.

7. Testing

15 marks total AO3.1c

Testing is split into two sub-sections: developmental testing (5 marks) and final system testing (10 marks). Both require documented evidence, not just a table of results.

Developmental Testing — 5 marks
  • Provide evidence of testing at each stage of development, not just at the end.
  • Document all problems encountered during development and the actions taken to fix them.
Final System Testing — 10 marks
  • Design a comprehensive test plan covering every function of the system.
  • Test each function with typical, extreme, and invalid data.
  • Produce annotated test runs with commentaries on every outcome.
  • Include specific suggestions to refine the system based on test results.
Many candidates lose marks by producing a test plan as a table of expected results but with no actual evidence of running the tests. Screenshots or screen recordings of tests running, with written commentary on the outcome of each test, are essential for Band 3.
Dev 34–5 marks
Comprehensive developmental testing. Evidence at every stage. All problems and fixes fully justified and evidenced.
Dev 23 marks
Testing at most stages. Problems and actions described and evidenced.
Dev 11–2 marks
Limited developmental testing. Some evidence of errors encountered and remedied.
Sys 38–10 marks
Comprehensive test plan with wide range of methods. Typical, extreme, and invalid data used. All results presented with detailed, informed commentaries and specific refinement suggestions.
Sys 24–7 marks
Test plan covering most areas. Range of methods used. Results with suitable commentaries and improvement suggestions.
Sys 11–3 marks
Test plan for main functions. More than one data type used. Results with comments and limited improvement suggestions.

8. Evaluation

15 marks AO3.1c

A reflective, analytical conclusion to the entire project. Band 3 requires you to use specialist vocabulary correctly and write virtually error-free English throughout.

  • Evaluate the effectiveness of the programming language used, justifying the tools and techniques chosen.
  • Compare your completed solution with similar commercially available systems.
  • Identify successful features and shortcomings of your solution, and describe significant potential improvements.
  • Evaluate your own strengths and weaknesses in the design and development process.
  • Describe specific changes of approach you would adopt if tackling a similar problem in future.
Avoid vague statements such as "the language was good because it has lots of features". At Band 3 you must justify specific tools: for example, explaining why you chose a list over an array for a particular data structure, or why Python was more suitable than Java for your chosen problem.
311–15 marks
Detailed, well-structured evaluation. Programming language effectiveness justified. Comparison with commercial systems. Good features and shortcomings identified with significant improvements described. Own performance evaluated. Specific future approaches described. Specialist vocabulary used with ease and accuracy. Work is virtually error-free.
26–10 marks
Review communicating clear meaning. Language features described. Comparison with commercial systems. Main good features identified with appropriate improvements. Own strengths and weaknesses described. Technical vocabulary used accurately with few errors.
11–5 marks
Limited review with some technical detail. Language tools described briefly. Limited comparison with a similar commercial system. Several improvements identified. Account of own performance and problems. Limited specialist vocabulary. Work may contain inaccuracies.
00 marks
Response not credit worthy or not attempted.
NEA Checklist

Track Your Evidence

Tick each item as you complete it. Your progress is saved in your browser. Reach 100% to earn a bonus 100 XP.