We help you find the perfect fit.

Swiss Ai Research Overview Platform

28 Research Topics
Reset all filters
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Filter
Reset all filters
Select all Unselect all
Close Show projects Back
Show all filters
71 Application Fields
Reset all filters
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Filter
Reset all filters
Select all Unselect all
Close Show projects Back
Show all filters
34 Institutions
Reset all filters
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Select all Unselect all
Close
Filter
Reset all filters
Select all Unselect all
Close Show projects Back
Show all filters
Enhanced Code Review: Using Context and Learning from Review Experience

Lay summary

Diversi studi hanno dimostrato che la pratica di 'code review' (revisione manuale del codice fatta da sviluppatori software diversi dall’autore iniziale del codice) è tra le più efficaci nel rilevare in tempo difetti software e migliorarne la qualità. L'esecuzione corretta di revisioni del codice, tuttavia, richiede costoso tempo e zelo: se un revisore si affretta durante una revisione, spesso riconosce solo problemi superficiali ed errori banali.

L'obiettivo di questo progetto è di migliorare l'efficienza e l'efficacia dello sforzo di code review sfruttando il contesto e apprendendo dall'esperienza di revisioni passate. La visione scientifica alla base di questo progetto è duplice: (1) derivare una profonda comprensione del contesto relativo alle attività di revisione del codice e sfruttare tale contesto per creare nuovi modelli, algoritmi e tecniche per migliorare il supporto automatizzato ai revisori e (2) modellare le modifiche al codice come componenti integranti per la comprensione e l'automazione del processo di revisione del codice nel suo insieme.

Raggiungere questi obiettivi scientifici porterebbe a un impatto significativo sulla ricerca e sulla pratica dell'ingegneria del software. Nella ricerca, aprirà nuovi orizzonti sulla reificazione e sfruttamento del contesto per lo sviluppo del software e farà avanzare i modelli di apprendimento automatico del. Nella pratica, supporterà i professionisti nella riduzione dei difetti nel software, nell'accelerazione del ciclo di sviluppo e nel miglioramento complessivo della manutenibilità e dell'affidabilità dei sistemi software.

Abstract

Most of today’s industries, from engineering to agriculture to health, are run on software, giving every software defect potentially dramatic and often public consequences. Manual peer code review is widely recognized as most effective at detecting software defects and improving software quality: Several studies showed that properly conducted code reviews support software quality and reliability crucially. Properly doing code reviews, though, requires expensive developer time and zeal: If a reviewer races through a review, only shallow problems and trivial errors are recognized, with the additional risk of generating a false sense of safety.My goal is to enhance the efficiency and effectiveness of code review effort by leveraging context and learning from review experience. The vision and scientific aim at the basis of this proposal are two-fold: (1) To derive a deep understanding of context concerning code review tasks and leverage it to create new models, algorithms, and techniques to enhance automated cognitive support and (2) to modeling code changes as integral components to understanding and automating the code review process as a whole, to learn and transfer review experience.Achieving our goal and its underlying scientific aim would lead to a significant impact on software engineering research and practice: It will break new ground on reifying and leveraging context for software development, it will advance machine learning models of code by learning to relate code changes to external context, code review statements, and projects as a whole, and it will support practitioners reducing software defects, speeding up the development cycle, and improving overall maintainability and reliability of software systems.

Last updated:04.06.2022

Alberto Bacchelli