Die Informatikerin Maria Christakis, Professorin an der TU Wien, entwickelt Software, mit der man man andere Software auf Fehler überprüfen kann. Für ihre weitere Forschungsarbeit erhielt sie nun einen hochdotierten ERC-Grant.
Die Suche nach Fehlern in Software ist längst automatisiert: Es gibt Computerprogramme, die andere Computerprogramme auf Fehler überprüfen. Aber wer kontrolliert nun die Software-Kontrollprogramme? Mit dieser höchst Frage beschäftigt sich Maria Christakis, Professorin am Institut für Information Systems Engineering der TU Wien. Sie wurde nun vom European Research Council (ERC) mit einem ERC Starting-Grant ausgezeichnet – einer der prestigeträchtigsten und höchstdotierten Förderungen der europäischen Forschungslandschaft.
In besonders kritischen Bereichen – etwa bei der Steuerung eines Flugzeugs oder eines Kernkraftwerks – möchte man sich nicht damit begnügen, dass die Software bei bisherigen Tests keine Fehler gemacht hat. Man möchte einen Beweis dafür, dass die Software fehlerfrei ist und sich in jeder denkbaren Situation richtig verhält. Dafür verwendet man heute Programm-Analysetools, die auf Basis formaler Logik Computercode untersuchen. In bestimmten Fällen kann man dann mit mathematischer Präzision beweisen, dass ein bestimmter Code tatsächlich absolut fehlerfrei ist.
„Programm-Analysetools sind heute höchst komplex – die Wahrscheinlichkeit, dass sie selbst irgendwelche Fehler beinhalten, ist daher groß“, sagt Maria Christakis. Das kann zu falschen oder irreführenden Ergebnissen führen – etwa zur Diagnose, dass der untersuchte Code korrekt ist, obwohl er immer noch Fehler enthält. Die Fehlerlosigkeit eines solchen Analysetools mit herkömmlichen Methoden zu untersuchen, ist kaum möglich – die Tools sind so komplex, dass das viel zu lange dauern würde. Maria Christakis wählt daher eine andere Strategie: Anstatt die Fehlerlosigkeit der Programme mit mathematisch-logischer Präzision zu verifizieren, versucht die mehrfach preisgekrönte Wissenschafterin, auf automatisierte Weise passende Testsituationen für diese Programme generieren zu lassen.
„Diese automatisierte Erstellung von Tests kann Programmfehler sehr effektiv aufspüren“, erklärt Christakis. „Allerdings stecken die Methoden für diesen Einsatzzweck noch in den Kinderschuhen.“ Das soll sich aber ändern: Mit dem Projekt „MirandaTesting“, das nun durch den ERC-Grant finanziert wird, will Maria Christakis mit ihrem Team erstmals einen systematischen Zugang entwickeln, um ein breites Spektrum an Programm-Analysetools zu testen.
(Titelbild: ViSP)