Free resource · Updated September 2026
Viva questions with answers
The 100 questions examiners ask most in final year project vivas, with answers short enough to say out loud. Start with the questions about your own project, because every viva does.
Five rules for the room
- 1Answer the question asked, in two or three sentences, then stop. Let the examiner ask for more.
- 2If you do not know, say so and explain how you would find out. Guessing confidently does more damage.
- 3Keep your report open at the architecture diagram. Pointing at it while you explain helps.
- 4Run your demo on the viva machine an hour early, with the internet switched off if it can be.
- 5Know your own numbers: dataset size, accuracy, number of tables, number of API endpoints.
About your project
Every examiner starts here, whatever the topic. These answers are frameworks: fill them in with your own project's details and practise saying them in under a minute each.
01Explain your project in two minutes.
Cover four things in order: the problem, who has it, what your system does about it, and the result. Close with the one feature you are proudest of. Rehearse it so it never runs over two minutes.
02Why did you choose this topic?
Give a concrete reason: a problem you saw in your college, a gap in existing tools, or a technology you wanted to learn properly. Avoid saying it was the only topic left.
03What is the scope of your project?
State what the system does and, just as importantly, what it deliberately does not do. Clear limits show you understand the problem rather than overpromising.
04What existing systems did you study?
Name two or three existing solutions or papers from your literature survey, one limitation of each, and how your project addresses at least one of them.
05Why did you choose this technology stack?
Justify each major choice with a reason tied to the project: for example Python for its ML libraries, MongoDB for flexible records, or React for a component-based interface. 'It is popular' is not a reason.
06Explain your system architecture.
Walk through the architecture diagram from the user's action to the stored result: front end, API, business logic, database and any external services. Be ready to point at each box.
07What modules does your project have?
List the modules and give one sentence on each module's responsibility and how it connects to the others. Know who built which module if you worked in a team.
08How did you test your project?
Describe unit tests for individual functions, integration tests across modules, and the test cases table in your report. Mention at least one bug that testing caught.
09What challenges did you face?
Pick one real technical problem, explain how you diagnosed it and what fixed it. Examiners value the debugging story more than the challenge itself.
10What are the limitations of your project?
Be honest: dataset size, scalability, offline support or security hardening. Admitting limits is safer than having the examiner find them.
11What is the future scope?
Give two or three specific extensions, such as a mobile app, more languages or a better model, and say briefly how each would be built.
12Can you show me where this feature is in the code?
Know your folder structure well enough to open any major feature within seconds. Practise navigating the code in front of someone before the viva.
Software engineering
Asked in almost every final year viva, because your report is structured around the SDLC.
01What is the SDLC?
The Software Development Life Cycle is the sequence of phases used to build software: requirement analysis, design, implementation, testing, deployment and maintenance.
02Which SDLC model did you follow and why?
Most student projects follow an iterative or Agile model, building and testing features in short cycles. Waterfall suits fixed, well-understood requirements, which student projects rarely have.
03What is the difference between functional and non-functional requirements?
Functional requirements describe what the system does, such as 'a user can register'. Non-functional requirements describe how well it does it, such as performance, security and usability.
04What is a use case diagram?
A UML diagram that shows the actors who interact with the system and the use cases, or goals, each actor can achieve. It describes behaviour from the user's point of view.
05What is the difference between a class diagram and a sequence diagram?
A class diagram shows the static structure: classes, attributes, methods and relationships. A sequence diagram shows dynamic behaviour: how objects exchange messages over time for one scenario.
06What is a DFD?
A Data Flow Diagram shows how data moves through a system between processes, data stores and external entities. Level 0 is the context diagram; higher levels break processes down further.
07What is the difference between black box and white box testing?
Black box testing checks inputs against expected outputs without looking at the code. White box testing designs tests from the internal code structure, such as covering every branch.
08What is unit testing versus integration testing?
Unit testing checks one function or class in isolation. Integration testing checks that several modules work correctly together.
09What is a feasibility study?
An assessment, before building, of whether a project is technically, economically and operationally feasible within the available time and resources.
10What is version control and why did you use it?
A system such as Git that records every change to the code, lets team members work in parallel on branches, and allows rolling back mistakes.
DBMS and SQL
If your project has a database, expect at least a few of these.
01What is a DBMS?
Software that stores, retrieves and manages data while handling concurrency, security, integrity and recovery. MySQL, PostgreSQL and MongoDB are examples.
02What is the difference between SQL and NoSQL databases?
SQL databases store data in tables with a fixed schema and support joins and strong consistency. NoSQL databases, such as document stores, use flexible schemas and scale horizontally more easily.
03What is a primary key?
A column, or set of columns, that uniquely identifies each row in a table. It cannot be null and cannot repeat.
04What is a foreign key?
A column in one table that refers to the primary key of another table, enforcing a valid relationship between the two.
05What is normalisation?
Organising tables to reduce redundancy and avoid update anomalies. 1NF removes repeating groups, 2NF removes partial dependencies and 3NF removes transitive dependencies.
06What are ACID properties?
Atomicity (all or nothing), Consistency (rules are never violated), Isolation (concurrent transactions do not interfere) and Durability (committed data survives crashes).
07What is the difference between DELETE, TRUNCATE and DROP?
DELETE removes selected rows and can be rolled back. TRUNCATE removes all rows quickly without logging each one. DROP removes the whole table, including its structure.
08What are the types of joins?
INNER JOIN returns matching rows from both tables. LEFT and RIGHT JOIN keep all rows from one side, filling gaps with nulls. FULL OUTER JOIN keeps all rows from both sides.
09What is an index?
A data structure, usually a B-tree, that speeds up lookups on a column at the cost of extra storage and slower writes.
10What is an ER diagram?
An Entity-Relationship diagram showing entities, their attributes and the relationships between them, including cardinality such as one-to-many.
11What is the difference between WHERE and HAVING?
WHERE filters rows before grouping. HAVING filters groups after GROUP BY, so it can use aggregate functions such as COUNT.
12What is SQL injection and how did you prevent it?
An attack that inserts malicious SQL through user input. It is prevented with parameterised queries or an ORM, never by building queries through string concatenation.
Object-oriented programming
Core concepts examiners use to check your programming fundamentals.
01What are the four pillars of OOP?
Encapsulation, abstraction, inheritance and polymorphism.
02What is encapsulation?
Bundling data and the methods that act on it inside a class, and restricting direct access to the data, usually through private fields and public methods.
03What is abstraction?
Exposing only what an object does and hiding how it does it, typically through abstract classes or interfaces.
04What is inheritance?
A mechanism where a class acquires the properties and methods of another class, allowing code reuse and an is-a relationship.
05What is polymorphism?
One interface, many forms. Compile-time polymorphism is method overloading; runtime polymorphism is method overriding resolved through dynamic dispatch.
06What is the difference between overloading and overriding?
Overloading means several methods with the same name but different parameters in one class. Overriding means a subclass redefining a parent method with the same signature.
07What is the difference between an abstract class and an interface?
An abstract class can hold state and implemented methods and is extended once. An interface defines a contract, and a class can implement several interfaces.
08What is a constructor?
A special method that runs when an object is created and initialises its state.
09What is the difference between static and instance members?
Instance members belong to each object separately. Static members belong to the class itself and are shared by every instance.
10What are access modifiers?
Keywords that control visibility: public is accessible everywhere, private only inside the class, and protected inside the class and its subclasses.
Data structures and algorithms
Often asked to test fundamentals, especially if your project involves search, sorting or optimisation.
01What is the difference between an array and a linked list?
An array stores elements contiguously with O(1) access by index but costly insertion. A linked list stores nodes with pointers, giving O(1) insertion at a known node but O(n) access.
02What is the difference between a stack and a queue?
A stack is last-in, first-out, like a pile of plates. A queue is first-in, first-out, like a ticket line.
03What is time complexity?
How an algorithm's running time grows with input size, expressed in Big O notation, such as O(n) or O(n log n).
04What is a hash table?
A structure that maps keys to values through a hash function, giving average O(1) lookup. Collisions are handled by chaining or open addressing.
05What is a binary search tree?
A tree where each node's left subtree holds smaller values and its right subtree larger ones, giving O(log n) search when balanced.
06What is the difference between BFS and DFS?
Breadth-first search explores level by level using a queue and finds shortest paths in unweighted graphs. Depth-first search goes as deep as possible first, using a stack or recursion.
07Which sorting algorithm is fastest?
It depends on the data. Quick sort is fast on average at O(n log n), merge sort guarantees O(n log n) and is stable, and insertion sort is best for small or nearly sorted arrays.
08What is recursion?
A function that calls itself on a smaller version of the problem until it reaches a base case. Without a base case it overflows the stack.
Computer networks
Expect these for web, security and any client-server project.
01What are the layers of the OSI model?
Physical, Data Link, Network, Transport, Session, Presentation and Application, from bottom to top.
02What is the difference between TCP and UDP?
TCP is connection-oriented and reliable, with ordering and retransmission. UDP is connectionless and faster but offers no delivery guarantee, which suits streaming and gaming.
03What is the difference between HTTP and HTTPS?
HTTPS is HTTP over TLS. It encrypts traffic and verifies the server's identity with a certificate, protecting against eavesdropping and tampering.
04What is DNS?
The Domain Name System translates human-readable domain names into IP addresses.
05What is an IP address?
A numerical label that identifies a device on a network. IPv4 uses 32-bit addresses; IPv6 uses 128-bit addresses.
06What happens when you type a URL into a browser?
The browser resolves the domain through DNS, opens a TCP connection and TLS handshake, sends an HTTP request, receives the response and renders the HTML, CSS and JavaScript.
07What is a REST API?
An architectural style where resources are identified by URLs and manipulated with HTTP methods such as GET, POST, PUT and DELETE, with each request being stateless.
08What is the difference between a router and a switch?
A switch connects devices within a local network using MAC addresses. A router connects different networks and forwards packets using IP addresses.
09What is a firewall?
A system that filters network traffic according to rules, allowing or blocking connections based on addresses, ports and protocols.
10What is MQTT?
A lightweight publish-subscribe messaging protocol widely used in IoT. Devices publish to topics on a broker, and subscribers receive messages for those topics.
Operating systems
A common fundamentals check, especially in the second half of a viva.
01What is the difference between a process and a thread?
A process is a running program with its own memory space. Threads run within a process and share its memory, which makes them lighter but requires synchronisation.
02What is a deadlock?
A state where processes each hold a resource and wait for another held by someone else, so none can proceed. It needs mutual exclusion, hold and wait, no preemption and circular wait.
03What is virtual memory?
A technique that lets programs use more memory than physically available by swapping pages between RAM and disk, giving each process its own address space.
04What is paging?
Dividing memory into fixed-size pages and frames so a process's memory need not be contiguous, which eliminates external fragmentation.
05What are common CPU scheduling algorithms?
First Come First Served, Shortest Job First, Round Robin and Priority scheduling, each trading off waiting time, fairness and responsiveness.
06What is a semaphore?
A synchronisation variable used to control access to shared resources. A binary semaphore works like a lock; a counting semaphore allows a set number of concurrent users.
07What is a race condition?
A bug where the result depends on the timing of concurrent operations on shared data. It is prevented with locks or atomic operations.
08What is the role of the kernel?
The core of the operating system. It manages processes, memory, devices and system calls, and mediates between hardware and applications.
Web development
For any project with a website, web app or API.
01What is the difference between the front end and the back end?
The front end runs in the browser and handles the interface. The back end runs on a server and handles business logic, data storage and authentication.
02What is the difference between GET and POST?
GET retrieves data, sends parameters in the URL and should have no side effects. POST sends data in the request body to create or change something.
03What is the DOM?
The Document Object Model is the browser's tree representation of an HTML page, which JavaScript can read and modify.
04What is React and why use it?
A JavaScript library for building interfaces from reusable components. It updates the page efficiently when state changes, which keeps complex interfaces manageable.
05What is the difference between state and props in React?
Props are read-only inputs passed from a parent component. State is data a component owns and can change, which triggers a re-render.
06How does authentication work in your project?
Typically the user logs in, the server verifies the hashed password and issues a session cookie or a JWT, and later requests carry that token to prove identity.
07What is a JWT?
A JSON Web Token is a signed token carrying claims such as a user ID. The server verifies its signature instead of looking up a session, which suits stateless APIs.
08Why must passwords be hashed?
So a database leak does not reveal the passwords. Use a slow, salted algorithm such as bcrypt or Argon2, never plain text or a fast hash like MD5.
09What is CORS?
Cross-Origin Resource Sharing is a browser mechanism that controls whether a page on one origin may call an API on another, via server response headers.
10What is responsive design?
Designing layouts that adapt to different screen sizes using flexible grids and media queries, so the site works on phones and desktops alike.
Machine learning
For any ML, AI or data science project. Examiners go deep here, so know your own model's numbers.
01What is the difference between supervised and unsupervised learning?
Supervised learning trains on labelled examples to predict a known target. Unsupervised learning finds structure, such as clusters, in unlabelled data.
02What is the difference between classification and regression?
Classification predicts a category, such as spam or not spam. Regression predicts a continuous value, such as a house price.
03What is overfitting and how do you prevent it?
Overfitting is when a model memorises training data and performs poorly on new data. Prevent it with more data, regularisation, dropout, cross-validation and early stopping.
04Why do you split data into training and test sets?
To measure how the model performs on data it has never seen. A common split is 80:20, often with a separate validation set for tuning.
05What is a confusion matrix?
A table of true positives, false positives, true negatives and false negatives, which shows exactly where a classifier goes wrong.
06What is the difference between precision and recall?
Precision is the share of predicted positives that are correct. Recall is the share of actual positives the model found. F1 score is their harmonic mean.
07Why is accuracy misleading on imbalanced data?
If 99% of transactions are genuine, a model that always says 'genuine' scores 99% accuracy while catching no fraud. Use precision, recall, F1 or ROC-AUC instead.
08What is cross-validation?
Splitting data into k folds, training on k-1 and testing on the remaining one, rotating through all folds, to get a more reliable performance estimate.
09What is a CNN?
A Convolutional Neural Network uses convolution filters to learn spatial features such as edges and shapes, which makes it well suited to images.
10What is transfer learning?
Starting from a model pretrained on a large dataset and fine-tuning it on your smaller dataset, which saves training time and improves accuracy with limited data.
11What is feature scaling and why is it needed?
Rescaling features to a similar range through normalisation or standardisation, so features with large values do not dominate distance-based or gradient-based models.
12Why did you choose this algorithm?
Explain it with evidence: compare it against at least one baseline on the same metric, and relate the choice to your data, such as its size, type and class balance.
Python
For projects built in Python, which is most ML, AI and data science work.
01What is the difference between a list and a tuple?
Lists are mutable and can be changed after creation. Tuples are immutable, slightly faster, and can be used as dictionary keys.
02What is a dictionary?
A collection of key-value pairs with fast average-case lookup by key, implemented as a hash table.
03What is PEP 8?
Python's official style guide, covering naming, indentation and layout so code stays readable and consistent.
04What is a virtual environment?
An isolated Python environment with its own installed packages, so each project's dependencies do not conflict with others.
05What is the difference between == and is?
== compares values. is checks whether two names refer to the exact same object in memory.
06What are *args and **kwargs?
*args collects extra positional arguments into a tuple, and **kwargs collects extra keyword arguments into a dictionary.
07What is a decorator?
A function that wraps another function to add behaviour, such as logging or authentication, without changing its code. It is applied with the @ syntax.
08What is the GIL?
The Global Interpreter Lock lets only one thread execute Python bytecode at a time in CPython, so CPU-bound work uses multiprocessing rather than threads.
Still choosing a topic?
Browse project ideas
Final year and mini project ideas across nine domains, each with a short brief so you can judge the scope.
Viva coming up?
Get a walkthrough
Of your own project
Every kit includes a 45-minute call where we walk you through the code and a viva question bank written for that project.