ERC-Grant: Self-Optimizing Static Program Analysis

Überblick

Softwaresysteme durchdringen unser privates und berufliches Leben, doch ihre Unsicherheit bedroht unsere Gesellschaft. Um zu gewährleisten, dass Softwaresysteme zuverlässig und sicher sind, muss man sich Gedanken über ihren Code machen. Die statische Programmanalyse ermöglicht solche Überlegungen. Sie kann auf einzelne Softwarekomponenten angewendet werden und nicht nur das Vorhandensein, sondern auch das Nichtvorhandensein von Fehlern und Schwachstellen nachweisen. Um für Softwareentwickler nützlich zu sein, müssen statische Analysen jedoch an den Kontext angepasst werden, in dem sie eingesetzt werden. Studien zeigen, dass schlecht angepasste Analysen die Entwicklung eher verlangsamen als unterstützen. Sie melden große Mengen falscher Warnungen, die die Entwickler von den tatsächlichen Fehlern ablenken, die die Analysen oft übersehen. Sie laufen oft so lange, dass Ergebnisse gemeldet werden, wenn sie bereits veraltet sind.

 

Die wichtigste Forschungshypothese von SOSA ist, dass man präzise und effiziente statische Analysen von Softwaresystemen erstellen kann, indem man die statische Analyse selbstbewusst und selbstoptimierend macht. Mit SOSA führt eine statische Analyse Analysen und Optimierungen nicht nur von Programmen, sondern von sich selbst durch. Dies ist ein bahnbrechender Paradigmenwechsel: Keine bisherige Forschung hat komplexe Programmanalysen selbst als primäres Objekt der automatisierten Analyse und Optimierung betrachtet.

 

SOSA wird zum ersten Mal statische Analysen einführen, deren Ausführung nicht von ihren Schöpfern vordefiniert werden, sondern von vornherein selbstadaptiv sind. Im Ergebnis passen sich die Analysen automatisch an, um einen optimalen Kompromiss zwischen Leistung und Genauigkeit zu erzielen, je nachdem, wie die Analyse eingesetzt wird und welches Programm sie analysiert. Mit SOSA werden statische Analysen echte und relevante Warnungen bei minimaler Analysezeit melden, ohne dass manuelle Optimierungen durch den Endbenutzer erforderlich sind.

 

SOSA wird die Forschung auf dem Gebiet der Programmanalyse vorantreiben, indem es die Landschaft der Optimierungen statischer Analysen abbildet und zeigt, wie und wo sie am besten eingesetzt werden. Indem es Softwareentwicklern ermöglicht, statische Analysen optimal und einfach einzusetzen, wird SOSA zur Sicherheit von Millionen von Softwaresystemen beitragen.

Förderer: Europäischen Forschungsrat (ERC, European Research Council)

Key Facts

Laufzeit:
11/2024 - 10/2029
Gefördert durch:
EU
Websites:
Homepage
Millionenförderung der EU für sichere Softwaresysteme

Detailinformationen

Projektleitung

contact-box image

Prof. Dr. Eric Bodden

Heinz Nixdorf Institut

Zur Person