Project Guidelines


Who is this document for?

This document is intended for students who want to work on a thesis or research project in the TCS group. It is supposed to clarify what we expect from you and what you can expect from us. Please make sure to read the entire page, and let us know if you have any questions.

Timeline of a Bachelor’s thesis

  1. Preparation phase. Depending on your experience and the chosen project, you may require more or less preparation before you can actually start the project. If significant preparation is required, you can prepare as part of a seminar (in exchange for CPs), as a Forschungsprojekt (in exchange for CPs), or in your free-time (without receiving CPs). During the preparation phase, you will read and present on research papers, write a prototype implementation, design experiments, or develop a proof sketch. You must also pass the course on scientific writing offered by Schreibzentrum of Goethe University Frankfurt. The outcome of the preparation phase is a concrete project plan.
  2. Register your thesis project. Hand in your project plan to the TCS group, together with the signed registration form provided by the examination office.
  3. Main work phase (9 weeks). Write and polish your implementation, perform and analyze your algorithmic experiments, carefully write and polish your proofs, write your thesis, and polish and re-polish your writing (see our Writing Advice below).
  4. Submit your work.
    • Submit your thesis to the examination office according to their official rules.
    • Submit the following files to the TCS group:
      • Firstname Lastname - Bachelors Thesis.pdf: The PDF file of your thesis. In this version, please remove all personal information, such as your date of birth or Matrikelnummer.
      • Firstname Lastname - Usage Permission.pdf: The PDF file of the signed usage permission form, indicating whether and how we are allowed to redistribute your thesis for the benefit of future students. (You can also submit this as a physical document.)
      • Firstname Lastname - Source If applicable, gather all program source code in a .zip file. Make sure the .zip file contains only the source files and not the .git directory or any compiled files. Make sure to include a file called LICENSE to ensure that future students are allowed to build on your work. We strongly recommend you use the MIT License. Also make sure to include some documentation (typically in a README file) that explains how to compile and run your code. (Note: This .zip file is required for archival purposes, even in case your thesis already includes a link to a public git repository.)
  5. Give a talk on your thesis. Around two weeks after submitting the thesis, you will give a talk (typically 25 minutes for the talk + 5 minutes for discussion).
  6. Grading. Your thesis will be graded according to our Grading Criteria. A common failure mode that may lead to worse grades is to spend too little time on polishing the text and figures in your thesis.

Project Plan

Before the project is formally started, we expect you to design and agree with your supervisor on an informal project plan (at most 1-2 pages). The plan describes

In the case of a group project, the plan must indicate who is mainly responsible for which aspect of the project.

Of course, plans can go wrong, so it is possible to change course if there is a good reason to do so—for example, if you find out after a few weeks the original idea simply doesn’t work as expected or if you found a better approach or question, then it is completely fine to deviate from the plan, so long as you describe the rationale for doing so in the final text.


The Oberseminar takes place several times during the semester and is supposed to be a fun gathering place. You will meet other students who are currently working on a project, and you are expected to give two talks on your project:


Your project is yours. It is not the responsibility of your supervisor to monitor your progress or to make sure that you get a good grade. Your supervisor may agree to meet with you several times throughout the semester to discuss the project, make suggestions for improvements, and also give feedback on which aspects aren’t fully satisfactory yet.

Every project involves a scientific writing component, and your supervisor may be able to read and give feedback on your written drafts. However, we will not provide iterative feedback, because this would blur the line too much between you writing your thesis and your supervisor writing your thesis, so in total your supervisor will read and comment on at most one full draft so long as you present it to them with ample time before the deadline (at least two weeks). Of course, a “full draft” can contain unfinished parts and should contain TODOs in the text that explain what you are planning to add/change.

Writing Advice

The Bachelor thesis is likely the first longer scientific text that you will write. We expect all students to reflect on their thesis writing process throughout the thesis project. In particular:

Guidelines for Implementation projects

Implementation projects have some or all of the following components:


The Prüfungsordnung regulates how much time you are expected to invest in a project:

Note that these regulations are meant to protect you from being asked too much. We will not track your hours in any way and will not remind you of your deadlines. Before registering a project, please ensure that your supervisor is available for the duration of the project. Projects should start and finish during the semester, not during the semester break.

In case of a thesis project, make sure to read the relevant paragraphs in the Prüfungsordnung (PO) and to follow the rules laid out therein:

You will find your Prüfungsordnung at the examination office.