Confusion in code reviews: reasons, impacts and coping strategies: reasons, Impacts, and Coping Strategies

Felipe Ebert, Fernando Castor, Nicole Novielli, Alexander Serebrenik

Onderzoeksoutput: Hoofdstuk in Boek/Rapport/CongresprocedureConferentiebijdrageAcademicpeer review

22 Citaten (Scopus)

Samenvatting

Code review is a software quality assurance practice widely employed in both open source and commercial software projects to detect defects, transfer knowledge and encourage adherence to coding standards. Notwithstanding, code reviews can also delay the incorporation of a code change into a code base, thus slowing down the overall development process. Part of this delay is often a consequence of reviewers not understanding, becoming confused by, or being uncertain about the intention, behavior, or effect of a code change.

We investigate the reasons and impacts of confusion in code reviews, as well as the strategies developers adopt to cope with confusion. We employ a concurrent triangulation strategy to combine the analyses of survey responses and of the code review comments, and build a comprehensive confusion framework structured along the dimensions of the review process, the artifact being reviewed, the developers themselves and the relation between the developer and the artifact. The most frequent reasons for confusion are the missing rationale, discussion of non-functional requirements of the solution, and lack of familiarity with existing code. Developers report that confusion delays the merge decision, decreases review quality, and results in additional discussions. To cope with confusion developers request information, improve familiarity with existing code, and discuss off-line.

Based on the results, we provide a series of implications for tool builders, as well as insights and suggestions for researchers. The results of our work offer empirical justification for the need to improve code review tools to support developers facing confusion.
Originele taal-2Engels
TitelSANER 2019 - Proceedings of the 2019 IEEE 26th International Conference on Software Analysis, Evolution, and Reengineering
RedacteurenEmad Shihab, David Lo, Xinyu Wang
Plaats van productiePiscataway
UitgeverijInstitute of Electrical and Electronics Engineers
Pagina's49-60
Aantal pagina's12
ISBN van elektronische versie978-1-7281-0591-8
DOI's
StatusGepubliceerd - 15 mrt 2019
Evenement26th IEEE International Conference on Software Analysis, Evolution, and Reengineering, SANER 2019 - Hangzhou, China
Duur: 24 feb 201927 feb 2019
Congresnummer: 26

Congres

Congres26th IEEE International Conference on Software Analysis, Evolution, and Reengineering, SANER 2019
Verkorte titelSANER
LandChina
StadHangzhou
Periode24/02/1927/02/19

Vingerafdruk Duik in de onderzoeksthema's van 'Confusion in code reviews: reasons, impacts and coping strategies: reasons, Impacts, and Coping Strategies'. Samen vormen ze een unieke vingerafdruk.

Citeer dit