51±ŸÉ«

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

Im aktuellen Semester wird die Veranstaltung nicht angeboten.

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