Lehrende: Prof. Dr.-Ing. Ermira Mezini
Veranstaltungsart: Vorlesung und Übung
Orga-Einheit: FB20 Informatik
Anzeige im Stundenplan: ProgAn
Fach:
Anrechenbar für:
Semesterwochenstunden: 4
Unterrichtssprache: Englisch
Min. | Max. Teilnehmerzahl: - | -
Lehrinhalte: Statische Analysen sind Werkzeuge die Informationen von Programmen extrahieren ohne diese auszuführen. Statische Analysen haben vielseitige Anwendungen in integrierten Entwicklungsumgebungen (IDEs), Compilern und Continous Integration Servern. Zum Beispiel werden statische Analysen in IDEs verwendet um Programmfehler und Sicherheitslücken zu erkennen. Des Weiteren werden sie in Compilern zum Typechecking und für Optimierungen verwendet. DIeser Kurs gibt einen Überblick über die zugrundeliegende Konzepte von statischen Analysen. Insbesondere diskutieren wir den Kompromiss zwischen der Performanz, der Präzision, und der Korrektheit von statischen Analysen. Des Weiteren werden Ihnen verschieden Sorten von statischen Analysen vorgestellt, wie zum Beispiel Kontrollflussanalysen, Datenflussanalysen, Zeigeranalysen, sowie Seiteneffekt- und Unveränderlichkeitsanalysen. Abschließend lernen sie verschiedene Analyseframeworks kennen, wie das monotone Framework, Big-Step Abstrakte Interpreter und IFDS/IDE Frameworks. In der begleitenden Übung wenden Sie die neuen Analysekonzepte praktisch an, und erweitern oder entwicklen existierende Analysen.
Voraussetzungen: Wir erwarten, dass Studierende die Konzepte der Programmiersprachen, wie Zuweisungen, Schleifen, Ausnahmebehandlung, Objekte, und anonyme Funktionen gut verstanden haben. Des Weiteren sollten die Kursteilnehmer*innen mit grundlegender Universitätsmathematik und Logik vertraut sein.
Programmanalyse - Übung
Prof. Dr.-Ing. Ermira Mezini
Mo, 18. Okt. 2021 [12:30]-Mo, 14. Feb. 2022 [13:30]