Key points are not available for this paper at this time.
Die Code-Überprüfung ist ein wesentlicher Bestandteil des Softwareentwicklungszyklus, da sie darauf abzielt, die Qualität des Codes zu gewährleisten. Moderne Code-Überprüfungsaktivitäten erfordern, dass Entwickler die Programme sehen, verstehen und sogar ausführen, um Logik, Funktionalität, Latenz, Stil und andere Faktoren zu bewerten. Es zeigt sich, dass Entwickler viel zu viel Zeit damit verbringen, den Code ihrer Kollegen zu überprüfen. Daher besteht ein erheblicher Bedarf, den Code-Überprüfungsprozess zu automatisieren. In dieser Forschung konzentrieren wir uns auf die Nutzung von Vorab-Trainingstechniken für die Aufgaben im Code-Überprüfungsszenario. Wir sammeln einen großangelegten Datensatz von echten Codeänderungen und Code-Überprüfungen aus Open-Source-Projekten in neun der beliebtesten Programmiersprachen. Um Code-Diffs und -Überprüfungen besser zu verstehen, schlagen wir CodeReviewer vor, ein vortrainiertes Modell, das vier spezifisch für das Code-Überprüfungsszenario entwickelte Vorab-Trainingsaufgaben nutzt. Zur Bewertung unseres Modells konzentrieren wir uns auf drei zentrale Aufgaben im Zusammenhang mit Code-Überprüfungsaktivitäten, einschließlich der Schätzung der Qualität von Codeänderungen, der Generierung von Überprüfungsnotizen und der Verfeinerung des Codes. Darüber hinaus stellen wir einen hochwertigen Benchmark-Datensatz auf der Grundlage unserer gesammelten Daten für diese drei Aufgaben zusammen und führen umfassende Experimente durch. Die experimentellen Ergebnisse zeigen, dass unser Modell die vorherigen Stand der Technik der Vorab-Trainingsansätze in allen Aufgaben übertrifft. Weitere Analysen zeigen, dass unsere vorgeschlagenen Vorab-Trainingsaufgaben und der mehrsprachige Vorab-Trainingsdatensatz dem Modell beim Verständnis von Codeänderungen und -überprüfungen zugutekommen.
Li et al. (Mon,) untersuchten diese Frage.