The specialisation in Software Engineering enables you to work as a software engineer and, after gaining industrial experience, provide the base to take over roles as project manager or technical lead. The specialisation will not only introduce you to current software engineering methods and practices, but also enable you to relate to future technical as well as to methodological developments.
- Software Architecture (7.5 ECTS): The design, development, and implementation of software system requires the evaluation of several, often conflicting, aspects of the system. The aim of this course is to provide you with knowledge on how to develop software systems in a structured and systematic way that addresses the required functionality and supports the necessary system qualities. This requires a technical toolbox with concepts, methods, and principles to support the software design, implementation, and evaluation as much as a wider understanding of the context and domain of the system.
- Advanced Software Engineering (15 ECTS): The purpose of this course is to give you a thorough understanding of innovative processes, methods, and tools for software engineering as well as an introduction to a number of theoretical concepts that allow you to reflect on how methods, processes, and tools support software engineering as a cooperative activity. This way the course enables you to embrace future methodological developments. The course combines theoretical reflection of software engineering and hands-on development of tooling and development of infrastructures, as they e.g. are necessary for continuous software engineering.