Information about Diploma/Master thesis process
A diploma or master's thesis aims at demonstrating the student’s ability to apply computer science methods in a larger project mostly self dependently. In practical computer science such projects often appear as extensions of larger software systems developed within scientific research projects at the chair. In such a case the thesis consists of an implementation part (including documentation!) and a written elaboration on the theoretical foundations. A detailed discussion of computer science problems and an analysis of computer science methods which are used must always be at the center of the investigation. Even for more application oriented theses these issues have to be considered at least equally important to the analysis of the application area.
All the details below apply to diploma as well as master's theses – they are not treated differently.
Orientation Phase and Proposal Presentation
Depending on the student's previous knowledge an orientation phase precedes the thesis. This phase is intended to be used for
- reviewing related work (literature),
- becoming acquainted with the environment conditions for the implementation, and
- clearly defining the problem which has to be tackled in the thesis.
The orientation phase results in an abstract ("proposal") which is about 15 pages in length and has to include:
- the well-defined problem to be solved and goals to be achieved,
- a comparative study of first ideas for solution esp. with regard to related work (literature),
- a short presentation of the chosen approach, and
- a well calculated working plan.
This proposal is discussed with the tutors (professor and assistant) and therefore has to be presented in form of a so called proposal presentation (duration approx. 30 min) at the I5 seminar at the end of the orientation phase. It is seen as a kind of a "contract" both sides can refer to. This is to avoid misunderstandings concerning the topic of the diploma thesis and a serious misjudgement of the work load (resulting in an excessive duration of the thesis). Consequently a proposal is also enforced for external diploma theses where Prof. Jarke is only second reviewer.
Working on a Diploma Thesis
The work on the diploma thesis follows the detailed working plan established during the orientation phase: at first the chosen approach has to be detailed. This step is then followed by the implementation of the approach, its analysis, and documentation. Eventually the results have to be written down. The assessment of the thesis is based not only on the accurateness of the implementation and written elaboration but also on the student's autonomy regarding defining the topic, reviewing literature, and finding solutions. Additionally a discerning review of design decisions and alternatives (from the computer science point of view and possibly also from the application specific point of view) affects the assessment. For a practical thesis the following basic outline for the written elaboration can be used as a starting point (while it does in no way claim to be complete):
- definition of the problem
- introduction to the topic of the thesis and clarification of the concrete task
- presentation and discussion of the initial situation
- review of literature on the given topic
- given environmental constraints (hardware, software)
- justification: why does the thesis make sense?
- derive a (formal) model of the solution
- critically review literature: what can be used?
- based on the previous chapter: develop a concept for the solution of the problem
- this part must NOT contain any implementation details!
- realization of the concept
- tool selection (e.g. programming language)
- description of the implementation (no programming code, possibly architectural figures)
- documentation of important design decisions
- discerning evaluation of the realization: tests (performance etc.), possibly a case study, potential weaknesses of the implementation, reasonable extensions for the future, ...
- summary: what are the main results?
- what do the results mean to the field of computer sciene?
- outlook: what has to be done in the future?
The written elaboration is NOT a documentation of the created programs. It shows the student’s ability to apply or develop computer science methods autonomously. Results taken from literature have to be marked carefully to be distinguishable from the student's own work. Programming notations like for example "if a=b then s1" must be formatted different from descriptive texts and other notations (e.g. mathematical expressions) to avoid misunderstandings. The thesis has to be written in English or German. A mixture of languages must be avoided.
The final presentation takes place about 2-8 weeks after the final delivery. In contrast to the proposal presentation the emphasis here is on the results achieved. The 35-40 minutes to be spent on the presentation should be used as follows:
- short (!!) re-consideration of the problem
- short review of relevant literature
- presentation of the solution and to some degree also of design decisions
- possibly a case study or application experiences
The latter two points are more important than the first two ones. While program code should not be presented, design decisions possibly can be explained. The student has to expect questions during and after the presentation.