Team Viva
Updates
19/05/2026:
15/05/2026:
- Added a link to the Marking Criteria.
- New section added: Bringing Notes, Slides etc..
- Other various additions.
05/05/2026:
Overview¶
The main aim of the Team Viva is to give you the opportunity to show off the ROS application that you (as a team) have built for Task 3: to tell us about your approach, the main logic, and why you chose to take this approach. It's also a chance to highlight any novel or impressive aspects of your work that you're particularly proud of. It's also a way for us to make sure the work you've submitted for Task 3 is genuinely yours (more details below).
The Viva is based entirely on the work you've done for Task 3.1
The Viva is assessed independently of Task 3, so even if your Task 3 implementation doesn't quite go to plan when it's assessed, this is your chance to explain your intentions: what should have happened, and why it might not have worked out quite right on the day. Don't panic! Assessment of the Viva is independent of your team's performance in Task 3, so even if you score 0/40 marks in Task 3 you could still get full marks (20/20) for the Viva if you defend your work well.
When & Where¶
Team Vivas will take place during the Spring Exam Period. These will take place in Diamond Computer Room 5.
Following the release of the final Exam Timetable on 5th May 2026, teams are now invited to select a preference for when they'd like their Viva to take place. You can select either a morning (between 9 AM and 12 Noon) or afternoon (between 1 and 5 PM) slot on a specific date, but please note that bookings are first come, first served: once all slots are taken (for a given date / time), that's it!
The booking form is available here (University login required):
The deadline for submitting any preferences is Friday 15th May 2026 (Week 11). After this (and before the start of the Spring Exam Period) a final schedule for the Vivas will be released.
Teams who don't submit a preference will be assigned a slot at random. Bookings should be made as a team, so be sure to chat with all your team members about date/time preferences (if you have any) before submitting these to us.
Schedule¶
| Session Time (approx.) | Details |
|---|---|
| Up to 5 minutes before your start time | Arrive (don't be late) |
| 0-5 minutes | Task 3 assessment |
| 5-20 minutes | Q&A Session |
| 20-25 minutes | Wrap-up & depart |
Please arrive on time to your Viva, anyone who isn't there by their team's start time won't be able to take part, and will get a mark of 0/20!
We'll start each Viva by running the assessment of your Task 3 submission on a robot in the Computer Room 5 robot arena. All team members will be able to watch this, it's your chance to see how your code performed! This will take up the first 5 minutes of the Viva (at most). There won't be any opportunity to modify your code during the Viva, nor can you request for the assessment to be restarted or re-run. The assessment of Task 3 will be done only once, sorry!
After your team's Task 3 assessment is complete, we'll move on to the Q&A session.
Recording¶
A camera and microphone(s) will be set up to record the assessment of Task 3 only (not the Q&A session). These recordings will allow us to double-check the marking, and we'll share these with you afterwards (when we release the final marks).
Attendance¶
ALL team members are expected to attend their Team's Viva, unless any individual has valid and approved extenuating circumstances that prevent them from attending (any extenuating circumstances must be submitted in the usual way, according to University Policy and Procedure).
If a team member doesn't show up to their team's Viva (or arrives too late), they'll get 0/20 marks for this component of Assignment #2 Part B. We won't be able to reschedule Vivas for individuals or teams who miss their slot, so please be there!
The Q&A Session¶
This is the main part of the Viva, and it's worth 20/60 marks for Assignment #2 Part B. In attendance will be the whole of your team (as above), plus Tom Howard and Alex Lucas. No other teams, students, GTAs or staff will be present.
Core Assessment Points¶
Every team member should be prepared to answer questions about the team's entire code base, not just the parts they may have contributed directly. Be ready to talk about the whole thing!
At a minimum, we will ask team members to describe / discuss the following, and support all explanations with examples (i.e. referring to specific parts of your code).
- A high level overview of how your implementation works (i.e. the core strategies / logic of your application).
- The intention behind specific algorithms.
- An explanation of certain behaviours that were observed during the Task 3 assessment, and indication of the specific parts of your code that were responsible for this.
- Discussion of potential weak points or edge cases and how these could be improved.
During the Viva we will have your code loaded up (in VS Code) on a screen for us all to see. You'll be able to look through this and highlight key parts to us, to support any of your explanations. We (Tom and Alex) may also pick out certain parts of it ourselves, and ask you to explain this to us. The code will be provided by us and will be the version taken at the submission deadline. The .git directory will have been removed, so it won't be possible to roll back to a previous commit or pull any changes made after the deadline!
Note
Any discussions must be based on the version of code that was taken at the deadline, as provided by us!
Bringing Notes, Slides etc.¶
The Viva will be more of a conversation than a presentation, and the discussion will be led by us (Tom and Alex). Teams won't have the opportunity to give a talk/presentation, so it's not necessary to prepare presentation slides.
You may bring along notes if you think this will help to jog your memory on key aspects of your work. Ultimately though, we want you to demonstrate your understanding of the work that you have done, and to explain it effectively, so you must be able to answer questions without reading directly from a script.
Finally, as discussed in the previous section, we will have your code available for you to refer to throughout the Viva. Teams shouldn't expect to present their own copy though, as we need to ensure that the version discussed is the version that was actually submitted!
Marking Criteria¶
Example¶
To be awarded a 1st Class mark for the Viva (70-100%), we would expect a team to be able to speak fluently about their application and explain the various facets of it in great detail, answering all questions in depth and backing up their discussions with a range of examples from their code.
From a team such as this, we would expect to see evidence of things like:
- A detailed discussion of how a recognised robot navigation algorithm (Dijkstra, A*, spiral search, a Braitenberg vehicle etc.) has been implemented using the ROS 2 framework, drawing upon various examples in code to support the explanation.
- Demonstration of an implementation that uses a variety of facets of ROS 2. Showcasing (for example) a well-designed, distributed/modular system of intercommunicating nodes. Highly effective use of (again, for example) action servers that encapsulate discrete behaviours for the system and take full advantage of features such as feedback and cancellation.
- Examples of novel aspects to the implementation such as highly optimised feature recognition for pillar detection. Discussion of known weaknesses in the application to certain edge cases (whether observed or not), and how they could be addressed given more time / research / resources.
- Consideration made to limitations of the physical system (e.g. latency, camera resolution, LiDAR noise) and examples of features in the application that were designed to address this.
(Note that the above is not an exhaustive list!)
Assessing Individual Contributions to Team Work¶
Much like Assignment #2 Part A, you'll be asked to complete a Buddycheck Peer Evaluation for Part B ("Peer Evaluation 3"), the deadline for this will be 23:59 on Friday of Week 12.
This Buddycheck evaluation will be used to determine individual contributions to team work, and Buddycheck scores will be used to calculate marks for each individual team member, based on the team's final marks for Assignment #2 Part B. Sometimes, the Viva may be used to verify information from the Buddycheck reports. We'll review Buddycheck reports before your Viva, and if there are any significant issues or conflicts, we might ask the team (or individuals) to elaborate on this.
Release of Marks¶
As above, teams will be able to watch the assessment of their Task 3 submission at the start of the Viva, so provisional marks for Task 3 will be discussed with you during this part.2
The marks awarded for the Team Viva itself won't be discussed with you on the day. Final marks and feedback for both assessment components (Task 3 and the Team Viva) will be released within 5 weeks of the Assignment #2 Part B submission deadline.
Use of Generative AI¶
You're allowed to use Generative AI ("GenAI") to support your team's work on Task 3. But, if you do use it make sure it's to inform your work, not create it for you.
For more information on the use of GenAI in assignments please refer to this section of the COM Student Handbook, as well as central University guidance on the use of GenAI in assessments.
Acknowledge, Describe, Evidence¶
All teams MUST include an AI-Declaration.md file at the root of their package directory:
This file must be named exactly as stated above. The content must follow the template provided below, and be completed accurately to reflect your team's use of AI for Task 3:
AI-Declaration.md templateImportant!
Don't forget the AI Declaration file! If it's not in your package repository by the Assignment #2 Part B deadline, penalties will be applied to your team's mark.
Scrutiny of GenAI Usage¶
As discussed above, during the Vivas we'll ask you to explain specific details about the code you've submitted for Task 3, its purpose and function, and why you chose to implement it this way. If we suspect code has been created by GenAI and you can't explain any aspect of it to us satisfactorily, the submission will be investigated for academic misconduct. In serious cases, the team could receive 0/60 marks for Assignment #2 Part B overall.
And if you have any further questions, please ask Tom or Alex.
-
We won't ask you anything related to Assignment #2 Part A (Tasks 1 & 2), but if you used this as the basis for your Task 3 implementation, and you'd like to explain this, then that's fine. ↩
-
Task 3 marks may be subject to change after recordings have been reviewed. Provisional marks also won't include any penalties that may be applied (where applicable). ↩