skip to content

Department of Computer Science and Technology

 

The dissertation should be written for a technically competent reader who is not necessarily familiar with the particular aspects of Computer Science involved. Better grades will arise from clarity and ease of reading, good pictures, clear explanation, minimal jargon and appropriate use of equations. Writing a dissertation requires planning and time. You should allow at least four weeks for the task.

Dissertation PDF files must be

  • formatted for A4 paper;
  • Typeset in 12-point font with a minimum of 2 cm margins;
  • less than 15 megabytes in size;
  • (ideally) use embedded fonts.

The main body of the dissertation, running from the first page of the introduction until the last page of the conclusions, shall not exceed 40 pages nor exceed 12,000 words in length. Students should ensure the main body of their dissertation (pages 3 onwards) as well as any appendices do not contain direct personal identifiers (i.e. their name or their CRSID).

Examiners and Assessors are permitted to judge your work only through study of your dissertation, although they will require your original source code to be available for them to refer to in cases where clarification is needed.

To facilitate the assessment process, the Examiners require the top-level structure of the dissertation to be strictly as follows:

  • Cover page
  • Declaration of originality
  • Proforma
  • Table of contents
  • Chapter 1: Introduction
  • Chapter 2: Preparation
  • Chapter 3: Implementation
  • Chapter 4: Evaluation
  • Chapter 5: Conclusions
  • Bibliography
  • Appendices
  • Index
  • Project Proposal

It is not the intention of the Examiners to constrain writers too greatly. Although the layout of the Cover Sheet and the arrangement of the Proforma are tightly specified, the organisation and length of each of the five chapters are allowed to vary considerably from one dissertation to another. Further details are given below.

The cover page

The single cover page contains

  • Your Name, in the extreme top right-hand corner
  • The Title of your Dissertation.
  • The Examination for which you are a candidate.
  • Your College and the Year in which you are submitting the Dissertation.

Declaration of originality

All dissertations must include an anti-plagiarism declaration immediately before the Proforma. The declaration must have exactly the following syntax:

I, [Name] of [College], being a candidate for Part II of the Computer Science Tripos, hereby declare that this dissertation and the work described in it are my own work, unaided except as may be specified below, and that the dissertation does not contain material that has already been used to any substantial extent for a comparable purpose. [I am content for my dissertation to be made available to the students and staff of the University.]

Signed [signature]

Date [date]

You may either include a scanned copy of your signature or type your full name in place of a handwritten signature.

The University drafted the wording, which is similar to that relating to dissertations in a wide range of subjects; thus the "unaided except as may be specified below" clause merits some explanation:

  1. The clause does not require acknowledgement of the project supervision or informal conversations with peers.
  2. The clause is also intended to cover collaborative projects which are not now permitted in Computer Science. As such this aspect is irrelevant to Computer Science dissertations.
  3. This clause aside, and notwithstanding 1 and 2, candidates are required to draw attention, in the Implementation chapter, to the parts of the work which are not their own, in accordance with the Implementation section below. Other acknowledgements should be given wherever appropriate.

The Department would like past dissertations to be made available for teaching purposes and for your references. These will be accessed on the Computer Science departmental website under Raven password protection. You should include the last sentence of the declaration if you are willing for your dissertation to be accessed for these purposes; otherwise you may remove it.

The proforma page

The single proforma page is a preface that immediately follows the declaration of originality. The proforma page, as well as all subsequent pages of the dissertation should not include direct personal identifiers such as your name or CRSID. The Proforma must be arranged thus:

  • Your candidate number.
  • The Title of your Project.
  • The Examination and Year.
  • Word-count for the dissertation.
  • Final line count: Number of lines written by the student in the final version of their software.
  • Project Originator.
  • Project Supervisor.
  • At most 100 words describing the original aims of the project.
  • At most 100 words summarising the work completed.
  • At most 100 words describing any special difficulties that you faced. (In most cases the special difficulties entry will say "None".)

It is quite in order for the Proforma to point out how ambitious the original aims were and how the work completed represents the triumphant consequence of considerable effort against a background of unpredictable disasters. The substantiation of these claims will follow in the rest of the dissertation.

