Index: An Incremental Blog
Newer: Preprocessing and Text-Embedded Programming (PTEP)
Older: Starfish: The First Example
[ Vlado Keselj | 2020-06-17..2023-02-24 ]

About Computer Science Thesis Structure

The question of expected thesis structure comes up often in Computer Science research training and education. It is most often about expectations of a Master's thesis, but most of the advice on the structure here applies to PhD theses, undergraduate theses, project reports, and research papers in general. One reference that I usually recommend on the topic is A Simple Approach to Thesis Writing, by Tim Brecht, which is adapted from an advice from Alan Mackworth. This is the structure I would recommend, but I would also like to add some notes here based on my experience.

Overall Thesis Structure

I would start with a basic thesis structure similar, but not identical to Brecht's structure: This structure, and particularly chapter titles, should not be read as a too strict expectation, but it is important to understand their functionality, so when we make exceptions they should be well-justified.

Style Remarks

I will describe here some style suggestions that I frequently use when reviewing theses. Some of them may be my pet peeves and if you think that I am wrong, please send me an email.

SR1: Use of LaTeX of TeX: It is generally recommended that you use LaTeX or TeX for writing theses and research papers in Computer Science, Math, and other technical disciplines. Other tools, such as Microsoft Word, can be used but it generally harder to achieve the same style and aesthetic level of typesetting.

SR2: Single quotes, double quotes: Proper opening and closing single quotes should be used. If you use TeX (including LaTeX), this means that opening single quote is typed as ` (backquote), closing quote is typed as ' (quote), and opening double quote is typed as `` (two backquotes), and closing double quote is typed as '' (two quotes). The double-quote character (") should generally not be used in TeX, with some exceptions in typewriter font (\tt) when used for example to show program code. (good reference: TeXbook)

SR3: Citation as a word: Do not use citations as words or phrases in a sentence -- they are just annotation, so should be "invisible" for reading flow of the sentence. For example, instead of "Dijkstra in [14] published..." one should write "Dijkstra [14] published...". Other examples of use of citations as words are "[5] discusses...", "The following paper [6] compares...", "Another relevant paper, namely [8], ..." which should simply be "Another relevant paper [8]...", etc.

SR4: No citations in abstract: Do not include citations in abstract. The abstract should be written in such way that if someone has only the title and abstract available, they should be self-contained and they should get some information about the paper that does not require looking up the full paper.

SR5: Em-dash and other dashes: Always use the appropriate dashes, and TeX (including LaTeX) makes it easy. Use hyphen (single -) for compound words like "e-mail", use em-dash (triple --- in TeX) for intersentence punctuation---like this, use en-dash (double -- in TeX) for number ranges, like 2--12, and use math minus ($-$ in TeX) for mathematical minus like in $12-7=5$.

SR6: Long variable names: In TeX math mode, use \textit{...} for long variable names, to have them properly formatted. Otherwise, kerning between letters is wrong, and any hyphen is interpreted as a minus sign for example.

SR7: Capitalizations of Titles: Titles of papers, theses, chapters, sections, and subsections should be properly capitalized. All words should start with capital (i.e., upper-case) letters except some very frequent functional words such as "the", "in", "of", and similar. This is called the Title Case and it is for example required by the FGS thesis format guidelines of the Dalhousie University.

SR8: Line breaks: An end of line should not appear at some places in text even though there are spaces at those positions. For example, a line should not be broken between words "Mr." and "Smith", or just before a citation like "[53]" so that the citation appears at the beginning of a line. This is prevented by use of a non-breakable space, which is called a tie in TeX and LaTeX and is obtained by use of the tilde (~) character. In Word, it is obtained by inserting non-brekable space as a special character, and in HTML it is obtained by the   entity. The most common place where a tie should be used is before citations, such as Smith~\cite{refid}, or Smith {\it et al.}~\cite{refid}. It should also be used at the end of a list, as in A, B, C, and~D., after titles such as Dr.~Knuth, Mr.~Smith, and similar. This is well-discussed in the TeXbook.

Content Remarks

This section should include remarks on the semantic content of the work.

Motivation: Motivation for the research problem should be clearly presented. The primary section to present motivation is the first, Introduction, section, but it is sometimes important to make it clear even in the abstract. Under the term `motivation', we basically mean a justification why it is worth exploring this problem. To express it in other words, motivation is about this problem is significant, why will the world be a better place if we solve this problem, are we going to save some time, money, or lives if we solve this problem, why should we care about this problem. This is a part of four important questions about contribution emphasized in Brecht's page: What is new, different, better, significant? The "significant" part is about motivation. For example, we may want to study the question about whether a buttered toast indeed lands more frequently on its butter-side when it falls on the floor, but is really a significant question worth our time and attention. BTW, it may be interpreted as a subjective question but remember that it is not sufficient to believe it ourselves but we need to convince a reader too that it is worth their reading time.


  1. This post is a work in progress.
  2. Short link for this post:

created: 2020-06-17, last update: 2023-02-24, me comments

© 2020-2023 Vlado Keselj, last update: 02-Dec-2022