Cargando…
The evolution of the code during review: an investigation on review changes
Code review is a software engineering practice in which reviewers manually inspect the code written by a fellow developer and propose any change that is deemed necessary or useful. The main goal of code review is to improve the quality of the code under review. Despite the widespread use of code rev...
Autores principales: | , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
Springer US
2022
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9489594/ https://www.ncbi.nlm.nih.gov/pubmed/36159894 http://dx.doi.org/10.1007/s10664-022-10205-7 |
_version_ | 1784792917404024832 |
---|---|
author | Fregnan, Enrico Petrulio, Fernando Bacchelli, Alberto |
author_facet | Fregnan, Enrico Petrulio, Fernando Bacchelli, Alberto |
author_sort | Fregnan, Enrico |
collection | PubMed |
description | Code review is a software engineering practice in which reviewers manually inspect the code written by a fellow developer and propose any change that is deemed necessary or useful. The main goal of code review is to improve the quality of the code under review. Despite the widespread use of code review, only a few studies focused on the investigation of its outcomes, for example, investigating the code changes that happen to the code under review. The goal of this paper is to expand our knowledge on the outcome of code review while re-evaluating results from previous work. To this aim, we analyze changes that happened during the review process, which we define as review changes. Considering three popular open-source software projects, we investigate the types of review changes (based on existing taxonomies) and what triggers them; also, we study which code factors in a code review are most related to the number of review changes. Our results show that the majority of changes relate to evolvability concerns, with a strong prevalence of documentation and structure changes at type-level. Furthermore, differently from past work, we found that the majority of review changes are not triggered by reviewers’ comments. Finally, we find that the number of review changes in a code review is related to the size of the initial patch as well as the new lines of code that it adds. However, other factors, such as lines deleted or the author of the review patchset, do not always show an empirically supported relationship with the number of changes. |
format | Online Article Text |
id | pubmed-9489594 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2022 |
publisher | Springer US |
record_format | MEDLINE/PubMed |
spelling | pubmed-94895942022-09-22 The evolution of the code during review: an investigation on review changes Fregnan, Enrico Petrulio, Fernando Bacchelli, Alberto Empir Softw Eng Article Code review is a software engineering practice in which reviewers manually inspect the code written by a fellow developer and propose any change that is deemed necessary or useful. The main goal of code review is to improve the quality of the code under review. Despite the widespread use of code review, only a few studies focused on the investigation of its outcomes, for example, investigating the code changes that happen to the code under review. The goal of this paper is to expand our knowledge on the outcome of code review while re-evaluating results from previous work. To this aim, we analyze changes that happened during the review process, which we define as review changes. Considering three popular open-source software projects, we investigate the types of review changes (based on existing taxonomies) and what triggers them; also, we study which code factors in a code review are most related to the number of review changes. Our results show that the majority of changes relate to evolvability concerns, with a strong prevalence of documentation and structure changes at type-level. Furthermore, differently from past work, we found that the majority of review changes are not triggered by reviewers’ comments. Finally, we find that the number of review changes in a code review is related to the size of the initial patch as well as the new lines of code that it adds. However, other factors, such as lines deleted or the author of the review patchset, do not always show an empirically supported relationship with the number of changes. Springer US 2022-09-20 2022 /pmc/articles/PMC9489594/ /pubmed/36159894 http://dx.doi.org/10.1007/s10664-022-10205-7 Text en © The Author(s) 2022 https://creativecommons.org/licenses/by/4.0/Open AccessThis article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/ (https://creativecommons.org/licenses/by/4.0/) . |
spellingShingle | Article Fregnan, Enrico Petrulio, Fernando Bacchelli, Alberto The evolution of the code during review: an investigation on review changes |
title | The evolution of the code during review: an investigation on review changes |
title_full | The evolution of the code during review: an investigation on review changes |
title_fullStr | The evolution of the code during review: an investigation on review changes |
title_full_unstemmed | The evolution of the code during review: an investigation on review changes |
title_short | The evolution of the code during review: an investigation on review changes |
title_sort | evolution of the code during review: an investigation on review changes |
topic | Article |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9489594/ https://www.ncbi.nlm.nih.gov/pubmed/36159894 http://dx.doi.org/10.1007/s10664-022-10205-7 |
work_keys_str_mv | AT fregnanenrico theevolutionofthecodeduringreviewaninvestigationonreviewchanges AT petruliofernando theevolutionofthecodeduringreviewaninvestigationonreviewchanges AT bacchellialberto theevolutionofthecodeduringreviewaninvestigationonreviewchanges AT fregnanenrico evolutionofthecodeduringreviewaninvestigationonreviewchanges AT petruliofernando evolutionofthecodeduringreviewaninvestigationonreviewchanges AT bacchellialberto evolutionofthecodeduringreviewaninvestigationonreviewchanges |