Software Systems Engineering

Software Systems Engineering is a two year computer science Master program that is taught in English. Based on a Bachelor degree in Computer Science, Computer Engineering, Informatics or other closely related disciplines, you learn the skills needed for leadership in large software projects.

How is the program structured?

Your studies are structured in four areas:

  • Theoretical Foundations of Software Systems Engineering
  • Communication
  • Data and Information Management
  • Applied Computer Science
  • Software Engineering

Each of the modules (courses) that you take in your studies is assigned to one of these fields. You can earn at most 35 Credits in each area. In some areas, you will have to complete courses for a minimal amount of Credits. Some of the courses are mandatory, while others can be chosen freely from all offered courses.

How many courses should be done, and which courses are obligatory?

In Theoretical Foundations of Software Systems Engineering: at least 12 Credits, including at least two of the following core subjects: Model Checking, Theoretical Foundations of UML, Functional Programming, Logic Programming, Theoretical Foundations of Distributed Systems. In Software Engineering: at least 16 Credits, including Software-Projectmanagement and 12 Credits in the following core subjects: Model-based Software Engineering, Generative Software Engineering, Object Oriented Software Construction, Software Architectures, Safety and Reliability of Software-controlled Systems, Designing Interactive Systems, Information Management.

All in all, you should complete lectures for 68 Credits. Additionally, you have to take two seminars, a lab course and an oral core exam on three of your lectures. If you don’t speak German, you’ll have to take a German course (ZDaF) which gives you 4 Credits. If possible, you should take the language course in september, before lectures start. German-speaking students should replace the German course with any non-technical course for 4 Credits.

At the end of your studies you have to apply your knowledge in a Master Thesis which lasts the last half year of your studies.

What are the prerequisites?

You need a first degree (Bachelor) in Computer Science, Computer Engineering, Informatics or other closely related discipline, awarded by an internationally recognised university-level institution. Your Bachelor studies should cover topics like: Calculus, Linear Algebra, Discrete Mathematics and Logic, Probability Theory, Fundamentals of Computer Programming, Computer Architecture, Data Structures, Analysis of Algorithms, Programming Languages, Computability and Complexity Theory. In addition, you should have taken at least two advanced undergraduate courses on specialized topics like Distributed Systems, Information Systems, Operating Systems, and Compilers.

Furthermore you have to bring a confirmation for your English language skills (TOEFL 550 paper-based / 213 computer-based / 80 internet-based or IELTS 6.0).

Who can I contact for questions?

You can write a mail to the program coordinator. More information could also be found on the official course website.