As part of their MSc or final year MSci studies, all students undertake a substantial individual Computer Science project, resulting in a dissertation. The projects are guided by at least one supervisor from the School.

Dissertation projects will involve different sets of skills and explore different areas of computer science. They may be very technical, or very mathematical, or involve design and interviews, focus on system building, or involve detailed analysis of existing solutions. However, they are all expected to be equally difficult, and of equal quality.

For the MSc, the dissertation also has to be clearly related to the specific MSc programme. I.e. an MSc AI dissertation has to fall broadly into the area of AI, and an MSc HCI dissertation should be related to human-computer interaction. Dissertations in one of the IT programmes have to demonstrate competence in non-trivial use of IT.

The development and supervision process is decided by the student and supervisor but will involve regular meetings to decide direction and monitor progress. Each student is responsible for managing and completing their project.

There are deliverables due at fixed points throughout the project, but marking is holistic. The outcome will be an artefact such as a product, software, or a formal system. Although many projects involve software development, this is not a requirement.

Although many dissertations create exciting new results, the projects are not expected to advance the state of the art the way PhD theses are. However, there has to be a novel element to the work, not simply repeating existing work. It is important that the projects are challenging enough and demonstrate your ability to apply CS and/or IT skills gained through your degree to a large, complex problem.

Important people

Please use the appropriate alias and not personal email addresses to avoid unnecessary delays.

MSc dissertation modules

CS5099 - Dissertation in Computer Science (60 credits)

  • For students on our postgraduate MSc programs. This is an individual project.
  • Done over the summer (May-Aug)

CS5098 - Group Project and Dissertation in Computer Science (60 credits)

  • For students on our postgraduate MSc programs. This is the group version of the dissertation.
  • There is a degree of collaboration with other students, but write-up and evaluation are individual.
  • Done over the summer (May-Aug)

CS5199 - Individual Masters Project (60 credits)

  • Only available to students in the final year of the 5-year integrated MSci programme.
  • Done over one semester (choice of S1 or S2).
  • Very similar to CS5099 in terms of deliverables and expectations.

CS5899 - Erasmus Mundus Dissertation in Dependable Software Systems (45 credits)

  • Only available to students on the DEPEND Erasmus project in Dependable Software Systems.
  • Starts in S2 and continues until mid July

CS5898 - Special Project for Dependable Systems (45 credits)

  • Only available to students on the DEPEND Erasmus project in Dependable Software Systems.
  • Starts in S2 and continues until mid July

Project allocation process

Allocation for CS5099/CS5098 usually takes place in S2. With regard to those modules, your dissertation project may be completed individually (subject to ballot), or may be part of a larger project which involves group work, see CS5098 below. In both cases, you will write an individual dissertation, which is graded individually.

Allocation for CS5199 usually takes place in late S2 and over the summer. Allocation for CS5899/CS5898 usually takes place in S1.

Allocation centres around the project blog

Staff advertise projects on the blog and students can look for interesting projects. Students should come up with a shortlist of projects and contact the supervisors directly to discuss the project, the requirements (background knowledge and experience, what is expected in terms of programming or maths, supervision style, etc.). Keep in mind that some supervisors get many requests from students and that there is a limit per supervisor.

Once both the supervisor and the student agree, the student should email the project coordinator (and CC all supervisors) to register this choice. The final allocation is done by the project coordinator. The allocation is not finalised until the project coordinator confirms the allocation.

The blog allows sorting based on topics, modules, and tags, but these are meant mostly for guidance, so do approach a supervisor if you are interested in a topic even if your module is not explicitly listed.

Proposing own dissertation topic

A small but significant number of students choose to propose their own project. This is fine, but is a bit more involved because the original idea often needs to be refined together with a potential supervisor to make sure that it is relevant, doable, and challenging. Make sure to leave some extra time if you decide to go down this route – don’t leave it to the last moment!

In this case, the student writes a 1-2 page summary of what they propose to do, how they propose to do it, and what the outcome will be. Then they can contact a potential supervisor (typically someone with expertise in the topic) asking them to supervise. If you are not sure who would make the best supervisor for a particular topic, contact the project coordinator to make some suggestions.

Once the project is agreed, email the coordinator (and CC the supervisors) as before.

Project deliverables (CS5099/CS5098)

These are the same for most CS-coded dissertations. The exact deadlines are set separately for each year, and the example deadlines listed below are for orientation only. The dates on MMS are definitive.

Description, Objectives, Ethics & Resources (DOER)

– End of week 1

Ethics application

  • End of week 1

Outline and Context Survey

  • end of week 2

Prototype and Interim Demo

  • End of week 6

Final report & artefact - Around mid August

Poster & demo

  • Shortly after final submission.

All deliverables are mandatory and you may be issued an academic alert if you miss them. Regular meetings with the supervisors are also mandatory.

Deliverables for CS5199 and CS5899/CS5898 are mostly the same, but the timing will be different – please refer to MMS for definitive dates. CS5899/CS5898 will have additional requirements in the form of a poster and presentation which will be covered during the induction session.


