Software Engineering Prof. Dr. Sven Apel Core Lecture — Winter Semester 2022

News

02.12.2022

Assignment 02

Dear Students,

the second assignment is published. The assignment sheet contains all necessary information about when and how to submit your solution. We also recorded a short introduction video that explains the assignment sheet. Both, the sheet and the video... Read more

Dear Students,

the second assignment is published. The assignment sheet contains all necessary information about when and how to submit your solution. We also recorded a short introduction video that explains the assignment sheet. Both, the sheet and the video are available in the Materials section here in the CMS.

Best,
the SE team

28.11.2022

Assignment 01 Results

Dear students,

we have just published the results for Assignment 01. You can see your results on your personal status page.

Best,
the SE team

27.11.2022

Torch run on Wed. Nov. 30 4pm

Dear Students,

Professor Maggio and Professor Valera were called to another university.
To keep them, their research and their lectures here at the university, we
as the students council organise a torch run and invite you all to join us.
The torch run starts... Read more

Dear Students,

Professor Maggio and Professor Valera were called to another university.
To keep them, their research and their lectures here at the university, we
as the students council organise a torch run and invite you all to join us.
The torch run starts at 30.11.2022 4pm at the Platz der Informatik in front of
building E1 3 to demonstrate for their remain at our university.

Plenty of torches will be provided and we will also have some mulled wine on hand to warm you up.

We would be glad if lots of you would join us, because only together we can make a difference.

Your Students Council

18.11.2022

Carrying Over Assignments from Last Year

Dear Students,

because this issue came up recently, we have checked with the examination office whether it is possible to carry over passed assignments from last year. The rule is as follows:

If you have passed all assignments last year, you do not have to do... Read more

Dear Students,

because this issue came up recently, we have checked with the examination office whether it is possible to carry over passed assignments from last year. The rule is as follows:

If you have passed all assignments last year, you do not have to do them again this year.

Note that it is not possible to carry over individual assignments. Only if you have passed all assignments last year, then you will be allowed to take the exam this year without re-doing the assignments.

Best,
the SE team

11.11.2022

Assignment 01

Dear Students,

the first assignment is published. The assignment sheet contains all necessary information about when and how to submit your solution. We also recorded a short introduction video that explains the assignment sheet. Both, the sheet and the video... Read more

Dear Students,

the first assignment is published. The assignment sheet contains all necessary information about when and how to submit your solution. We also recorded a short introduction video that explains the assignment sheet. Both, the sheet and the video are available in the Materials section here in the CMS.

Best,
the SE team

02.11.2022

Start of the Tutorials

Hello,
since there was some confusion about when the tutorials start:
The tutorials will start tomorrow and the day after tomorrow, 03/11 and 04/11. Place and time are in the calendar.
Best regards
the SE Team

24.10.2022

First Lecture

Dear studends,

tomorrow, 25.10.2022 12:15, will be the first lecture of the software engineering course. As all of our lectures, this lecture will take place in presence in the GHH. In addition, the lecture will be streamed via MS Teams. The link for the stream... Read more

Dear studends,

tomorrow, 25.10.2022 12:15, will be the first lecture of the software engineering course. As all of our lectures, this lecture will take place in presence in the GHH. In addition, the lecture will be streamed via MS Teams. The link for the stream can be found in the timetable.

Best regards,
the SE team

Show all
 

Software Engineering Wintersemester 2022/23

 

About the Lecture

The lecture Software Engineering covers a broad range of topics in software engineering with a special focus on software variability, configuration, generation, and optimization. It builds on basic programming and software engineering concepts, as taught in the lectures Programming 1 & 2 and the SE Lab (Softwarepraktikum). Topics that are covered include:

  • Domain analysis, feature modelling
  • Automated reasoning about software configuration using SAT solvers
  • Runtime parameters, design patterns, frameworks
  • Version control, build systems, preprocessors
  • Collaboration-based design
  • Aspects, pointcuts, advice
  • Expression problem, preplanning problem, code scattering & tangling, tyranny of the dominant decomposition, inheritance vs. delegation vs. mixin composition
  • Feature interaction problem (structural, control- & data-flow, behavioural, non-functional feature interactions)
  • Variability-aware analysis and variational program representation (with applications to type checking and static program analysis)
  • Sampling (random, coverage)
  • Machine learning for software performance prediction and optimization

 

Lecture Format

The lecture will be held in presence in the GHH lecture hall and is also streamed online via teams (details follow soon). For the tutorials, we are currently planning a hybrid format (in person + online). More information will be announced in the first lecture. Lecture and tutorial dates can be found in the course's timetable.

 

Registration

To get access to exercise sheets and other course material you need to register via this CMS course. Registration opens on 26.09.2022 and ends on 01.11.2022.

 

Prerequisites

  • Knowledge of programming concepts (as taught in the lectures Programming 1 and Programming 2)

  • Basic knowledge of software processes, design, and testing (as taught and applied in the lecture SE Lab/Softwarepraktikum)

 

Assignments / Exam

Beside the lecture and weekly practical exercises, there will be a number of assignments in the form of mini-projects for each student to work on (every two to three weeks). The assignments will be assessed based on the principles covered in the lecture. Passing all assignments is a prerequisite for taking the final written exam. The written exam will be graded. Further examination details will be announced by the lecturer at the beginning of the course.

In short:

  • Passing the assignments (prerequisite for the written exam)

  • Passing the written exam

 

Literature

  • Feature-Oriented Software Product Lines: Concepts and Implementation. S. Apel, et al., Springer, 2013.

  • Generative Programming: Methods, Tools, and Applications: Methods, Techniques and Applications. K. Czarnecki, et al., Addison-Wesley, 2000.

  • Mastering Software Variability with FeatureIDE. J. Meinicke, et al., Springer, 2017.

  • Types and Programming Languages. Benjamin C. Pierce, The MIT Press, 2002.

  • Programmierung - eine Einführung in die Informatik mit Standard ML. Gert Smolka, Oldenbourg Verlag, 2011.



Privacy Policy | Legal Notice
If you encounter technical problems, please contact the administrators