Seminar: Software Variability on the Technical Level

Course Type: Seminar
Semester: Winter Semester
Supervisor: Niklas Gollenstede, Christian Dietrich
Details: see StudIP.
StudIP-Event: BST
Creditpoints: BS: 2 / MS: 3

Software systems are often confronted with a changing environment or changing requirements for which they have to adapt. This adaptability can be expressed as software variability, where one program contains multiple alternative variants to choose from. For example, by using the C preprocessor, we can build a function with alternative code paths that we can select at compile time:

void foo() {
#ifdef CONFIG_SMP
    spinlock_aquire(lock);
    disable_interrupts();
#else
    disable_interrupts();
#endif
}

In this seminar, the students will learn technical skills for dealing with scientific papers, and apply them to papers related to software variability. At the beginning of the semester, we will provide four lectures to provide the students with an overview of the scientific process and give them guidance for preparing their own presentation. These lectures given as blocks, recorded and are optional.

  • An introduction: What is science?
  • How does science work, specifically in the systems community? How do you read and review a paper? How do conferences work?
  • How do you give a good presentation?
  • How do you write a good scientific text?

Equipped with this theoretical background, the students choose their favorite from a selection of papers dealing with virtual memory. It is your task to read the paper, summarize it, and present its core concepts to the group in a short (20 minute) talk. All talks are given in a block seminar in March.

Evaluation

Anmeldung und weitere Infos

Für diese Veranstaltung ist eine Online-Anmeldung über Stud.IP erforderlich. Bitte registrieren Sie sich (falls noch nicht geschehen) für Stud.IP und tragen Sie sich dort in die entsprechende Veranstaltung ein.