Im aktuellen Semester wird die Veranstaltung nicht angeboten.
Seminar: Fortgeschrittene Konzepte der Softwaretechnik
Das selbstständige Erarbeiten neuer Themen stellt eine zentrale Kompetenz dar, die sowohl im Studium als auch darüber hinaus von wesentlicher Bedeutung ist, insbesondere vor dem Hintergrund sich stetig wandelnder Technologien und Forschungsfelder. Dieses Seminar trägt dieser Anforderung Rechnung, indem es die eigenständige Auseinandersetzung mit aktuellen wissenschaftlichen Fragestellungen in den Mittelpunkt stellt.
Ziel der Veranstaltung ist es, die Studierenden dazu zu befähigen, sich systematisch in ein neues wissenschaftliches Themengebiet einzuarbeiten, die erarbeiteten Inhalte kritisch zu reflektieren und in einen fachlichen Kontext einzuordnen. Darüber hinaus erwerben sie die Fähigkeit, ihre Ergebnisse sowohl mündlich im Rahmen einer Präsentation als auch schriftlich in Form einer Ausarbeitung strukturiert, präzise und überzeugend darzustellen.
Organisatorisches
Die Anmeldung zum Seminar erfolgt zentral im dafür vorgesehen Moodle-Kurs. Nach der Zuteilung werden die Teilnehmer per E-Mail kontaktiert. Bitte kontaktieren Sie uns bei Fragen oder Problemen zur Veranstaltung oder zum Zuteilungsprozess.
Aktuelle Themen
Vergangene Veranstaltungen
Prof. Dr. Matthias Tichy, Florian Sihler
Statische Code Analyse erlaubt es uns, Informationen über alle möglichen Ausführungen eines Programmes zu erhalten, ohne den Code tatsächlich auszuführen.
Diese Informationen können wir dann verwenden, um den Code beispielsweise auf Sicherheitslücken zu überprüfen, Optimierungspotential zu finden, oder Refactoring-Operationen anzubieten. Gerade auch wenn sich das Programm in einem nicht-lauffähigen Zustand befindet oder von einem Compiler verarbeitet wird, sind statische Analysetechniken elementar!
In diesem Seminar möchten wir uns mit dem aktuellen Stand der Wissenschaft zu diesen Techniken intensiver beschäftigen.
- Wie ist es beispielsweise möglich, alle möglichen Werte, die eine Variable zur Laufzeit annehmen kann, zu sammeln?
- Wie können wir mit dynamischen Informationen und Fehlern umgehen?
- Was sind die Vor- und Nachteile dieser Techniken?
Prof. Dr. Matthias Tichy, Denis Neumüller
Software spielt in unserem Alltag eine immer größer werdende Rolle. Mit der zunehmenden Größe von Codebasen nimmt auch die Komplexität der Software immer weiter zu. Aus diesem Grund setzen sich ganze Forschungsbereiche mit dem Verständnis und der Analyse von Sourcecode auseinander.
In diesem Proseminar werden sie sich mit einem Themengebiet vertraut machen und dessen Forschungsstand im Rahmen eines Systematic Literature Reviews beschreiben.
Mögliche Themenbereiche sind:
- Design Pattern Detection
- Cliche Recognition
- Code Clone Detection
- (Source) Code Plagiarism Detection
- Normalization techniques for source code
- Subgraphmatching
Für eine ausführliche Beschreibung beachten Sie bitte das Video im zentralen Moodle-Kurs, über den auch die Verteilung der Proseminare stattfindet.
Prof. Dr. Thomas Thüm, M.Sc. Tobias Heß
Binary Decision Diagrams (BDDs) stellen aussagenlogische Formeln als gerichtete, azyklische Graphen dar. Viele klassische Probleme der Aussagenlogik, wie z.B. das Entscheiden ob eine Formel eine Lösung besitzt (SAT) oder das Zählen wie viele Lösungen eine Formel besitzt (#SAT), sind auf BDDs effizient lösbar. Konsequenterweise ist daher die Erzeugung eines BDDs für eine aussagenlogische Formel ein schwieriges Problem. In diesem Proseminar werden BDDs aus den folgenden Perspektiven betrachtet:
- Formale Eigenschaften
- Optimierung
- Implementierung
- Anwendungen
Je nach Interesse und Neigung finden sich sowohl für theoretisch als auch für praktisch interessierte Studierende diverse Themen.
Prof. Dr. Matthias Tichy, Stefan Götz
DevOps: A Closer Look
Goals of the Proseminar
- Learn to write scientific papers
- Learn about devOps in theory and practice