Software Engineering defines your career! Knowing programming languages is good. Knowing software engineering principles is grand. The Masters in Software Engineering teaches you what software and systems development in companies looks like. It fosters team building, conveys modeling and design languages, and it explains engineering principles.
We offer a range of courses for Masters students in computer science - particularly for the specialization in Software Engineering.
This seminar gives Masters students, who are working towards their theses, a platform for presenting their goals, their progress, the challenges encountered, and their solutions. This seminar is mandatory for all students who are working towards their Master’s thesis if their advisor is from this institute. More on Possible topics.
When: Continuous (Winter and Summer Semester)
Workload: 8 ECTS
Hours per week: 3
Language: English
Project in Software Engineering (Programmier Praktika)
By working on a non-trivial and coherent project from the area of the Major Subject, students should demonstrate their ability to apply the acquired knowledge from the Major Subject in a practical setting. Since the project is usually done in a team, this course should also practice team work and project management.
When: Continuous (Winter and Sommer Semester)
Workload: 7,5 ECTS
Hours per week: 5
Language: English
Seminar in Software Engineering (Topic Varies)
This course investigates advanced topics in software engineering. Typically every semester chooses a different theme. The actual theme can be looked up in KUSSS. During the course, the student is expected to research a topic of his/her choosing that fits the theme, find papers and books, and report about the findings in form of presentations. A final report needs to be submitted which summarizes the findings.
When: Continous (Winter and Summer Semester)
Workload: 3 ECTS
Hours per week: 2
Language: English
Model-driven Engineering
Model-Driven Engineering (MDE) focuses on the role of models and modeling during the engineering of software systems. The goal of the course is to show how models increase productivity, reduce (engineering) complexity, and assist in the communication among engineers. This course provides lectures which are supplemented with exercises. The exercises will require students to use modeling technologies to solve specific engineering challenges. The grade is derived from the final exam and the exercises.
When: Summer Semester
Workload: 3 ECTS
Hours per week: 2
Language: English
Product Line Engineering
Within the lecture students will learn about important methods and tools of product line engineering. Part of the lecture is the practical use of product line tools and the analysis of product line case studies.
Details:
Decision modelling, feature modelling, orthogonal variability models, product line engineering, architecture variability and component based software development. Process framework for product line engineering, economic aspects of product lines. PL tools.
When: Summer Semester
Workload: 3 ECTS
Hours per week: 2
Language: English
Software Processes and Tools
Students understand the importance of systematic software development processes for the success of complex software projects. They learn how to define and tailor software processes to concrete project contexts and environments. Students know how to apply software tools supporting key development activities and they are familiar with methods for software process improvement.
Subject:
Key principles, models, and frameworks for software processes; process modeling languages and modeling tools; Unified Process and its variants; Eclipse Process Framework; agile vs conventional development processes; configuration management; bug tracking and change management; process assessment and improvement; assessment methods; product development processes; value-based software engineering.
When: Summer Semester
Workload: 3 ECTS
Hours per Week: 2
Language: English
Requirements Engineering
Students get to know the role of requirements in the software life cycle. They learn about different methods for the elication, analysis, negotiation, documentation, and validation of requirements. Students apply tools for requirements engineering in practical scenarios.
Subject:
Role of Requirements Engineering in the software life cycle; techniques for eliciation and negotiation; prototyping; scenariobased approaches; use case analysis; IEEE standard 830; documentation and notations; structure of specification documents; requirements- and change management; requirements traceability; requirements and software reuse; requirements in product lines
When: Winter Semester
Workload: 3 ECTS
Hours per week: 2
Language: English