
Education and talent care
We teach sofware engineer students at the BSc, MSc and PhD level; our elective courses offer exciting and state-of-the-art topics.
Specializations
Courses

Software Engineering
Engineering Aspects of Software Development
The subject aims to teach the design, development, and maintenance of software systems, presenting the tools and methods necessary for producing software as a product.

Automated Software Engineering
Methods and Tools for Automated Software Development
The subject introduces the process of designing new languages, enhancing developer environments, implementing continuous integration, and executing various testing and performance measurement techniques with statistical analysis.

System Modeling
Fundamental Processes and Tools of Model-Based System Design
Our comprehensive subject builds upon previous courses in the curriculum to demonstrate model-based system design through relevant industry examples and tools.

Formal Methods
Using formal methods for design, implementation and analysis
Students learn to create formal models and become familiar with various formal methods and technologies, their advantages, disadvantages, and basic tools.

Trustworthy AI and Data Analysis
Reliability Aspects of Artificial Intelligence and Data Analysis
The aim of the subject is for students to understand the reliability aspects of artificial intelligence and data analysis and integrate them into the software development process.

Model-based Software Development
Technologies for domain-specific modeling and tool development
We introduce the use of domain-specific modeling languages in the context of model-based software design processes and industrial implementation technologies.

Reliable Distributed and Decentralized Systems
Cloud-Based, Autonomous, Adaptive/Reconfigurable Systems
We review key technologies related to distributed and decentralized systems, emphasizing algorithmic, modeling, and service security aspects.

Automated Verification Techniques
Modern Testing and Verification Techniques, Tools
The objective of the subject is to acquaint students with various verification techniques applicable throughout the entire software and system development life cycle.

Software Verification and Validation
Mathematical foundations of formal V&V methods
The aim of the subject is to provide a systematic overview of verification and validation methods used in software development, emphasizing the mathematical foundations of formal verification techniques.

Empirical Systems Engineering and Modeling
Assuring extra-functional properties during design and operations
We present techniques that bridge the continuous world of metrics with discrete qualitative models of computer systems, touching upon key application areas.

Blockchain Technologies and Applications
Technologies and tools for designing blockchain-based systems
The subject emphasizes the creation and integration of general-purpose business services and Cyber-Physical Systems (CPS) application cases.

Data Analysis and Visualizaton for Engineers
How to turn data into information using visual methods?
We introduce students to the application possibilities of visual data analysis, primarily in the design and evaluation of computer systems.
Project work
Our students can start to work on engaging topics during their first project work course. We offer project and thesis topics ranging from practical developments inspired by our industrial partners to challenging research problems with strong theoretical background. Our goal is to find topics for students, where they can deepen their knowledge and improve their skills.

Talent care
Motivated students can start to work with us even in the beginning of their undergraduate studies, and later join our international research and innovation projects or one of our open source developments.
We offer special talent care opportunities and unique one-on-one mentoring for our talented students.