inf481 - Software Analysis (Vollständige Modulbeschreibung)

inf481 - Software Analysis (Vollständige Modulbeschreibung)

Originalfassung Englisch PDF Download
Modulbezeichnung Software Analysis
Modulkürzel inf481
Kreditpunkte 6.0 KP
Workload 180 h
Einrichtungsverzeichnis Department für Informatik
Verwendbarkeit des Moduls
  • Master Informatik (Master) > Theoretische Informatik
Zuständige Personen
  • Wehrheim, Heike (Modulverantwortung)
  • Lehrenden, Die im Modul (Prüfungsberechtigt)
Teilnahmevoraussetzungen
Kompetenzziele

Softwareanalysen dienen der Berechnung von Fakten über Programme aus dem Programmtext. Solche Fakten können beispielsweise vom Compiler zur Optimierung während der Übersetzung eingesetzt werden, aber auch zur Verifikation von Korrektheitseigenschaften genutzt werden. Die Studierenden lernen verschiedene Analyseverfahren kennen, spezifizieren selber solche Verfahren und implementieren sie.
Fachkompetenzen
Die Studierenden:

  • lernen Datenflussanalysen kennen und können selber solche spezifizieren
  • benenen die Bestandteile eines Datenflusssystems
  •  wissen, wann Widening Operatoren für eine Datenflussanalyse nötig sind
  • können abstrakte Domänen und Operatoren für die Abstrakte Interpretation entwickeln und anwenden
  • kennen Prädikatabstraktion und das Prinzip der Gegenbeispiel-gesteuerten Abstraktionsverfeinerung
  • wissen, wann und wozu SSA Formen eingesetzt werden
  • können die Präzision und Skalierbarkeit von points-to Analysen abschätzen

Methodenkompetenzen

  • können Analysen formal definieren
  • können Eigenschaften von Analysen beweisen
  • können Analysen implementieren

Sozialkompetenzen
Die Studierenden:

  • bearbeiten in Gruppen Übungsaufgaben, diskutieren Ergebnisse
  • implementierten verteilt an einer Aufgabenstellung

Selbstkompetenzen
Die Studierenden:

  • organisieren sich selber bei der Arbeit an den Aufgabenstellungen des Moduls
Modulinhalte
  • Datenflussanalysen
  • Abstrakte Interpretation
  • Prädikatabstraktion, CEGAR
  • SSA-Formen
  • Slicing
  • Points-to Analysen
  • Symbolische Ausführung
Literaturempfehlungen
  • Nielson, Nielson, Hankin: Principles of Program Analysis, Springer, 2004.
Links
Unterrichtssprache Deutsch
Dauer in Semestern 1 Semester
Angebotsrhythmus Modul jedes 2. Sommersemester
Aufnahmekapazität Modul unbegrenzt
Lehr-/Lernform V+Ü
Vorkenntnisse Nützliche Vorkenntnisse:

Mengenlehre, Aussagen- und Prädikatenlogik, Programmierung in einer imperativen Sprache
Lehrveranstaltungsform Kommentar SWS Angebotsrhythmus Workload Präsenz
Vorlesung 2 SoSe 28
Übung 2 SoSe 28
Präsenzzeit Modul insgesamt 56 h
Prüfung Prüfungszeiten Prüfungsform
Gesamtmodul

am Ende des Semesters

Klausur oder mündl. Prüfung