Computer Science A-level Project Writeup guide for OCR A-level
Helpful Links:
Look at the Mark Scheme on the A-level hub: Project Marker (alevelcompscimarking.herokuapp.com) you should use this to roughly understand the sections you need
Mark scheme specification: OCR A Level Computer Science H446 Specification
Example top grade project: Microsoft Word — GCE_Computing_Exemplar_F454.doc (ocr.org.uk)
Scope of a project: OCR A Level Computer Science Project Setting Guidance
Systems methodology, you need to understand Agile, Waterfall etc and the SDLC stage Unit 23 — Systems Methodology — YouTube
A-level project template:
Below is a possible layout you could follow for your project, this is taken from Example top grade project: 514655-programming-project-set-a-high.pdf but I have added the mark scheme for top band marks which is from OCR A level mark scheme you can see it on Project Marker (alevelcompscimarking.herokuapp.com) too:
Section 1 — Analysis
Problem Definition
- The problem statement short paragraph
- Stakeholders, who will use it?
- Decompose problem (break it down show why having computer is necessary)
- Interviews/ Requirement gathering… however you want to do this questionnaires reddit talk to people… Key thing is to analyse the info you get
- Transcribe or show info gathered then analyse what it means for you project
- Research into other problems… what other trading app are out there and how do they work, what features do you want to take from them or improve?
- Hardware requirements, what hardware or software is required to run this app?
- What does stakeholders want in terms of the design of app and functionality
- LIST SUCCESS CRITIERA… these are your business cases e.g. users can search a stock and analyse its price, users can buy a stock in the simulation, they can login etc.
Section 2 — Design
- User Interface design: Draw wireframes for each screen and describe each button or feature saying how they link to success criteria
- Justify and explain each screen, why is it there, how does it help to find a solution to your problem?
- How have you made your application usability, have you thought about user experience. Justify and explain why the screens are like that
- Get stakeholder input on the designs, analyse this feedback and change the designs
- Algorithms — Describe any complex algorithms that you want to design to put into your project, link to success criteria. Show pseudocode to give an idea of how the algorithms will work.
- Justify and explain the algorithms how they will be developed and how you will break the algorithm down so you can develop.
- Show a USE CASE and UML Class diagram of how the code in the app will function Summary of Use Case and Class Diagrams (youtube.com)
- Show how the flow of the actions lead into other screens DFD diagram or just from your design of screen show the functions and code that will be run 4 — Data Flow Diagrams — Unit 23 Systems Methodologies (youtube.com)
- Show Data dictionaries highlight all the variables you will use CASE Tools Data Dictionaries Decision Tables Screen Design (youtube.com)
- Show decision tables where necessary to describe the algorithms or key choices Tools Data Dictionaries Decision Tables Screen Design (youtube.com)
- For any databases show database schema ERD diagrams Entity Relationship Diagrams (youtube.com) how to make one How to make an Entity Relationship Diagram (youtube.com)
- Design your testing table, show how you will comprehensively test your application, describe how else you will test it?
Section 3 — Development and testing
- An iterative detailed description explaining and justifying why you have written he code you wrote in there…break the project down into stages or sprints saying what you delivered and how you tested it at the end of each stage.
- Show how you tested each part that you developed, you need to keep a record of all the parts you developed, what went wrong and how you fixed the bugs.
- You should show why you made the code easily adaptable and maintainable
- You should explain in detail how you developed all the algorithms you said you were going to write in your design
- At the end of each stage of development describe: What has been done, how it has been tested, how it meets your success criteria, whether you changed the design or not, where you are in the project what else needs to be done
Basic Structure: Documenting the milestones
For each milestone, include the following:
Get Icodewithben’s stories in your inbox
Join Medium for free to get updates from this writer.
1. Objective of the milestone: In one or two sentences, describe what this milestone achieves.
2. Code listing: Provide a listing of the code for this milestone. Code must be commented with appropriate variable and data structure names.
3. Explanation of the code: Explain what the code section does and justify algorithms or approaches. It might not be immediately obvious to an examiner how the code works or why problems have been solved in the way they have. Remember, the examiner may not be familiar with the language you are using. If input validation is required, explain that too.
4. Module testing: Explain the tests you performed for this section of code and the outcome of those tests. You will likely be playing the game and tweaking the variables a lot to get the outcome you want. You should provide evidence of this process.
5. User feedback: Your user should tell you what they like and dislike about this aspect of the development so far, with ideas for future development. Your user must be an integral part of the iterative development process.
6. Reflections: As a result of playtesting and user feedback, discuss what needs to be changed.
Section 3 — Testing for Development
and Testing to inform evaluation
- Final Testing — You need to carry out the tests you designed in the design section saying whether or not they passed and the application meets the success criteria. Describe the tests in detail highlighting where the tests went wrong and what you need to do to fix them.
- Stakeholder or user testing — Hand the application to the users and let them play with it. You need to monitor them then interview them again like you did for design to fully understand the things that went well or not so much.
Section 3 — Evaluation of solution
- List all the success criteria and say whether or not you met it
- Show evidence of each success criteria being met by showing screen shots and detailed descriptions
- Explain and justify why you did or did not meet the success criteria
- Explain and justify how usable your application is to users, what could be improved
Limitations
- Show that you can be criticial of your work, show what you think worked well and what did not.
- Describe how you can improve it by giving solutions. Justify and explain it.
Maintenance
- How will you plan to maintain and update the application? Why? Justify and explain







