A viva (or viva voce) is a short, in-person oral exam. You show understanding by explaining ideas out loud, working through a small example, and answering follow-up questions. It is not a memory quiz and not a code-style review. It is a quick check of what you actually understand.

A typical viva lasts about 8-10 minutes and takes place in the instructor’s office. You should expect to use a whiteboard or scratch paper to work an example. No notes. For programming vivas, bring your own machine only if the assignment says that you may be asked to run code live.

Booking

You will book a slot through the Google Calendar link provided in the assignment. You must book within the window stated there. If the posted slots do not work, email well in advance to arrange a time. Unarranged no-shows count as misses.

What happens in the room

  1. Setup (about 30 seconds). We confirm the topic and rules.
  2. Your statement (about 1 minute). You restate the claim you will establish or the task you will complete.
  3. Mechanism (3-4 minutes). You explain the core idea: for example an invariant, a safety argument, an algorithmic structure, or a data-structure law.
  4. Concrete instance (2-3 minutes). You work through a small example. I may give you one, but you should also be ready with one of your own.
  5. Follow-ups (2-3 minutes). I ask short questions about variations, edge cases, or transfer to nearby situations.
  6. Decision (under a minute). I give a pass/redo decision or the assignment-specific score, along with one sentence of guidance.

Scoring Models

The exact scoring model depends on the assignment. The assignment page controls if it disagrees with this general page.

  • Some vivas are pass/fail.
  • Some are pass/redo.
  • Some use a more detailed rubric.

Pass or redo

A pass requires a correct statement of the claim or task, a correct explanation of the mechanism, a correct run-through of a concrete instance, and coherent answers to follow-up questions.

A redo is a chance to fix a specific gap. Unless the assignment page says otherwise, each viva has at most one redo window before a fixed deadline.

Preparation

Prepare for explanation, not recitation. You should be able to state what the method does, name the key invariant or representation law, run a small instance cleanly, handle edge cases, and answer a “what if …?” variation.

For algorithms, formal systems, and logics, you should know the relevant rules and operations from memory. For programming vivas, be ready to point to the exact lines that implement the mechanism being discussed.

Academic integrity

You may use any resources while preparing. During the viva, no notes and no outside help. Do not share the details of your oral exam with other students.

For code-based work, you must be able to explain your own code solo, even if you worked with a partner. If you cannot explain your own work, it does not count.

Rescheduling and no-shows

You may reschedule up to 12 hours in advance if slots remain. No-shows without cause count as misses. Make-ups, if granted, must occur within the assignment’s window.

Accessibility

If you need an accommodation, email early so we can arrange an alternate window or format consistent with the assignment.