Innovativer Bug-Jäger "SapFix" wird bereits seit August getestet und soll quelloffen werden. [...]
Facebook hat anlässlich der Ingenieurskongerenz @Scale ein KI–Tool vorgestellt, das zur Qualitätssicherung bei Software dient. Dazu scannt „SapFix“ Code nach Fehlern, testet mögliche Patches und schlägt aus seiner Sicht gute Fehlerkorrekturen menschlichen Entwicklern vor. Das Tool ist Facebook zufolge schon in großem Maßstab für die eigene Android–App zum Einsatz gekommen und soll auf Dauer quelloffen veröffentlicht werden.
Fehlerkorrektur 2.0
„Die Fehlerkorrektur bei Code ist Schinderei“, schreiben die Facebook-Entwickler Yue Jia, Ke Mao und Mark Harman im offiziellen Blog – eine Einschätzung, der fast alle Programmierer zustimmen dürften. Das KI-Hybrid-Tool SapFix verspricht Abhilfe, indem es Entwicklern den Löwenanteil der zur Bug-Behebung nötigen Arbeit abnimmt. Denn das Werkzeug erstellt mithilfe verschiedener Strategien automatisiert mehrere mögliche Patches, testet diese und schlägt Entwicklern erst dann eine Lösung vor, wenn das KI–Tool diese auch für gut befunden hat.
Facebook-intern hat sich dieser Ansatz offenbar schon bewährt. „SapFix wurde genutzt, um den Prozess zu beschleunigen, robuste, stabile Code-Updates für Millionen Geräte, die die Facebook Android–App nutzen, bereitzustellen“, schreiben die Entwickler. Das sei das erste Mal, dass AI-getriebene Tools für Software-Testung und -Fehlerkorrektur auf diesem Maßstab produktiv genutzt würden. Dabei befindet sich SapFix dem Team zufolge noch in der Entwicklung und wird erst seit August getestet.
Zeit sparen für alle
Grundsätzlich soll die KI-Fehlerkorrektur eigenständig oder in Verbindung mit Sapienz, Facebooks Werkzeug zum automatisierten Finden von Programmfehlern, zum Einsatz kommen. Die aktuelle Version von SapFix konzentriert sich den Facebook-Entwicklern zufolge auf Bugs, die zunächst mit Sapienz im Quellcode lokalisiert wurden. Um Patches zu erstellen, kann das System dann beispielsweise für das Auftreten von Fehlern verantwortliche Code-Änderungen zurücknehmen oder versuchen, anhand der Arbeit von Entwicklern erstellte Muster für Korrekturen anzuwenden.
Obwohl die Facebook-internen Tests erst seit August laufen, habe das Tool bereits eine Reihe von Patches entwickelt, die von menschlichen Entwicklern für gut befunden und dann allgemein implementiert wurden. Dadurch bleibt den Programmierern letztlich mehr Zeit dafür, wirklich Neues zu entwickeln. Eben davon soll nicht nur Facebook profitieren: Wenn die Entwicklung abgeschlossen ist, wolle man Sapienz und SapFix quelloffen veröffentlichen.
Be the first to comment