Guidelines for the Master or Bachelor Thesis
These guidelines mostly refer to master theses, but they also apply to bachelor theses (except that the latter are typically shorter)
For most students, the master thesis is the first larger written work. These guidelines should provide some assistance during writing of the master thesis. They contain recommendations, rules and tips for preparation, structuring and layout. The rules described here are not "THE LAW". We nevertheless expect students to voluntarily observe the guidelines, as this increases the probability of a positive grade when the master thesis is finally approved by the supervisor.
These guidelines are meant for master students in computer science. They assume that the subject of the work is the development of software that shall be documented in the master thesis. Some master theses have a more theoretical subject or deal with literature. If that is the case, the thesis will require a different structure, which means that some of the recommendations will not be applicable.
A bachelor thesis is basically a "small master thesis". In computer science, most bachelor theses also have to do with development of some piece of software. The extent of the work is typically smaller, which means that less documentation is required. For this reason, 25 pages are usually enough for a bachelor thesis, and it should definitely not exceed 40 pages. Otherwise, the following guidelines also apply.
Purpose of a master thesis
The requirement to write a master thesis is not a chicane; the master thesis serves as
Writing a master thesis requires careful planning in advance. It is strongly recommended to write the parts of the thesis in the same order in which it is supposed to be read later. This increases the probability that the thesis can be read fluently, without logical breaks and unknown terms (which are used before their definition). However, this requires that the work on the master thesis starts with a plan.
Begin with a table of contents. Constrain yourself to major (chapter) headlines and two-digit section headings (such as 2.3). Extend the table of contents with
The estimation of the number of pages gives an indication of the focus of the thesis. If a major part is significantly smaller than a secondary part (such as the introduction), you may need to revise the structure. If individual chapters get too long, you should consider splitting them into multiple smaller chapters.
Select keywords such that you still remember what you meant when you eventually reach that point as you write the thesis from start to end. It is also a good idea to note a few rhetorical questions that you want to answer in the corresponding chapter. Put yourself in the shoes of the reader and try to anticipate questions he might ask. When you are done with the chapter structure, use the keywords and rhethorical questions to verify that the chapters and sections are in a logical order and that you can avoid most (if not all) forward references to subsequent chapters.
Discuss the extended table of contents with your supervisor, before you begin writing the thesis. Ask for feedback about the structure in order to reduce the risk of missing important parts.
It is highly recommended to make notes already during the project. A project diary helps you to remember the progress of the project, encountered problems and their solutions. It is also helpful to keep track of aberrations and failures. If an approach did not work out, you may still want to document it, explain why it did not work as expected, and which alternative route you eventually took. Such "lessions learned" can be more helpful for readers than a smooth story that pretends that everything worked exactly as initially planned.
The target audience of the master thesis are other computer scientists, who are familiar with the foundations of software development. Try to see your own theses through the eyes of a colleague who wants to learn more about what you have done. If you discuss the technical foundations in too much detail or length or use long-winded explanations for simple things, most readers will find your thesis boring to read. On the other hand, descriptions that are too brief leave the impression of being incomplete.
Finding a good balance between brevity and exhaustiveness is not easy. The best representation depends on the difficulty of the topic. As a general guideline, you should strive to fit the contents of the thesis within about 80 pages. To enforce a brief and compact style, we limit the extent to at most 100 pages. Instead of trying to fill as many pages as possible, rather try to cover the relevant aspects in as few pages as possible. In particular, do not stretch your thesis by adding empty talk, oversized screenshots, pages of source code, or long explanations of all the variables in your code. Always remember that your master thesis will be assessed by its contents, not by its length.
If you are in doubt, consider whether you would like to read all the details of a lengthy explanation. Would you really want to study all the technical details, or would you rather skip a section that is too elaborate?
Your master thesis should contain everything that is necessary to understand your work. It should be complete, but you can expect basic knowledge from the reader. The complete source code does not belong in the master thesis. If necessary (discuss this with your supervisor), you should submit the source text separately on CD or DVD, or deliver a printed copy of the source text as an extra document.
Try to describe the subject of your thesis from multiple perspectives. In particular, you should cover the following aspects:
The order of the items in the above enumeration has proven useful, but you do not need to slavishly follow this arrangement.
When you describe your own work, it helps when you are proud of your achievements. Plain technical descriptions are often boring to read. if you are enthusiastic about your solution and the results, you will write in a lively style that makes your thesis a pleasure to read. Try to involve the reader with rhethorical questions. Explain problems and show which ideas lead to your solution.
When you plan the chapter structure of your thesis, it is recommended that you proceed in a top-down fashion. Think about what you want to say in which chapter, then successively decompose the contents, similar to stepwise refinement.
You can use the following basic scheme for structuring your thesis:
The recommended structure shown here does not necessarily need to correspond to the chapters. It could, for example, be reasonable to spend more than one chapter on the implementation or to combine technical data and review into a single chapter. In some cases, it may also be a good idea to swap the order of chapters, for example when the implementation concepts of a class library are necessary to understand how it can be used.
Make sure to handle the basics first, so that subsequent chapters can refer to them.
Avoid too deeply nested chapters and sections. Three levels (1.2.3) are usually sufficient.
Tiny sections with just a few lines do not justify a separate section heading. If that happens, do not artificially blow up the contents, but rather revise the section structure.
You should also create a logical structure within sections. For example, paragraphs, indentations and sub-headings without numbers can improve readability. At any rate, split long paragraphs into shorter ones at logical "break points".
Literature and appendixes do not have chapter numbers. Whether or not appendixes are a good idea depends on the subject of your thesis. You can insert short pieces of source code (less than a single page) directly in the relevant chapters; longer program fragments (which would disturb the flow of reading, but are not absolutely necessary for understanding a chapter) can be banished into an appendix. This is, by the way, one of the rare cases where a forward reference is acceptable.
The description of the best program will be awkward to read if the reader is distracted by bad style. Unfortunately, good writing style cannot be learned in the fast track; it requires experience and practice. In school, we typically learn writing stories and essays, but not technical writing. The following points give a few hints that might help during writing a master thesis.
Layout and typography
The visual appearance of the master thesis gives a first impression of the quality. A thesis with a clean and aesthetic layout is pleasant to read. The following enumeration gives a few hints for adequate formatting.
Master theses need to comply to certain formal criteria. Since these rules are subject to change, they are not explicitly listed here. Please contact the Department of Examination and Recognition Services for up-to-date information (see here for general guidelines; to read the English version, click the "EN" link in the top right). The rules for the overall form of master theses can be found here (in German).
As soon as you have finished the table of contents, show it to your supervisor.
When you have finished your thesis, check it for typical errors:
When you are convinced that you have done everything for a good master thesis, hand a "preliminary final version" over to your supervisor, who will then check your thesis once for completeness, structure and style. It is then up to you to incorporate the feedback into your thesis.
Please consult the Department of Examination and Recognition Services and ask about the official deadlines and time limits. Your supervisor may need about two weeks to check the preliminary version, and you will need to allocate sufficient time for the final touches, copying and binding.