The DOER is a short document you will need to submit as your first deliverable. It is not a form, and has no fixed template, but is a mini report of its own. It generally consists of about two pages of text.

You and your supervisor will have to agree on everything in the DOER document. Typically, the process looks like this:

  1. Schedule a meeting with your supervisor(s) to flesh out the description, objectives, and any needed resources.

  2. Write this all up in a word processor, following the structure presented above.

  3. Present this to your supervisor(s) and make sure you all agree with the contents (this can be done via email or in person).

  4. Submit the DOER to MMS.

In the DOER you must include the following four sections.


The title and a short description of the project aims, context and background. It should explain the big picture of what you would like to achieve, why it is important, and how you intend to go about doing it (e.g. by using some kind of technology or developing a new algorithm, or following a particular methodology, etc.)


This is a list of clearly defined, measurable goals you intend to achieve by the end of your project. This could include any software artefacts you intend to submit in the end, results of an evaluation (for surveys or research algorithms), etc. Your performance will be measured against these objectives.

Typically, you will list about 3–5 primary objectives which are necessary for a project to be deemed successful, and further 3 or so secondary objectives which allow a successful project to be extended in an interesting direction. Occasionally, tertiary objectives may also be listed, but these are comparatively rare.


Here you should discuss any ethical considerations pertaining to your project. Start with the self-assessment form from the Student Handbook (Ethics section). If you can answer “No” to all questions on the self-assessment form, this section of the DOER document will be brief and state that there are no ethical considerations.

If you are planning to work with people (especially children), animals, sensitive private data, or if there are other considerations, you should discuss them here, and explain how you went about obtaining necessary approval (any Ethics applications).

The self-assessment form and any other relevant documents (if applicable) should be scanned and uploaded to the “Ethics” slot on MMS. See the Ethics section below.


This is a list of any special resources your project will need: hardware, software, licenses, access to infrastructure (e.g. compute servers), drones, etc. Think ahead, but be realistic – the School will not be able to fulfill all requests.

Most projects can be completed using standard school equipment, in which case this section will contain only a short statement confirming this.

Ethics approval process

Many projects will require ethical approval. This may involve sensitive or personal data, medical records, conducting interviews, or similar. The procedure is described in the Ethics section of the student handbook.

The basic process is as follows:

  • Fill the self-assessment form
  • If not covered by the self-assessment form, check the CS-specific ethics form
  • If not covered, a full ethics application is needed

In all cases, upload a draft to MMS by deadline. Projects that fail to get ethical approval may endanger the project and the degree so do take this seriously!

Outline and Context Survey

This deliverable consists of the first draft of your dissertation – normally as one PDF document. There are three elements:

  • table of contents with all the chapter and section headings. These will form the skeleton of your thesis and ensure that your report is properly structured;

  • a mostly complete review of related work (literature review). This is normally 5-10 pages long and will include citations to most important papers on this topic and explain how they relate to the task;

  • a work plan for the rest of your dissertation period (week-by-week) indicating the main tasks and objectives you will need to tackle and when you will be doing this. This is usually in the form of a table, a Gantt chart, or similar.

Prototype and Demo

Partway through the project, you will upload your current work to MMS. This can include all your code, any drafts of the report, evaluation scripts, outputs of your algorithms such as graphs, evaluation data, etc.

You should also make arrangements to show your work to your supervisor, especially if you do not normally demonstrate your work during your regular meeting. This deliverable is mandatory and failure to submit will result in an academic alert.


MSc and MSci projects are evaluated by two CS academics. Normal coursework descriptors apply. Assessment will be based on the report, any demonstration, and the quality and difficulty of any submitted artefacts. The markers will agree a joint mark and feedback which will be released to the students once all marks are finalised.

Final report

The final report is extremely important!

It will form a major part of your final mark, and a poor report can undo a lot of otherwise good technical work. The report should show that you understand your work, show where the design and work went, and convince the markers that it is important and valuable. It should critically reflect on the project and what was achieved.

Reports should be understandable to any of our faculty – not all markers will be specialists in all fields. Sending a draft to your supervisor for comments is very important and the more time you leave for this, the better the result is likely to be.

There are examples of past reports in the project library on the student handbook and it is good to study them, as well as looking at the report guidance.

There is a hard 15,000 word limit on all PGT dissertations, including MSc reports. This is university-wide and cannot be waived. A good report will be well-structured, clear and informative, demonstrate understanding of the topic and related work, and not be overly verbose. Talk to your supervisor for tips and feedback.

Note that there is no word limit for MSci dissertations.


There is a 600 MB limit for MMS submissions. Nobody should be uploading anything near this much. Your submission should include your report, and any artefacts developed by you such as original code, scripts and build instructions, configuration files, etc. It should not include:

  • other people’s code, such as libraries
  • copies of repositories (provide a link to the repository instead)
  • python or javascript module trees
  • virtual machines such as JVM
  • machine learning datasets (especially not sensitive ones, like medical datasets!)

Back to top

Last Published: 25 Nov 2022.