📘 CodingMarble Learn

The Capstone Computing Project: Choose, Analyse, Design, Build, Test, Evaluate

A capstone (practical) project is a large piece of work where you solve a real problem with a program, or investigate a computing question, and write a report about it. Choose a problem with a real user and enough technical depth: complex data structures, algorithms or models. The report follows the stages of development: analysis (problem, user, research, measurable objectives), documented design (data structures, algorithms, interfaces, modules), technical solution (the working code, which carries most marks), testing (a test plan with normal, boundary and erroneous data and evidence) and evaluation (judging each objective, using user feedback and suggesting improvements). Good coding style means meaningful names, small cohesive modules, comments where needed, and defensive code that handles bad input.

🎬 Step-by-step story

  1. Three project ideas stand side by side. The taller the tower, the deeper the techniques. Pick one with a real user and enough depth.
  2. Analysis. Talk to your user. Turn their needs into numbered, measurable objectives. You will tick each one at the end.
  3. Design. Break the big program into small modules: input, process, output. Each module has one clear job.
  4. Where the marks are. In a typical scheme the code is worth the most: 42 of 75. Design, analysis, testing and evaluation share the rest.
  5. Testing. Ten tests run. Two turn red. You fix the bug and run them again. Now all ten are green, with screenshots as proof.
  6. Your turn. Pick any stage. See how many marks it carries and what evidence you must show.

Tip: drag the 3D scene to turn it. Use two fingers to zoom.

🤔 Common doubts, cleared

How do I know my idea is complex enough?

List the data structures and algorithms it needs. If they are only lists and simple loops, add depth. Step 0 shows taller towers for deeper ideas.

Why spend time on objectives before coding?

They tell you what to build and become the checklist for testing and evaluation. Step 1 shows the numbered objective tiles.

Is the report or the code more important?

Both count, but in a typical scheme the code earns the most marks. Step 3 shows the technical solution bar is the tallest.

What if some tests fail?

That is normal. Record it, fix it and re-test. Step 4 shows red tests turning green.

Why split the program into modules?

Small modules are easier to design, test and fix, and they show good style. Step 2 shows the module tree.

Choosing the project

A capstone project is either a programmed solution to a real problem or an investigation (for example, comparing two algorithms or testing a machine-learning model) supported by your own code.

Report sections and how marks are shared

Most schemes mark the same five parts. One common A-level scheme uses 75 marks:

SectionMarksShareWhat goes in
Analysis912%Problem statement, the user, research (interviews, existing systems), measurable objectives, any data or models needed
Documented design1216%Overall structure (module / class diagrams), data structures, file or database design, key algorithms in pseudocode or flowcharts, interface sketches
Technical solution4256%The full code listing, showing complex techniques and good coding style
Testing811%Test plan and evidence (screenshots or video) that the system works
Evaluation45%How well each objective was met, user feedback, improvements
Total75100%

Measurable objectives are the backbone. "Make it fast" is vague; "Search 10 000 records and show results in under 1 second" can be tested. Write each objective so you can later say clearly "met" or "not met".

Technical skill and coding style

Levels of technical skill

Mark schemes sort techniques into groups by difficulty. Roughly:

To reach high marks, the project must contain several Group A techniques that work and are your own.

Coding style

Testing and evaluation evidence

Test plan

A good test table has: test number, what is tested (linked to an objective), test data, type of data, expected result, actual result, pass/fail and a reference to evidence.

Show evidence: annotated screenshots or a short video. When a test fails, record the bug, the fix and the re-test: this shows real development.

Evaluation

Try it: write three objectives today

Choose a small problem at home (for example, tracking who does which chores). Write three objectives that can be tested, each with a number in it ("show this week's chores for up to 6 people on one screen"). For one objective, write a normal, a boundary and an erroneous test. Then use the free-play step to see which section your work belongs to.

Key formulas and definitions

Worked examples

1. Which is the better project idea: (a) a times-tables quiz with 20 fixed questions, (b) a route planner for a school bus using a graph and Dijkstra's algorithm?

(b). It has a real user, a graph data structure and a non-trivial algorithm, so it shows advanced technical skill. (a) is too simple.

2. Rewrite "The app should be easy to use" as a measurable objective.

For example: "A new user can book a lesson in at most 4 clicks, and 4 of 5 test users can do it without help."

3. Valid scores are 0 to 100. Give one normal, two boundary and one erroneous test value.

Normal: 57. Boundary: 0 and 100 (also 101 and −1 just outside). Erroneous: "ten" or −20.

4. Using the 75-mark scheme, what percentage of marks is the technical solution?

42 ÷ 75 × 100% = 56%.

Common mistakes

Practice quiz

1. Which section usually carries the most marks?
2. Valid ages are 11–18. Age 18 is…
3. A measurable objective is one that…
4. Code where each subroutine does one clear job is…
5. In the evaluation you should mainly…

Practice: answer these yourself

Type or choose your answer, then press Check. Use a hint if you are stuck; the full solution appears after you answer.

Frequently asked questions

What makes a good computer science project idea?

A real problem with a real user, in a field you know, that needs advanced techniques such as complex data structures or algorithms, and that you can finish.

What sections does a computing project report have?

Analysis, documented design, technical solution, testing and evaluation.

What are normal, boundary and erroneous test data?

Normal is typical valid input, boundary is at the edge of the valid range, and erroneous is invalid input the program must reject.

Where this is taught

CBSE (India)Class 11Introduction to Capstone Project
England (GCSE, A level)Year 134.14 Non-exam assessment: practical project

Learn first

Learn next

Related lessons

All Computer Science lessons