News
Re-Exam InspectionWritten on 22.04.24 by Lukas Abelt Dear Students, the exam inspection for the software engineering re-exam will take place this Friday (26.04.2024) in R106 E1.1 from 2 PM to 5PM. There will be 20 minute slots for which you can now register in the CMS. You are only allowed to register for one slot. The registration is open until… Read more Dear Students, the exam inspection for the software engineering re-exam will take place this Friday (26.04.2024) in R106 E1.1 from 2 PM to 5PM. There will be 20 minute slots for which you can now register in the CMS. You are only allowed to register for one slot. The registration is open until Thursday (25.04.2024) 23:59. To attend the exam inspection, you need to bring your student ID and a valid photo ID. Best, |
||||||||
Re-Exam ResultsWritten on 28.03.24 by Lukas Abelt Dear Students, we just published the grades for the re-exam in the CMS. You can find them on your personal status page. Unfortunately we will only be able to offer an exam inspection once the new semester has started. We will provide you with more details at a later point in time. Best, |
||||||||
Information for Re-ExamWritten on 26.03.24 by Sebastian Böhm Dear students, the re-exam will take place on the 27th of March at 10:00am in GHH (E2.2). We will start the entrance control at 09:50am. You have to be at the lecture hall by 10:00am at the latest. Please read the following information carefully to ensure a problem free exam:
Dear students, the re-exam will take place on the 27th of March at 10:00am in GHH (E2.2). We will start the entrance control at 09:50am. You have to be at the lecture hall by 10:00am at the latest. Please read the following information carefully to ensure a problem free exam:
Best, |
||||||||
Exam InspectionWritten on 27.02.24 by Sebastian Böhm Dear Students, the exam inspection for the software engineering exam will take place on Tuesday (05.03.2024) in HS002 E1.3 from 9am to 12am. There will be 20 minute slots for which you can now register in the CMS. You are only allowed to register for one slot. The registration is open until Friday… Read more Dear Students, the exam inspection for the software engineering exam will take place on Tuesday (05.03.2024) in HS002 E1.3 from 9am to 12am. There will be 20 minute slots for which you can now register in the CMS. You are only allowed to register for one slot. The registration is open until Friday (01.03.2024) 23:59. To attend the exam inspection, you need to bring your student ID and a valid photo ID. Best, |
||||||||
Exam ResultsWritten on 20.02.24 by Sebastian Böhm Dear Students, we just published the grades for the final exam in the CMS. You can find them on your personal status page. Information about the exam inspection will follow soon. Best, |
||||||||
Eye-Tracking StudyWritten on 16.02.24 by Lukas Abelt Dear Students, Currently one of our Masters Thesis Students is looking for participants for an eye-tracking study. ============================================================== Dear Students, Currently one of our Masters Thesis Students is looking for participants for an eye-tracking study. ============================================================== Join us for a research study on program comprehension led by Nils Alznauer for his Master's thesis at the Software Engineering chair. Ever wondered how your eyes move when you're diving into code? We'll uncover the secrets behind program comprehension by tracking your eye movements as you explore. Are you enrolled in a computer science-related bachelor’s program, have you previously utilized Python (Prog2 Prep Course is sufficient) and do you speak either German or English? Then you are the perfect participant for this study! Overall Time Commitment: less than 1 hour 30 minutes Plus, just for participating, you'll score a snack box for your upcoming exams! And there's a chance to win one of two 25€ Amazon vouchers. Interested? Secure your spot now: Meeting Slot Rest assured, your privacy is our priority. All data collected will be anonymized and securely stored. Ready to dive into the fascinating world of program comprehension with us? Sign up now and let's uncover some tech mysteries together! Best regards, Nils |
||||||||
Information for Final ExamWritten on 14.02.24 by Sebastian Böhm Dear students, the final exam will take place on the 15th of February at 10:00am. We have to separate you into three different rooms: The GHH (E2.2) and HS001, HS002, and HS003 in E1.3. We will start the entrance control at 09:50am. You have to be in the lecture hall by 10:00am at the… Read more Dear students, the final exam will take place on the 15th of February at 10:00am. We have to separate you into three different rooms: The GHH (E2.2) and HS001, HS002, and HS003 in E1.3. We will start the entrance control at 09:50am. You have to be in the lecture hall by 10:00am at the latest. You can find the information about the room you have been assigned to in the following table:
Please read the following information carefully to ensure a problem free exam:
Best, |
||||||||
Exam Registration ReminderWritten on 05.02.24 by Lukas Abelt Dear Students, If you want to take the first exam on February 15th, please keep in mind that you have to register until this Thursday (February 8th) through the LSF. If you cannot register in LSF for any reason, but still want to take the exam, please contact us via mail as soon as… Read more Dear Students, If you want to take the first exam on February 15th, please keep in mind that you have to register until this Thursday (February 8th) through the LSF. If you cannot register in LSF for any reason, but still want to take the exam, please contact us via mail as soon as possible. Best, the SE team |
||||||||
Exam Preparation Excercise Sheet UploadedWritten on 02.02.24 by Lukas Abelt Dear Students, We have just uploaded the additional exercise sheet with some additional tasks to help you preparing for the exams. Best, the SE team. |
||||||||
Assignment 04 ResultsWritten on 30.01.24 by Lukas Abelt Dear Students, We have published the results for the fourth and final assignment. You can see your results on your personal status page. Best, the SE team. |
||||||||
Assignment 04 - ClarificationsWritten on 17.01.24 by Lukas Abelt Dear students, We have uploaded an updated version of the sheet for Assignment 04. It contains several clarifications that came up in the forum discussion. Most importantly, it now includes a description of the termination criterion for the CART construction. Best, the SE team |
||||||||
Tutorial on Wednesday, 17.01.2024 Online ONLYWritten on 16.01.24 by Lukas Abelt Dear students, The German Meteorological Service has issued its highest level warning that there is a very high risk of black ice for tomorrow, Wednesday, 17 January 2024. Therefore, the university strongly advises to not carry out any in-person activities tomorrow, to not bring anyone into… Read more Dear students, The German Meteorological Service has issued its highest level warning that there is a very high risk of black ice for tomorrow, Wednesday, 17 January 2024. Therefore, the university strongly advises to not carry out any in-person activities tomorrow, to not bring anyone into danger by going to university.
As by the current forecasts, the weather situation should have eased by Thursday. Thus the tutorial session on Friday should be hybrid as usual. We will inform you if there are any changes.
Stay safe, the SE team |
||||||||
Assignment 4Written on 15.01.24 by Lukas Abelt Dear Students, We have just released the fourth and final assignment sheet. You can find it in the "Materials" section in the CMS. We also provide you with a project skeleton you have to use for submission. The assignment sheet contains all further information on how and when to hand in your… Read more Dear Students, We have just released the fourth and final assignment sheet. You can find it in the "Materials" section in the CMS. We also provide you with a project skeleton you have to use for submission. The assignment sheet contains all further information on how and when to hand in your submission. Any questions regarding the assignment can be asked in tomorrows Q&A session or the forum.
|
||||||||
Online Participation of TutorialWritten on 12.01.24 by Lukas Abelt Dear Students, Due to network issues at the University we cannot to offer a hybrid tutorial today via MS Teams. Sorry for the inconvenience. Best, the SE Team |
||||||||
Course EvaluationWritten on 12.01.24 by Sebastian Böhm Dear Students, we just received the links for the course evaluation. Please take your time to fill out the evaluation forms. It really helps us to improve the course in the next years. There are two links, one for the lecture and one for the tutorials. The evaluation is open until… Read more Dear Students, we just received the links for the course evaluation. Please take your time to fill out the evaluation forms. It really helps us to improve the course in the next years. There are two links, one for the lecture and one for the tutorials. The evaluation is open until 31.01.2024. Lecture evaluation: https://qualis.uni-saarland.de/eva/?l=146435&p=pejg3k Best, |
||||||||
Assignment 3 ResultsWritten on 09.01.24 by Sebastian Böhm Dear students, we have just published the results for the third Assignment. You can see your results on your personal status page. Best, |
||||||||
Schedule Around Christmas BreakWritten on 18.12.23 by Sebastian Böhm Dear students, due to the Christmas break, there are no lecture videos this week, only an exercise sheet including last week's topics. The timetable for the coming weeks looks as follows: Dear students, due to the Christmas break, there are no lecture videos this week, only an exercise sheet including last week's topics. The timetable for the coming weeks looks as follows: Best, |
||||||||
Assignment 3Written on 18.12.23 by Sebastian Böhm Dear Students, We have just released the third assignment sheet. You can find it in the "Materials" section in the CMS. We also provide you with a project skeleton you have to use for submission. The assignment sheet contains all further information on how and when to hand in your… Read more Dear Students, We have just released the third assignment sheet. You can find it in the "Materials" section in the CMS. We also provide you with a project skeleton you have to use for submission. The assignment sheet contains all further information on how and when to hand in your submission. Any questions regarding the assignment can be asked in tomorrows Q&A session or the forum.
|
||||||||
Assignment 2 ResultsWritten on 15.12.23 by Sebastian Böhm Dear students, we have just published the results for the second Assignment. You can see your results on your personal status page. Best, |
||||||||
Assignment 2 Project Skeleton Updated (2)Written on 04.12.23 by Sebastian Böhm Dear students, we have uploaded a new version of the project skeleton where we have fixed another two issues: Note that both changes do not impact the implementation task itself, but mostly the… Read more Dear students, we have uploaded a new version of the project skeleton where we have fixed another two issues: Note that both changes do not impact the implementation task itself, but mostly the execution of the tests. Best, |
||||||||
Assignment 2 Project Skeleton UpdatedWritten on 29.11.23 by Sebastian Böhm Dear students, we have uploaded a new version of the project skeleton where we have fixed two small issues: In addition,… Read more Dear students, we have uploaded a new version of the project skeleton where we have fixed two small issues: In addition, we specified more clearly in the tests for subtask b) in which order the decorators have to be combined. Best, |
||||||||
EEG-Study Participants Wanted!Written on 27.11.23 by Sebastian Böhm Are you interested in participating in an exciting EEG and eye-tracking study for programmers? Look no further! We have a fantastic opportunity for you to contribute to cutting-edge research in the field of neuroscience. In this study, we will be using state-of-the-art EEG and eye-tracking… Read more Are you interested in participating in an exciting EEG and eye-tracking study for programmers? Look no further! We have a fantastic opportunity for you to contribute to cutting-edge research in the field of neuroscience. In this study, we will be using state-of-the-art EEG and eye-tracking technology to gain valuable insights into the human brain when programmers are reading code. By participating, you will have the chance to learn more about your own brain and how it processes information. To participate, you need to
Sign up for our EEG and eye-tracking study today and embark on a fascinating journey into the world of neuroscience! We look forward to welcoming you to our study! Kind regards |
||||||||
Assignment 2Written on 27.11.23 by Sebastian Böhm Dear Students, We have just released the second assignment sheet. You can find it in the "Materials" section in the CMS. We also provide you with a project skeleton you have to use for submission. The assignment sheet contains all further information on how and when to hand in your… Read more Dear Students, We have just released the second assignment sheet. You can find it in the "Materials" section in the CMS. We also provide you with a project skeleton you have to use for submission. The assignment sheet contains all further information on how and when to hand in your submission. Any questions regarding the assignment can be asked in tomorrows Q&A session or the forum.
|
||||||||
Assignment 1 ResultsWritten on 23.11.23 by Sebastian Böhm Dear students, we have just published the results for the first Assignment. You can see your results on your personal status page. Best, |
||||||||
Assignment 01 Minor CorrectionWritten on 07.11.23 by Lukas Abelt Dear Students, We have uploaded a minor correction to the first assignment sheet. Please make sure to download the latest version of the Assignment Sheet… Read more Dear Students, We have uploaded a minor correction to the first assignment sheet. Please make sure to download the latest version of the Assignment Sheet to avoid any mistakes. Sorry for the inconveniences. Best, the SE team. |
||||||||
Assignment 01Written on 06.11.23 by Lukas Abelt Dear Students, We have just released the first assignment sheet. You can find it in the "Materials" section in the CMS. We also provide you with a LaTeX template you have to use for submission. The assignment sheet contains all further information on how and when to hand in your… Read more Dear Students, We have just released the first assignment sheet. You can find it in the "Materials" section in the CMS. We also provide you with a LaTeX template you have to use for submission. The assignment sheet contains all further information on how and when to hand in your submission. Any questions regarding the assignment can be asked in tomorrows Q&A session or the forum.
|
||||||||
Course IntroductionWritten on 23.10.23 by Sebastian Böhm Dear students, tomorrow (2023-10-24), there will be an introductory session where we discuss organizational matters regarding the course this year. Unfortunately, this room does not have a teams setup,… Read more Dear students, tomorrow (2023-10-24), there will be an introductory session where we discuss organizational matters regarding the course this year. Unfortunately, this room does not have a teams setup, so this session, as well as all the other Q&A sessions are in-presence only. Any remaining questions can also be asked in our forum. The link for that can also be found in the uploaded slides or in the menu bar on the CMS. Best, |
Software Engineering Wintersemester 2023/24
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
This year, lectures will only be uploaded as videos—there are no in-person lectures. In addition, there will be a Q&A session in person every Tuesday 12-14h.
For the tutorials, we are currently planning a hybrid format (in person + online). More information will be announced closer to the start of the semester. All relevant 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 01.09.2023 and ends on 20.11.2023.
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.