News
Written on 21.10.21 (last change on 21.10.21) by Kallistos Weis Dear students, we just published the results of the second exam and your grades. This is the grading scheme ( points = (max(exam, re-exam) * 5/6) + sum(assignments) ): Grade: Point range 1.0: 95 ≤ points < - 1.3: 90 ≤ points < 95 1.7: 85 ≤ points < … Read more Dear students, we just published the results of the second exam and your grades. This is the grading scheme ( points = (max(exam, re-exam) * 5/6) + sum(assignments) ): Grade: Point range 1.0: 95 ≤ points < - 1.3: 90 ≤ points < 95 1.7: 85 ≤ points < 90 2.0: 80 ≤ points < 85 2.3: 75 ≤ points < 80 2.7: 70 ≤ points < 75 3.0: 65 ≤ points < 70 3.3: 60 ≤ points < 65 3.7: 55 ≤ points < 60 4.0: 50 ≤ points < 55
the exam inspection for this course will take place on 27.10.2021 from 10 am. The inspection takes place in room 2.15 in E1.1. We have separated the inspection into two 30 minute slots. You have to register for one of the slots via the personal status page in the CMS. You are only allowed to register for one slot and you can only partake in the inspection in the slot that you registered for. Each slot is limited to 4 people. The spots in the slots are distributed first come first serve. If you don't get a slot because they are full, please write us an email. Please keep at least 1,5 m apart at all times before, after, and during the re-exam inspection. After entering the room, immediately take a seat at one of the marked seats. Please note that it is necessary for you to bring your medical mouth-nose protection mask (surgical mask or FFP2/KN95/N95 mask) with you. If your answer is "yes" to one or more of the following questions, then you are not allowed to attend the exam inspection.
If you have any questions feel free to ask us via email. All the best, |
Exam InspectionWritten on 16.08.21 by Kallistos Weis Dear students, the exam inspection for this course will take place on 25.08.2021 from 10 am. The inspection takes place in room 2.06 in E1.1. We have separated the inspection into three 30 minute slots. You have to register for one of the slots via the personal status page in the CMS. You are… Read more Dear students, the exam inspection for this course will take place on 25.08.2021 from 10 am. The inspection takes place in room 2.06 in E1.1. We have separated the inspection into three 30 minute slots. You have to register for one of the slots via the personal status page in the CMS. You are only allowed to register for one slot and you can only partake in the inspection in the slot that you registered for. Each slot is limited to 7 people. The spots in the slots are distributed first come first serve. If you don't get a slot because they are full, please write us an email. Please keep at least 1,5 m apart at all times before, after, and during the re-exam inspection. After entering the room, immediately take a seat at one of the marked seats. Please note that it is necessary for you to bring your medical mouth-nose protection mask (surgical mask or FFP2/KN95/N95 mask) with you. If your answer is "yes" to one or more of the following questions, then you are not allowed to attend the exam inspection.
If you have any questions feel free to ask us via email. All the best, |
Written on 04.08.21 by Kallistos Weis Dear students, we just published the results of the first exam and your grades. This is the grading scheme ( points = (exam * 5/6) + sum(assignments) ): Grade: Point range 1.0: 95 ≤ points < - 1.3: 90 ≤ points < 95 1.7: 85 ≤ points < 90 2.0: 80 ≤ points… Read more Dear students, we just published the results of the first exam and your grades. This is the grading scheme ( points = (exam * 5/6) + sum(assignments) ): Grade: Point range 1.0: 95 ≤ points < - 1.3: 90 ≤ points < 95 1.7: 85 ≤ points < 90 2.0: 80 ≤ points < 85 2.3: 75 ≤ points < 80 2.7: 70 ≤ points < 75 3.0: 65 ≤ points < 70 3.3: 60 ≤ points < 65 3.7: 55 ≤ points < 60 4.0: 50 ≤ points < 55
We will publish the date of the exam inspection soon.
Best regards, Your GGSD-team |
ForumWritten on 26.07.21 by Kallistos Weis Dear students,
This week, we will shutdown the forum (discourse). As the forum was never used and inactive we decided to shutdown the forum. As usual, you can still use the discord to ask questions or contact us directly.
All the best, Your GGSD-team
|
ExamWritten on 20.07.21 by Kallistos Weis Please note that it is necessary for you to bring your medical mouth-nose protection mask (surgical mask or FFP2/KN95/N95 mask) with you. A negative PoC antigen test not older than 24 hours or vaccination or recovery is recommended.
If your answer is "yes" to one or more of the following… Read more Please note that it is necessary for you to bring your medical mouth-nose protection mask (surgical mask or FFP2/KN95/N95 mask) with you. A negative PoC antigen test not older than 24 hours or vaccination or recovery is recommended.
If your answer is "yes" to one or more of the following questions, then you are not allowed to attend the exam. If you provide a doctor’s certificate to the examination office later on, the examination attempt will be canceled and will not count. Did you have definite contact with a Covid-19 patient, who was tested positive, in the last 14 days? Do you have any of the following symptoms? ▪ Cough / Husten ▪ Sore throat / Halsschmerzen ▪ Nasal congestion / runny nose / Schnupfen ▪ Diarrhoea /Durchfall ▪ Fever /Fieber ▪ Aches and pains / Gliederschmerzen ▪ Loss of smell (e.g. no longer able to smell burnt food) / Geruchsverlust ▪ Loss of taste (e.g. unable to distinguish when food is burnt) / Geschmacksverlust |
QUALIS EvaluationWritten on 14.07.21 by Kallistos Weis Dear students,
you received an email with the links to the QUALIS evaluation. You are only able to participate until 15th of July, so please submit your feedback until the deadline.
All the best, Your GGSD-team |
Q&A Session and Office HourWritten on 12.07.21 by Kallistos Weis Dear students, tomorrows lecture will be a Q&A session, where you can ask any questions related to the lecture and the exam. The tutorial on Wednesday will be an office hour, where you can ask questions about the current assignment.
All the best, Your GGSD-team
|
Assignment UploadedWritten on 02.07.21 by Kallistos Weis Dear students, we've uploaded the last assignment today, you find the assignment sheet in the materials category in the CMS. Deadline for this assignment is 16.07.2021 23:59.
Happy coding, and all the best, Your GGSD-team |
Last AssignmentWritten on 01.07.21 by Kallistos Weis Dear students, Dear students, |
First ExamWritten on 01.07.21 by Kallistos Weis Dear students,
As a reminder, the exam takes place on Wednesday, 21.07.2021 12:00 CEST, in GHH (E2.2). To help you prepare for the exam, there is a open questions round at the 13.07 during lecture time, so please bring questions.
All the best,
Your GGSD-team |
AssignmentWritten on 11.06.21 by Kallistos Weis Dear Students,
we have just uploaded the second assignment. The deadline for the submission of the second assignment is 25.06.2021 23:59.
All the best, Your GGSD-team |
Array LibraryWritten on 26.05.21 (last change on 26.05.21) by Kallistos Weis Dear students,
We found a small bug (UB) in the ArrayAdd/ArrayMultiply implementation with the OperandType, when add/multiplies are chained (a+b+c). We updated the slides containing the fix, so please checkout the updated slides, especially page 51, and update the ArrayLib implementation in … Read more Dear students,
We found a small bug (UB) in the ArrayAdd/ArrayMultiply implementation
with the OperandType, when add/multiplies are chained (a+b+c). We updated the slides containing the fix, so please checkout the updated slides, especially page 51, and update the ArrayLib implementation in case you use it for the assigment. All the best,
your GGSD-team
PS: Please keep in mind that the registartion deadline (LSF) for the exam is on Monday 31.05.
|
First AssignmentWritten on 21.04.21 by Kallistos Weis Dear Students,
we have just uploaded the zeroth assignment. We will unlock the submission after the deadline for the teams. The deadline to build your team is 23.04.2021 23:59, the deadline for the submission of the zeroth assignment is 05.05.2021 23:59.
All the best, Your… Read more Dear Students,
we have just uploaded the zeroth assignment. We will unlock the submission after the deadline for the teams. The deadline to build your team is 23.04.2021 23:59, the deadline for the submission of the zeroth assignment is 05.05.2021 23:59.
All the best, Your GGSD-team |
Team for AssignmentsWritten on 16.04.21 by Kallistos Weis Dear Students,
we have just found a feature in the CMS to create teams for the admissions and added that to your personal status in the CMS. There you can connect your teammate, such that your submissions are connected to both of your accounts correctly. Please connect with your… Read more Dear Students,
we have just found a feature in the CMS to create teams for the admissions and added that to your personal status in the CMS. There you can connect your teammate, such that your submissions are connected to both of your accounts correctly. Please connect with your teammate, even if you already uploaded the txt-file for the teammates submission.
All the best, your GGSD-Team |
First LectureWritten on 12.04.21 by Kallistos Weis Dear Students,
a few more brief details. The first lecture will take place on Tuesday 13th of April. We will record this and all subsequent lectures and make them available to you. This way, you will be able to watch them again if there is a clash of dates. Note that to participate in this… Read more Dear Students,
a few more brief details. The first lecture will take place on Tuesday 13th of April. We will record this and all subsequent lectures and make them available to you. This way, you will be able to watch them again if there is a clash of dates. Note that to participate in this course you must register by midnight on 18th of April. We've uploaded the first two sets of slides under materials. You find the link for the Zoom-meeting in the Introduction slides.
All the best, Your GGSD-Team |
Generic and Generative Software Design
General Information
The course treats Generic and Generative Software Design to build reusable software components utilizing meta-programming. During the course, students learn different techniques on how to design generic and reusable components. This includes functional abstractions to build generic higher-order functions, meta-programming techniques to improve API design and software performance as well as designing DSLs to simplify the usage of generic APIs. During the course, we focus on discussing and reasoning about design trade-offs in generic code, drawing ideas from different imperative and functional programming languages. Furthermore, the lecture explores how we can use generative domain models to generate customized program variants.
Syllabus
- C++ Basics
- Encoding configurability into types
- Functional abstraction and higher-order functions
- Type computations
- Generic Programming
- Type-APIs
- Embedded DSL
- Introduction to product-line engineering
- Generating program variants with generative domain models
Lecture Dates
- Place: Online (via Zoom)
- Time: Tuesday (10–12 c.t.) and Wednesday (12–14 c.t.) CEST
- First Meeting: Tuesday 13.04.2021 (10–12 c.t.) CEST
Entrance Requirements
- Knowledge of programming concepts (as taught in the lectures Programmierung 1 and Programmierung 2)
- Basic knowledge of software processes, design, and testing (as taught and applied in the lecture Softwarepraktikum)
- Basic knowledge of C++ on Linux systems is recommended
Modus Operandi
Beside the lecture and weekly practical exercises, there will be three assignments in the form of mini-projects for each group (2 students) to work on. The assignments will be assessed based on the principles covered in the lecture. Students need to achieve at least 50% of the points of the assignments as well as the written exam to pass the course. The final grade is determined by the written exam (50%) and the three assignments (10%, 20%, 20%). Further examination details will be announced by the lecturer at the beginning of the course.
In short:
-
Passing the assignments (min. 50% of the points)
-
Passing the written exam (min. 50% of the points)