The CBSE Class 12 Computer Science Project: What Actually Scores
The Class 12 Computer Science practical carries 30 marks, made up of the lab test, the report file, the project and the viva. The project rewards a working, menu-driven Python program connected to a database, documented well enough that you can explain any line of it. Ambition is not what scores; being able to defend your own code is.
Where the project sits
The practical is 30 of the 100 marks in Computer Science (083), split across the lab test, the report file, the project and the viva. Students often treat it as an afterthought and then discover it is the difference between a high 80s and a 95.
What a solid project looks like
A menu-driven Python program connected to a MySQL database. That is it. Common, sensible choices:
- A library issue-and-return system
- An inventory or stock tracker
- A student records manager
- A simple billing or canteen system
Each needs the same four operations working: insert, search, update and delete. A project that does those four things reliably scores better than an ambitious one that half-works.
What actually costs marks
- Starting late. A project written in the final fortnight looks like one, and the viva exposes it immediately.
- Code you cannot explain. The single most common failure. If you took a function from the internet, understand it or replace it.
- No error handling. A program that crashes on a wrong input in front of the examiner loses easy marks.
- Thin documentation. The report file should show the purpose of each function, sample inputs and real output screenshots.
Preparing for the viva
The viva examines your reasoning, not your typing. Be ready to answer: why did you structure the data this way, what happens if the user enters text where a number is expected, why did you use this table design, and what would you change if the database doubled in size.
A student who can answer those four questions about a simple project scores higher than one who cannot answer them about a complex one.
A sensible timeline
- Term 1: pick the idea, design the tables, get insert and search working.
- Mid-year: add update and delete, plus input validation.
- Before the exam term: finish the report file with screenshots.
- Final weeks: rehearse explaining the code aloud, not writing more of it.

