Bachelor/Master Project: Software Engineering (WS 19/20)

The topic of this master project is “Persistent data structures”.

Imperative data structures are typically ephemeral: an update modifies the structure in-place; after the update, the original version of the data structure is no longer available. By contrast, purely functional data structures are persistent: when a structure is updated, both the old and the new version of the data structure are available for further processing. Even though persistent data structures are more flexible than their ephemeral counterparts, they can often be implemented within the same asymptotic time bounds.

The aim of the project will be to implement a selection of persistent data structures and to evaluate their performance.

Module Information

  • Module: “Software Engineering (Project)” (Bachelor: 89-3045, Master: 89-3282), or the respective software engineering seminar in the old study regulations.
  • Presence Hours: project (4P)
  • Credit Points: 8 CP (corresponds to 240 working hours)
  • Level: Master (Advanced Level)
  • Language: English
  • Lecturer: Ralf Hinze, Annette Bieniusa, Peter Zeller


The project will take place during the lecture period of the winter term ’19/’20 (starting at 28.10.2019).

  • Kick-off meeting: tba
  • The overall workload is 240 working hours (= 17 hours per week for 14 weeks during the semester).


Please register before October 21, 2019 via email with

Please include name, matriculation number, and field of studies. Further, add a description of your programming background (technologies, open-source projects, course work, etc. preferably with links to github repositories) and a list of courses that you attended at TU KL in the field of Software Engineering, Software Technology and/or Algorithms.

The number of places for the project is limited and will be assigned on a “first come, first served” basis.


In the case of further questions, please contact:

  • Peter Zeller (