Bachelor Thesis and Seminar in Computer Science
About
- Module: Bachelor Thesis and Seminar in Computer Science (CA-CS-800)
- Semester: Spring 2025
- Instructor: Joaquin Aguado (concurrency)
- Instructor: Peter Baumann (databases)
- Instructor: Andreas Birk (robotic, artificial intelligence)
- Instructor: Fangning Hu (embedded systems)
- Instructor: Kirill Krinkin (artificial intelligence)
- Instructor: Dmitry Kropotov (artificial intelligence)
- Instructor: Francesco Maurelli (robotic, artificial intelligence)
- Instructor: Jürgen Schönwälder (system security, computer networks)
- Instructor: Jakob Suchan (computer vision, artificial intelligence)
- Instructor: Dmitry Vetrov (artificial intelligence)
- Instructor: Suhail Yousaf (artificial intelligence)
- Prerequisites: 30 CP of advanced modules (core or specialization modules) earned, at least 20 CP from advanced modules in the major
Timeline
| Activity | Deadline |
|---|---|
| Kickoff meeting | 2026-02-03 (Tuesday) |
| Module registration deadline | 2026-02-17 (Monday) |
| Supervisor and topic selection | 2026-02-17 (Monday) |
| Presentations | 2026-05-11 (Monday) |
| Presentations | 2026-05-12 (Tuesday) |
| Presentations | 2026-05-13 (Wednesday) |
| Thesis submission | 2026-05-19 (Tuesday) |
| Presentations (extensions) | 2026-06-24 (Wednesday) |
| Presentations (extensions) | 2026-06-25 (Thursday) |
| Thesis submission (extensions) | 2026-06-30 (Tuesday) |
We expect students to take the initiative and to drive the process. How self-organized students work is part of the assessment. In terms of effort, please note that 1 CP equals ~25 hours, i.e., the module has an average workload of 375 hours.
Master Thesis in Computer Science and Software Engineering
About
- Module: Master Thesis in Computer Science and Software Engineering (MCSSE-THE-01)
- Semester: Spring 2026
- Instructor: Peter Baumann (databases)
- Instructor: Andreas Birk (robotics, artificial intelligence)
- Instructor: Dmitry Kropotov (artificial intelligence)
- Instructor: Francesco Maurelli (robotics, artificial intelligence)
- Instructor: Bertrand Meyer (software engineering)
- Instructor: Manuel Oriol (software engineering)
- Instructor: Mauro Pezzè (software engineering)
- Instructor: Jürgen Schönwälder (system security)
- Instructor: Jakob Suchan (artificial intelligence)
- Instructor: Markus Wenzel (artificial intelligence)
- Prerequisites: None
Timeline
| Activity | Deadline |
|---|---|
| Information session | 2025-12-01 (Monday) |
| Kickoff meeting | 2026-02-05 (Thursday) |
| Module registration deadline | 2026-02-17 (Tuesday) |
| Supervisor and topic selection | 2026-02-17 (Tuesday) |
| Thesis submission (early deadline) | 2026-05-19 (Tuesday) |
| Presentations (early deadline) | 2026-05-22 (Friday) |
| Presentations (final deadline) | 2026-08-xx (TBD) |
| Thesis submission (final deadline) | 2026-08-xx (TBD) |
We expect students to take the initiative and to drive the process. This in particular includes being active in finding a thesis topic and a supervisor. In general, A thesis may arise
Mathematical Foundations of Computer Science
About
- Module: Mathematical Foundations to Computer Science (CH-233)
- Semester: Fall 2025
- Prerequisites: None
- Instructor: Jürgen Schönwälder
- Office Hours: Monday, 11:15-12:30 (Research I, Room 87)
- TA (Group A): Bhave, Aneesh Archis
- TA (Group B): Gherasim, Mihnea
- TA (Group C): Kanapelka, Arseni
- TA (Group D): Maghri, Ahmed
- TA (Group E): Mutaeva, Olesia
- TA (Group F): Tafani, Anja
- TA (Group G): Treshcheva, Olesia
- Lecture: Tuesday, 11:15-12:30 (RLH-172)
- Lecture: Friday, 08:15-09:30 (RLH-172)
- Tutorial: Friday, 09:45-11:00 (RLH-172)
- TA Tutorial: Thursday, 17:30-18:30 (WH-8)
- Dec Exam: Thursday, 2025-12-18, 16:00-18:00 (ICC West Wing, ICC East Wing, IRC Seminar Room II, IRC Seminar Room III)
- Dec Exam Review: Tuesday, 2026-01-20, 13:00-14:00 (Research I, R.1-53 Lecture Hall)
- Jan Exam: Friday, 2026-01-30, 16:00-18:00 (ICC West Wing, ICC East Wing)
- Jan Exam Review: TBD
Content and Educational Aims
The module introduces students to the mathematical foundations of computer science. Students learn to reason logically and clearly. They acquire the skill to formalize arguments and to prove propositions mathematically using elementary logic. Students are also introduced to fundamental concepts of graph theory and elementary graph algorithms.
Operating Systems
About
- Module: Operating Systems (CO-562)
- Semester: Fall 2025
- Prerequisites: Algorithms and Data Structures (CH-231)
- Instructor: Jürgen Schönwälder
- Office Hours: Monday, 11:15-12:30 (Research I, Room 87)
- TA (Group A): Babayev, Gazanfar
- TA (Group B): Nuredini, Kejsi
- TA (Group C): Shukhratkhujaev, Abdukhamidkhuja
- TA (Group D): Tsonev, Nikolay Lachezarov
- TA (Group E): Ulziibayar, Dulguun
- Lecture: Tuesday, 14:15-15:30 (ICC-East Wing)
- Tutorial: Tuesday, 15:45-17:00 (ICC-East Wing)
- Lecture: Thursday, 15:45-17:00 (RLH-172)
- TA Tutorial: Wednesdays, 19:00-20:00 (West Hall 2)
- Dec Exam: Thursday, 2025-12-11, 11:00-13:00 (ICC Conference Hall, ICC East Wing, ICC Conference Room)
- Dec Exam Review: Wednesday, 2026-01-21, 13:00-14:00 (Research I, R.1-53 Lecture Hall)
- Jan Exam: Friday, 2026-01-30, 11:30-13:30 (ICC East Wing, ICC Conference Room)
- Jan Exam Review: TBD
- Aug Exam: TBD
Content and Educational Aims
This module introduces concepts and principles used by operating systems to provide programming abstractions that enable an efficient and robust execution of application programs. Students will gain an understanding of how an operating system kernel manages hardware components and how it provides abstractions such as processes, threads, virtual memory, file systems, and inter-process communication facilities. Students learn the principles of event-driven and concurrent programming and the mechanisms that are necessary to solve synchronization and coordination problems, thereby avoiding race conditions, deadlocks, and resource starvation. The Linux kernel and runtime system will be used throughout the course to illustrate how key ideas and concepts have been implemented and how application programs can use them.
System Security
About
- Course: System Security (MCSSE-CYB-02)
- Semester: Spring 2025
- Prerequisites: Cryptography (MCSSE-CYB-01)
- Instructor: Jürgen Schönwälder
- Office Hours: Monday, 11:15-12:30, R.1-87
- Class: Wednesday, 14:15-15:30, IRC Seminar Room I
- Class: Friday, 15:45-17:00, IRC Seminar Room I
- May Exam: Monday, 2025-06-02, 12:30-14:30 (East Hall 8)
- Aug Exam: Thursday, 2025-08-28, 17:00-19:00 (East Hall 8)
Content and Educational Aims
This module focuses on system level security aspects of computing systems. The module starts with investigating attacks on the microarchitecture of computing systems, such as attacks to gain information from side channels targeting caches. It then introduces trusted execution environments that use hardware isolation mechanisms to provide protected storage for keys and to bootstrap the integrity of bootloaders and the loaded operating systems. Students learn about the different levels of isolation that can be achieved using various types of hypervisors or sandboxing mechanisms. Techniques that can be used to protect a system against misbehaving code and malware are introduced. Students will gain knowledge how protected data storage components can be provided at the system level and how systems can offer support for collections of (distributed) authentication mechanisms. Finally, the module will discusses how authorization mechanisms are realized in the different system software components and how they can be used to define effective security policies.
Student Thesis Topics (2026)
I will supervise BSc thesis projects in Spring 2026. Note that I have limited supervision capacity and there is already a waiting list by far exceeding my supervision capacity. If you are interested in systems-oriented computer science and computer security, either talk to me in person or schedule an online meeting. I expect that students have a solid understanding of operating systems and computer networks or computer security. I expect that students are capable to handle programming tasks well and that they can work independently. I like to form clusters of students working on related topics. I organize weekly (online) meetings with these clusters and we use some collaborative note taking tool to track progress, ideas, or questions.
Bachelor Thesis and Seminar in Computer Science
About
- Module: Bachelor Thesis and Seminar in Computer Science (CA-CS-800)
- Semester: Spring 2025
- Instructor: Joaquin Aguado (concurrency)
- Instructor: Peter Baumann (databases)
- Instructor: Andreas Birk (robotic, artificial intelligence)
- Instructor: Mathias Bode (artificial intelligence)
- Instructor: Fangning Hu (embedded systems)
- Instructor: Kirill Krinkin (artificial intelligence)
- Instructor: Dmitry Kropotov (artificial intelligence)
- Instructor: Francesco Maurelli (robotic, artificial intelligence)
- Instructor: Samaneh Rashidibajgan (network security)
- Instructor: Jürgen Schönwälder (system security, computer networks)
- Instructor: Jakob Suchan (computer vision, artificial intelligence)
- Instructor: Dmitry Vetrov (artificial intelligence)
- Instructor: Suhail Yousaf (artificial intelligence)
- Prerequisites: 30 CP of advanced modules (core or specialization modules) earned, at least 20 CP from advanced modules in the major
Timeline
| Activity | Deadline |
|---|---|
| Kickoff meeting | 2025-02-05 (Wednesday) |
| Module registration deadline | 2025-02-17 (Monday) |
| Supervisor and topic selection | 2025-02-17 (Monday) |
| Presentations | 2025-05-12 (Monday) |
| Presentations | 2025-05-13 (Tuesday) |
| Presentations | 2025-05-14 (Wednesday) |
| Thesis submission | 2025-05-20 (Tuesday) |
| Presentations (extensions) | 2025-05-25 (Wednesday) |
| Presentations (extensions) | 2025-05-26 (Thursday) |
| Thesis submission (extensions) | 2025-06-30 (Monday) |
We expect students to take the initiative and to drive the process. How self-organized students work is part of the assessment. In terms of effort, please note that 1 CP equals ~25 hours, i.e., the module has an average workload of 375 hours.
Master Thesis in Computer Science and Software Engineering
About
- Module: Master Thesis in Computer Science and Software Engineering (MCSSE-THE-01)
- Semester: Spring 2025
- Instructor: Peter Baumann (databases)
- Instructor: Andreas Birk (robotics, artificial intelligence)
- Instructor: Dmitry Kropotov (artificial intelligence)
- Instructor: Francesco Maurelli (robotics, artificial intelligence)
- Instructor: Bertrand Meyer (software engineering)
- Instructor: Manuel Oriol (software engineering)
- Instructor: Mauro Pezzè (software engineering)
- Instructor: Samaneh Rashidibajgan (network security)
- Instructor: Jürgen Schönwälder (system security)
- Instructor: Jakob Suchan (artificial intelligence)
- Instructor: Markus Wenzel (artificial intelligence)
- Prerequisites: None
Timeline
| Activity | Deadline |
|---|---|
| Information session | 2024-12-06 (Friday) |
| Kickoff meeting | 2025-02-07 (Friday) |
| Module registration deadline | 2025-02-17 (Monday) |
| Supervisor and topic selection | 2025-02-17 (Monday) |
| Thesis submission (early deadline) | 2025-05-20 (Tuesday) |
| Presentations (early deadline) | 2025-06-03 (Tuesday) |
| Presentations (final deadline) | 2025-08-18 (Monday) |
| Thesis submission (final deadline) | 2025-08-22 (Friday) |
We expect students to take the initiative and to drive the process. This in particular includes being active in finding a thesis topic and a supervisor. In general, A thesis may arise
Operating Systems
About
- Module: Operating Systems (CO-562)
- Semester: Fall 2024
- Prerequisites: Algorithms and Data Structures (CH-231)
- Instructor: Jürgen Schönwälder
- Office Hours: Monday, 11:15-12:30 (Research I, Room 87)
- TA (Group A): Borsos, Matheas-Roland
- TA (Group B): Dominguez Ham, Santiago
- TA (Group C): Jovanoska, Dora
- TA (Group D): Kenesbek, Serzhan
- TA (Group E): Murza, Dmytro
- Lecture: Tuesday, 14:15-15:30 (ICC-East Wing)
- Tutorial: Tuesday, 15:45-17:00 (ICC-East Wing)
- Lecture: Thursday, 15:45-17:00 (RLH-172)
- TA Tutorial: Thursday, 19:30-20:30 (West Hall, Seminar Room 2)
- Dec Exam: Thursday, 2024-12-12, 17:00-19:00 (ICC Eastwing + Conference Hall)
- Dec Exam Review: Monday, 2025-01-20, 16:00-17:30 (Research I, R1-120)
- Jan Exam: Thursday, 2025-01-30, 17:00-19:00 (ICC Eastwing)
- Jan Exam Review: Wednesday, 2025-02-19, 13:00-14:00 (East Hall, Seminar Room 3)
- Aug Exam: Wednesday, 2025-08-27, 17:00-19:00 (Research I, Lecture Hall)
Content and Educational Aims
This module introduces concepts and principles used by operating systems to provide programming abstractions that enable an efficient and robust execution of application programs. Students will gain an understanding of how an operating system kernel manages hardware components and how it provides abstractions such as processes, threads, virtual memory, file systems, and inter-process communication facilities. Students learn the principles of event-driven and concurrent programming and the mechanisms that are necessary to solve synchronization and coordination problems, thereby avoiding race conditions, deadlocks, and resource starvation. The Linux kernel and runtime system will be used throughout the course to illustrate how key ideas and concepts have been implemented and how application programs can use them.
Mathematical Foundations of Computer Science
About
- Module: Mathematical Foundations to Computer Science (CH-233)
- Semester: Fall 2024
- Prerequisites: None
- Instructor: Jürgen Schönwälder
- Office Hours: Monday, 11:15-12:30 (Research I, Room 87)
- TA (Group A): Babayev, Gazanfar
- TA (Group B): Borovlev, Petr
- TA (Group C): Cprljakovic, Bogdan
- TA (Group D): Mitov, Rumen Valentinov
- TA (Group E): Nuredini, Kejsi
- TA (Group F): Paniukhin, Nikita
- TA (Group G): Valean, Andrei-Gheorghe
- TA (Group H): Valladares, Zaara
- Lecture: Tuesday, 11:15-12:30 (RLH-172)
- Lecture: Friday, 08:15-09:30 (RLH-172)
- Tutorial: Friday, 09:45-11:00 (RLH-172)
- TA Tutorial: Wednesday, 10:00-11:00 (West Hall, Seminar Room 2)
- TA Tutorial: Friday, 19:00-20:00 (Research II, Lecture Hall)
- Dec Exam: Friday, 2024-12-20, 12:30-14:30 (ICC Eastwing + Conference Hall)
- Dec Exam Review: Thursday, 2025-01-16, 13:00-14:00 (Research I, R1-120)
- Dec Exam Review: Monday, 2025-01-20, 15:00-16:00 (Research I, R1-120)
- Jan Exam: Wednesday, 2025-01-22, 12:30-14:30 (ICC-East Wing)
- Jan Exam Review: Friday, 2025-02-21, 13:00-14:00 (East Hall, Seminar Room 3)
Content and Educational Aims
The module introduces students to the mathematical foundations of computer science. Students learn to reason logically and clearly. They acquire the skill to formalize arguments and to prove propositions mathematically using elementary logic. Students are also introduced to fundamental concepts of graph theory and elementary graph algorithms.