Student Administration will ask students to resubmit any dissertation which does not include the relevant cover page, declaration and proforma. If such a resubmission occurs after the deadline this will result in a late submission penalty.

Table of contents

This should list the contents in some sensible way.

Introduction

The introduction should explain the principal motivation for the project and show how the work fits into the broad area of surrounding computer science and give a brief survey of previous related work. It should generally be unnecessary to quote at length from technical papers or textbooks. If a simple bibliographic reference is insufficient, consign any lengthy quotation to an appendix.

Preparation

Principally, this chapter should describe the work which was undertaken before code was written, hardware built or theories worked on. It should show how the project proposal was further refined and clarified, so that the implementation stage could go smoothly rather than by trial and error.

Throughout this chapter and indeed the whole dissertation, it is essential to demonstrate that a proper professional approach was employed.

The nature of this chapter will vary greatly from one dissertation to another but, underlining the professional approach, this chapter will very likely include a section headed "Requirements Analysis" and refer to appropriate software engineering techniques used in the dissertation. The chapter will also cite any new programming languages and systems which had to be learnt and will mention complicated theories or algorithms which required understanding.

It is essential to declare the starting point. This states any existing codebase or materials that your project builds on. The text here can commonly be identical to the text in your proposal, but it may enlarge on it or report variations. For instance, the true starting point may have turned out to be different from that declared in the proposal and such discrepancies must be explained.

Implementation

This chapter should describe what was actually produced: the programs which were written, the hardware which was built or the theory which was developed. Any design strategies that looked ahead to the testing stage should be described in order to demonstrate a professional approach was taken.

Descriptions of programs may include fragments of high-level code but large chunks of code are usually best left to appendices or omitted altogether. Analogous advice applies to circuit diagrams or detailed steps in a machine-checked proof.

The implementation chapter should include a section labelled "Repository Overview". The repository overview should be around one page in length and should describe the high-level structure of the source code found in your source code repository. It should describe whether the code was written from scratch or if it built on an existing project or tutorial. Making effective use of powerful tools and pre-existing code is often laudable, and will count to your credit if properly reported. Nevertheless, as in the rest of the dissertation, it is essential to draw attention to the parts of the work which are not your own. 

It should not be necessary to give a day-by-day account of the progress of the work but major milestones may sometimes be highlighted with advantage.

Evaluation

This is where Assessors will be looking for signs of success and for evidence of thorough and systematic evaluation. Sample output, tables of timings and photographs of workstation screens, oscilloscope traces or circuit boards may be included. Care should be employed to take a professional approach throughout. For example, a graph that does not indicate confidence intervals will generally leave a professional scientist with a negative impression. As with code, voluminous examples of sample output are usually best left to appendices or omitted altogether.

There are some obvious questions which this chapter will address. How many of the original goals were achieved? Were they proved to have been achieved? Did the program, hardware, or theory really work?

Assessors are well aware that large programs will very likely include some residual bugs. It should always be possible to demonstrate that a program works in simple cases and it is instructive to demonstrate how close it is to working in a really ambitious case.

Conclusions

This chapter is likely to be very short and it may well refer back to the Introduction. It might offer a reflection on the lessons learned and explain how you would have planned the project if starting again with the benefit of hindsight.

Bibliography

It is common, but not mandatory, to have a bibliography. Attention should be given to correct and consistent formatting.

Appendices

It is common, but not mandatory, to have one or more appendices. Assessors like to see some sample code or example circuit diagrams, and appendices are the sensible places to include such items. Accordingly, software and hardware projects should incorporate appropriate appendices. Note that the 12,000 word limit does not include material in the appendices, but only in extremely unusual circumstances may appendices exceed 10-15 pages. If you feel that such unusual circumstances might apply to you you should ask your Director of Studies and Supervisor to discuss this with the Chairman of Examiners. Appendices should appear between the bibliography and the project proposal.

Index

An index is optional.

Project Proposal

A copy of the original project proposal must be included at the very end of the dissertation.