Bei derart abstraken Inhalten braucht es gute Strategien, um Fehler zu entdecken. | Foto: iStockphoto

Neu in Software integrierte Codezeilen müssen Korrektur gelesen werden. Die sogenannte Code-Review ist geistig herausfordernd sowie zeit- und kostenintensiv, weil sich die Begutachtenden oft in mehrere Hundert Zeilen der Programmiersprache eindenken müssen. Eine Studie der Universität Zürich zeigt nun, dass Checklisten diese Fehlersuche effizienter machen können.

«In der Forschung zur Softwareentwicklung gelten Checklisten als Möglichkeit, die kognitive Belastung während des Code-Review zu senken», sagt die Arbeitspsychologin Pavlína Wurzel Gonçalves. «Das war bisher noch nicht wissenschaftlich belegt.» Die kognitive Belastung beschreibt, wie stark das Arbeitsgedächtnis gerade beansprucht wird. Sie hängt mit der Komplexität der Aufgabe, dem Können sowie der Darstellung der Informationen zusammen. Wird die maximale Kapazität des Arbeitsgedächtnisses überschritten, so sinkt die Qualität der Codeüberprüfung.

«Bei einer komplexen Aufgabe wirkt die angeleitete Checkliste jedoch nicht effizienzsteigernd, weil sie die individuelle Vorgehensweise einschränkt»Pavlína Wurzel Gonçalves

Die Studie von Wurzel Gonçalves untersuchte, wie Hilfsmittel die kognitive Belastung senken können. Hierzu erhielten die siebzig Teilnehmenden zur Lösung von einfachen und komplexen Review-Aufgaben jeweils eine angeleitete Checkliste, eine simple Checkliste oder kein Hilfsmittel. Dabei fanden die Forschenden heraus, dass ungeübte Reviewer mithilfe einer systematischen Checkliste, die ihnen Schritt für Schritt sagt, was wann und wo zu überprüfen ist, in einem einfachen Code mehr Fehler finden.

«Bei einer komplexen Aufgabe wirkt die angeleitete Checkliste jedoch nicht effizienzsteigernd, weil sie die individuelle Vorgehensweise einschränkt», so Wurzel Gonçalves. «Kann der Gutachter anhand einer simplen Checkliste selbst im Code navigieren, führt das bei der Prüfung von komplexen Änderungen zu besseren Resultaten.»

Da die Teilnehmenden unerfahren im Code- Review waren, sollen weitere Studien nun klären, welche Werkzeuge für Review-Expertinnen entlastend wirken. Klar ist, ein Hilfsmittel für alle Fälle gibt es nicht: «Je nach Komplexität des Codes eignet sich ein anderes Tool.»

P. Wurzel Gonçalves et al.: Do explicit review strategies improve code review performance? Towards understanding the role of cognitive load. Empirical Software Engineering (2022)