mini|Andreas Zeller als Keynote Speaker bei der deRSE19 in Potsdam
Andreas Zeller (* 28. Oktober 1965 in Hanau) ist ein deutscher Informatiker, Forscher am CISPA Helmholtz-Zentrum für Informationssicherheit und Professor für Softwaretechnik an der Universität des Saarlandes.
Zeller beschäftigt sich mit automatisierten Ansätzen zum Aufspüren, Erklären und Beheben von Fehlern in Software. Insbesondere ist er für seine grundlegenden Beiträge zu den Bereichen Softwaretesten, Debugging und der Datenanalyse von Software-Repositories bekannt.
Werdegang Zeller wurde am 1965 in Hanau geboren. Nach seinem Diplom in Informatik an der TU Darmstadt zog er nach Braunschweig, um dort als wissenschaftlicher Mitarbeiter und Lehrassistent zu arbeiten. 1997 promovierte er an der TU Braunschweig in Informatik. Der Titel seiner Dissertation lautete "Configuration Management with Version Sets". Nach seiner Promotion verblieb er zwei Jahre als Postdoktorand, bevor er 1999 an die Universität Passau wechselte. Im Jahr 2001 nahm er eine Stelle als Professor an der Universität des Saarlandes an, wo er zwischen 2003 und 2018 den Lehrstuhl für Softwaretechnik innehatte. Seit 2019 ist er auch als Fakultätsmitglied am CISPA Helmholtz-Zentrum für Informationssicherheit tätig. Zwischenzeitlich war er bei Microsoft Research (2011, 2009, 2005), an der ETH Zürich (2007) und an der University of Washington (2005) zu Gast.
Zeller war Programmvorsitzender mehrerer führender internationaler Konferenzen im Software Engineering, darunter ICSE, ASE, ESEC/FSE, ICST und ISSTA, außerdem General Chair von ISSTA und EuroS&P.
Forschungsschwerpunkte Andreas Zeller beschäftigt sich in seiner Forschung mit Methoden, Werkzeugen und Techniken, die es Programmierern ermöglichen, Software automatisch auf Programmfehler zu testen (Softwaretesten) und die Fehlerursachen automatisch zu analysieren und zu erklären (Debugging).
Andreas Zeller ist vor allem bekannt für seine Erfindung des kausalen Ansatzes zur Fehleranalyze (Delta Debugging). Der damals weit verbreitete statistische Ansatz versuchte, die Beobachtung eines Fehlers mit der Ausführung der Fehlerursache zu korrelieren. Eine Korrelation beschreibt allerdings nicht zwingend einen kausalen Zusammenhang. Daher schlug Andreas Zeller vor, die eigentliche Fehlerursache durch digitale Experimente zu identifizieren. Zum Beispiel, in seinem Papier "Yesterday, my program worked. Today, it does not. Why?", welches 2009 das ACM SIGSOFT 10-Year Impact Paper gewann, schlug er vor, in der diskreten Menge der Programmänderungen zwischen "gestern" und "heute" die fehlerverursachende Programmänderungen zu identifizieren, indem man die kleinste Untermenge findet, für die man den Fehler noch beobachten kann. Diese Methode erlaubt es unter anderem den Nutzern des populären Werkzeugs zur verteilten Versionsverwaltung git (git-bisect) einen fehlerverursachenden Commit zu finden. Der kausale Ansatz zur Fehleranalyse wurde in seinem Team und der Forschungsgemeinschaft maßgeblich weiterentwickelt und ermöglicht es zum Beispiel auch, die gesamte Ursache-Wirkungs-Kette herauszustellen, die erklärt, welche Zusammenhänge genau zu einem Programmfehler geführt haben.
Zudem hat Andreas Zeller das Forschungsfeld der Datenanalyse von Software-Repositories (englisch Mining Software Repositories) maßgeblich mitbegründet. Seine Idee war es, Programmanalysen durch Informationen aus der gesamten Versionsgeschichte dieses und anderer Programme wesentlich relevanter und effektiver zu gestalten. Beispielsweise konnte das Werkzeug in seinem 2004 Papier "Mining Software Histories to Guide Software Changes", welches mit dem ICSE 10-Year Most Influential Paper Award ausgezeichnet wurde, basierend auf einer aktuellen Programmänderung, zukünftige relevante Änderungen vorschlagen, sowohl im Programm selbst als auch in anderen Artefakten, wie der Dokumentation. Die zugrunde liegende Idee der Datenanalyse von Software-Repositories wurde vielfach aufgegriffen und weiterentwickelt und ist heutzutage auch in der AI-assistierten Softwareentwicklung wiederzuerkennen.
Aktuell liegt der Schwerpunkt bei der Erforschung von Methoden, Werkzeugen und Techniken zur automatischen Fehlersuche in Programmen, die hochstrukturierte Eingaben verarbeiten (englisch grammar-based fuzzing). Das sind zum Beispiel Programme, die Dateien in einem bestimmten Dateiformat verarbeiten, oder Server, welche korrekt formatierte Nachrichten in einer bestimmten Reihenfolge erhalten müssen. Das Forschungsproblem ist das Erzeugen von Eingaben, welche der vom Programm erwarteten Struktur entsprechen, sodass diese Testeingaben überhaupt erst verarbeitet werden. Dabei wird das Dateiformat oder das Protokoll durch eine Grammatik repräsentiert und teilweise bei der Ausführung inferiert. Dieser Forschungsschwerpunkt ist auch der Fokus seines ERC Projekts "S3 – Semantics of Software Systems".
Auszeichnungen und Anerkennungen
2010: ACM Fellow für seine "Beiträge zur automatisierten Fehlersuche und zur Auswertung von Software-Archiven". 2011: ERC Advanced Grant für das Projekt „SPECMATE: Specification Mining and Testing“. Der ERC Advanced Grant ist der mit den höchsten Mitteln dotierten Förderzuschuss der Europäischen Union. 2018: ACM SIGSOFT Outstanding Research Award für "herausragende wegweisende Beiträge zur automatisierten Fehlerbehebung und zur Analyse von Software-Repositories". 2023: ERC Advanced Grant für sein Projekt „S3 – Semantics of Software Systems“. 2024: Academia Europaea Mitglied. 2025: ACM SIGSOFT Influential Educator Award für "bedeutende Beiträge und wichtige Innovationen in der Bildung im Bereich der automatisierten Softwareentwicklung". 2026: IEEE Fellow für "Beiträge zur Analyse von Software und deren Entwicklungsprozess". 2026: IEEE Harlan D. Mills Preis für "nachhaltige Beiträge zur Software-Fehlersuche, Programmanalyse, Auswertung von Software-Repositories und automatisierten Testgenerierung". 2026: ACM SIGSOFT Software Engineering Academy Gründungsmitglied.
Bücher Programmierwerkzeuge. D-Punkt Verlag, Heidelberg 2000. Why programs fail. Morgan Kaufmann publishers, San Francisco 2005. The Debugging Book. CISPA Helmholtz Center for Information Security, Saarbrücken, 2024 The Fuzzing Book. CISPA Helmholtz Center for Information Security, Saarbrücken, 2024
Weblinks
Wissenschaftliche Literatur von Andreas Zeller im Katalog der Digital Bibliography & Library Project Andreas Zellers Homepage Alte Webseite des Lehrstuhls Prof. Zellers an der Universität des Saarlandes Why Programs Fail The Debugging Book The Fuzzing Book DDD - Data Display Debugger - GNU Project - Free Software Foundation (FSF)
Einzelnachweise
Kategorie:Informatiker Kategorie:Hochschullehrer (Universität des Saarlandes, Saarbrücken) Kategorie:Mitglied der Academia Europaea Kategorie:Deutscher Kategorie:Geboren 1965 Kategorie:Mann