ABSTRACT
A software development team often follows a set of phases to ensure the product achieves its objectives. During these phases, it is essential to adopt good practices, such as code review, to ensure code quality. This paper reports a case study that aimed to evaluate the impact of the adoption of code review on a software project developed by an agile team at the Hospital Israelita Albert Einstein. We analyzed quantitative and qualitative metrics to compare two stages of the project: before and after the introduction of code review. After the introduction of such practices, we observed a trend of bug reduction and improvements regarding code quality. The discussions between authors and reviewers also improved. Additionally, the project team found the changes made in the project very positive.
- A. Frank Ackerman, Lynne S. Buchwald, and Frank H. Lewski. 1989. Software inspections: an effective verification process. IEEE software 6, 3 (1989), 31–36.Google Scholar
- Alberto Bacchelli and Christian Bird. 2013. Expectations, outcomes, and challenges of modern code review. In 2013 35th International Conference on Software Engineering (ICSE). IEEE, 712–721.Google ScholarCross Ref
- Kent Beck, Mike Beedle, Arie Van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, 2001. The agile manifesto.Google Scholar
- Flavia Coelho, Tiago Massoni, and Everton L.G. Alves. 2019. Refactoring-Aware Code Review: A Systematic Mapping Study. In 2019 IEEE/ACM 3rd International Workshop on Refactoring (IWoR). 63–66. https://doi.org/10.1109/IWoR.2019.00019Google ScholarDigital Library
- Juliet M Corbin and Anselm Strauss. 1990. Grounded theory research: Procedures, canons, and evaluative criteria. Qualitative sociology 13, 1 (1990), 3–21.Google Scholar
- Martin Fowler and Matthew Foemmel. 2006. Continuous integration.Google Scholar
- Tahir A. Liang P. Counsell S. Luo Y. Han, X.2021. Understanding Code Smell Detection Via Code Review: a Study Of The Openstack Community. 2021 IEEE/ACM 29th International Conference on Program Comprehension (ICPC) (2021). https://doi.org/10.1109/icpc52881.2021.00038Google ScholarCross Ref
- Hexacta. 2021. Hexacta: Delivering software on-time vs quality: pursuing the right balance.Google Scholar
- Jez Humble and David Farley. 2010. Continuous delivery: reliable software releases through build, test, and deployment automation. Pearson Education.Google Scholar
- Jing Jiang, Jiangfeng Lv, Jiateng Zheng, and Li Zhang. 2022. How Developers Modify Pull Requests in Code Review. IEEE Transactions on Reliability 71, 3 (2022), 1325–1339. https://doi.org/10.1109/TR.2021.3093159Google ScholarCross Ref
- Baysal O. Guerrouj L. Cao Y. Godfrey M. W. Kononenko, O.2015. Investigating Code Review Quality: Do People and Participation Matter?2015 IEEE International Conference on Software Maintenance and Evolution (ICSME) (2015). https://doi.org/10.1109/icsm.2015.7332457Google ScholarDigital Library
- Liu L. Kagdi H. Raghunathan, J.2018. Feedback Topics In Modern Code Review: Automatic Identification and Impact On Changes. International Conferences on Software Engineering and Knowledge Engineering (2018). https://doi.org/10.18293/seke2018-097Google ScholarCross Ref
- Peter Rigby, Brendan Cleary, Frederic Painchaud, Margaret-Anne Storey, and Daniel German. 2012. Open source peer review–lessons and recommendations for closed source. IEEE Software (2012).Google Scholar
- Caitlin Sadowski, Emma Söderberg, Luke Church, Michal Sipko, and Alberto Bacchelli. 2018. Modern code review: a case study at google. In Proceedings of the 40th international conference on software engineering: Software engineering in practice. 181–190.Google ScholarDigital Library
- Ken Schwaber. 1997. Scrum development process. In Business Object Design and Implementation: OOPSLA’95 Workshop Proceedings 16 October 1995, Austin, Texas. Springer, 117–134.Google ScholarCross Ref
- Forrest Shull and Carolyn Seaman. 2008. Inspecting the history of inspections: An example of evidence-based technology diffusion. IEEE software 25, 1 (2008), 88–90.Google Scholar
- Ian Sommerville. 2011. Software engineering (ed.). America: Pearson Education Inc (2011).Google Scholar
- Wagner D. Thompson, C. C.2017. A Large-scale Study Of Modern Code Review and Security In Open Source Projects. Proceedings of the 13th International Conference on Predictive Models and Data Analytics in Software Engineering (2017). https://doi.org/10.1145/3127005.3127014Google ScholarDigital Library
Index Terms
- A Case Study to Evaluate the Introduction of Code Review in a Industrial Project
Recommendations
Understanding code snippets in code reviews: a preliminary study of the OpenStack community
ICPC '22: Proceedings of the 30th IEEE/ACM International Conference on Program ComprehensionCode review is a mature practice for software quality assurance in software development with which reviewers check the code that has been committed by developers, and verify the quality of code. During the code review discussions, reviewers and ...
What makes a code change easier to review: an empirical investigation on code change reviewability
ESEC/FSE 2018: Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software EngineeringPeer code review is a practice widely adopted in software projects to improve the quality of code. In current code review practices, code changes are manually inspected by developers other than the author before these changes are integrated into a ...
Do bugs foreshadow vulnerabilities? An in-depth study of the chromium project
As developers face an ever-increasing pressure to engineer secure software, researchers are building an understanding of security-sensitive bugs (i.e. vulnerabilities). Research into mining software repositories has greatly increased our understanding ...
Comments