Detailseite
Systematische Qualitätsbewertung von statischen Call-Graph-Analysen
Antragsteller
Dr.-Ing. Dominik Helm
Fachliche Zuordnung
Softwaretechnik und Programmiersprachen
Sicherheit und Verlässlichkeit, Betriebs-, Kommunikations- und verteilte Systeme
Sicherheit und Verlässlichkeit, Betriebs-, Kommunikations- und verteilte Systeme
Förderung
Förderung seit 2024
Projektkennung
Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 541346877
Statische Programmanalyse ist eine zentrale Technik, um Software sicher und verlässlich zu machen. Methodenaufrufgraphen sind für interprozedurale statische Analysen unerlässlich. Trotzdem gibt es bisher keine systematischen Verfahren, um ihre Qualität in Bezug auf Präzision und Vollständigkeit zu beurteilen. Ziel dieses Vorhabens ist daher, solche Verfahren zu entwickeln. Damit soll Entwicklern von Analysen für Methodenaufrufgraphen die Möglichkeit gegeben werden, ihre Analysen besser zu verstehen und zu verbessern. Gleichzeitig soll Nutzern von Methodenaufrufgraphen ermöglicht werden, die für ihre jeweiligen Anwendungszwecke am besten geeigneten Analysen auszuwählen. Die entwickelten Verfahren sollen dabei unabhängig von konkreten Programmiersprachen und statischen Analysen und so breit anwendbar sein. Wesentliche Teilziele des Projekts sind dabei: 1. Wir werden Methoden zur systematischen Beurteilung der Qualität von Methodenaufrufgraphen entwickeln und ihre Anwendbarkeit zeigen. Dafür werden verlässliche Daten benötigt, welche Methodenaufrufe bei der Ausführung realer Programme tatsächlich auftreten. Im Rahmen des Projekts sollen außerdem Maßzahlen ausgewählt werden, anhand derer Methodenaufrufgraphen bewertet werden können und untersucht werden, welche Aussagekraft diese Maßzahlen haben. 2. Um dies unabhängig von konkreten Programmiersprachen und statischen Analysen zu bewerkstelligen, werden wir eine sprachunabhängige Darstellung von Methodenaufrufgraphen entwickeln. Diese soll die Serialisierung von Methodenaufrufgraphen und deren anschließende Beurteilung ermöglichen. 3. Als Teil dieses Vorhabens schaffen wir ein Rahmenwerk, das es Entwicklern und Nutzern von Methodenaufrufgraphen ermöglicht, möglichst automatisiert die Qualität verschiedener Implementierungen vergleichen zu können. Das Rahmenwerk berechnet und serialisiert Methodenaufrufgraphen, berechnet ausgewählte Maßzahlen und ermöglicht die Untersuchung von Unterschieden zwischen verschiedenen Methodenaufrufgraphen. 4. Basierend auf den damit gewonnenen Erkenntnissen über die Qualität von Methodenaufrufgraphen und Herausforderungen bei ihrer Berechnung werden wir neue Ansätze vorschlagen, wie Methodenaufrufgraphen zukünftig modular berechnet werden können. Dies soll existierende Probleme von Analysen von Methodenaufrufgraphen vermeiden, die Wiederverwendbarkeit von Teilimplementierungen zwischen verschiedenen Algorithmen zur Berechnung von Methodenaufrufgraphen ermöglichen und damit auch die Vergleichbarkeit verschiedener Algorithmen verbessern.
DFG-Verfahren
WBP Stelle