CBSE 2026 results are out — Mukul scored a perfect 100/100 in Computer ScienceSee all toppers →
CBSE · 7 min read

How to Ace the CBSE Computer Science Practical & Viva

Why the practical deserves your attention

In CBSE Computer Science (subject code 083), the final result is split into a 70-mark theory paper and a 30-mark practical examination. Many students treat the practical as an afterthought and then lose easy marks on the day. That is a mistake. The practical is the most controllable part of your score: the syllabus is finite, the question types repeat every year, and an external examiner who sees a tidy file, a working project and a confident student will rarely deduct marks.

This guide explains exactly how those 30 marks are distributed for both Class 11 and Class 12, and gives you a practical preparation plan for the lab test, the file, the project and the viva.

The 30-mark practical breakup (Class 11 and Class 12)

For 2025-26, CBSE keeps the same internal structure for both classes. Knowing where every mark sits tells you where to put your effort.

  • Lab Test – 12 marks: a Python program (8 marks) plus SQL queries (4 marks).
  • Report File – 7 marks: your maintained practical file of programs and queries.
  • Project – 8 marks: a working application built using concepts from Classes 11 and 12.
  • Viva Voce – 3 marks: an oral question round with the examiner.

The Python program is itself marked on logic (around 60%), documentation/comments (around 20%) and code quality (around 20%). That is a strong hint: clean, commented code earns marks even if your output is not perfect.

The practical file: the easiest 7 marks

The file is graded on completeness and neatness, not difficulty. CBSE expects roughly:

  • Minimum 15 Python programs covering the year's topics.
  • At least 5 sets of SQL queries using one or two tables.
  • At least 4 programs based on Python–MySQL connectivity (Class 12).

How to make your file scoring

  • Write the aim, source code and actual output for every program — paste the real output, not a hand-written guess.
  • Add a one-line comment on each program so the examiner can see you understand it.
  • Number the index, keep it in syllabus order, and do not leave the last few entries blank — incomplete files are the most common reason students drop a mark or two here.

Start the file early in the year rather than copying 15 programs the night before. A file built alongside the chapters doubles as your revision notes.

Cracking the lab test (12 marks)

On exam day you will be given one Python program and a set of SQL queries to solve at the machine. To prepare:

Python (8 marks)

  • Be fluent with the high-frequency topics: functions, string and list manipulation, dictionaries, file handling (text/binary/CSV) and stack operations.
  • Practise reading and writing files end to end — file handling questions appear almost every year and trip up students who only memorised theory.
  • Write code that runs. A partially correct program that executes beats a "perfect" program with a syntax error. Test, then refine.
  • Add comments and use meaningful variable names to claim the documentation and code-quality marks.

SQL (4 marks)

  • Drill the core clauses: SELECT … WHERE, ORDER BY, GROUP BY … HAVING, and aggregate functions (COUNT, SUM, AVG, MIN, MAX).
  • Know the difference between WHERE and HAVING, and how % and _ wildcards behave with LIKE.
  • Practise queries on one and two tables until you can write them without hesitation.

If you want structured, exam-pattern practice for these topics, our Class 12 Computer Science course and Class 11 course work through every practical question type with the same marking lens the examiner uses. The wider Python coaching track is useful if you want to strengthen programming fundamentals first.

Building a project that earns full 8 marks

The project is your best opportunity for a clean 8/8 because you control it completely. Examiners reward a small application that actually works over an ambitious one that crashes.

  • Pick a real-world idea: a library record system, student/marks manager, quiz app, inventory or bus-booking menu. Class 12 projects should use Python connected to MySQL.
  • Use a menu-driven structure with functions for add, search, update, delete and display — this maps neatly to the concepts examiners look for.
  • Prepare a short report: objective, modules, screenshots of inputs and outputs, and the database structure.
  • Be ready to demo it live and to explain any line the examiner points to. Never submit a project you cannot run and explain yourself.

The viva voce (3 marks): small marks, big impression

The viva is only 3 marks, but it sets the tone for how the examiner grades everything else. The questions are predictable. Prepare answers to these recurring favourites:

  • What is a cursor? An object that lets Python execute SQL queries and fetch results from the database.
  • Which module connects Python to MySQL? mysql.connector (used with connect() to open the connection).
  • Difference between commit() and rollback()? commit() saves changes permanently; rollback() undoes the current transaction.
  • Difference between fetchone(), fetchmany() and fetchall()? They return one row, a set number of rows, and all rows respectively.
  • Difference between execute() and executemany()? One query versus the same query run over many value sets.
  • Basics from the rest of the syllabus: list vs tuple, text vs binary file, DDL vs DML, and what primary key and degree/cardinality mean.

Answer in one or two confident sentences. If you do not know something, say so politely rather than bluffing — examiners respect honesty and move on.

A four-week preparation plan

  • Weeks 1–2: complete and neaten the practical file; revise file handling and core SQL.
  • Week 3: finish and test the project; write the report and rehearse the demo.
  • Week 4: solve past lab-test questions under time, and run through viva questions aloud with a friend or mentor.

Students who follow this through our small-batch coaching consistently walk into the practical calm and prepared — a big reason behind Kwickprep's 100% board pass record. If you are unsure which class or board track fits you, see all our Computer Science courses or get in touch for guidance.

Key takeaways

  • The CBSE 083 practical is 30 marks: Lab Test 12, File 7, Project 8, Viva 3.
  • Build the file through the year and complete it fully — it is the easiest 7 marks.
  • In the lab test, write working, commented code; in SQL, master clauses and wildcards.
  • Choose a small project that runs and that you can explain line by line.
  • Prepare the predictable viva questions on cursors, connectivity and core concepts.

Frequently asked questions

How many marks is the CBSE Class 12 Computer Science practical?+
The practical examination is worth 30 marks: Lab Test 12 marks (Python program 8 + SQL queries 4), Report File 7 marks, Project 8 marks and Viva Voce 3 marks. Theory carries the remaining 70 marks.
What should be in the CBSE Computer Science practical file?+
For Class 12, the file should contain at least 15 Python programs, a minimum of 5 sets of SQL queries on one or two tables, and at least 4 programs based on Python-MySQL connectivity, each with its aim, source code and actual output.
What are common CBSE Computer Science viva questions?+
Frequent questions include what a cursor is, which module connects Python to MySQL (mysql.connector), the difference between commit() and rollback(), the difference between fetchone/fetchmany/fetchall, and basics like list vs tuple and primary key.

Want to ace your boards?

See a real class before you decide. No pressure, no payment.

Book Free Demo on WhatsApp

Studying outside India?

We coach CBSE, IGCSE & international students across the globe — one-to-one, in your local time zone.

Visit International →