Code Smells Detection via Modern Code Review: A Study of the OpenStack and Qt Communities
Xiaofeng Han, Amjed Tahir, Peng Liang, Steve Counsell, Kelly Blincoe,, Bing Li, Yajing Luo

TL;DR
This study investigates how code smells are identified and addressed during modern code reviews in open source projects, revealing that smells are rarely detected but often fixed following reviewer suggestions, emphasizing the importance of coding conventions and context.
Contribution
It provides empirical insights into the detection, discussion, and fixing of code smells during modern code reviews in large open source communities.
Findings
Code smells are infrequently identified in reviews.
Reviewers often suggest fixes for detected smells.
Developers typically fix smells within a week after detection.
Abstract
Code review that detects and locates defects and other quality issues plays an important role in software quality control. One type of issue that may impact the quality of software is code smells. Yet, little is known about the extent to which code smells are identified during modern code review. To investigate the concept behind code smells identified in modern code review and what actions reviewers suggest and developers take in response to the identified smells, we conducted a study of code smells in code reviews by analyzing reviews from four large open source projects from the OpenStack (Nova and Neutron) and Qt (Qt Base and Qt Creator) communities. We manually checked a total of 25,415 code review comments obtained by keywords search and random selection, and identified 1,539 smell-related reviews. Our analysis found that 1) code smells were not commonly identified in code…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Open Source Software Innovations · Software System Performance and Reliability
