Please use this identifier to cite or link to this item: http://bura.brunel.ac.uk/handle/2438/30380
Title: Understanding Code Smell Detection via Code Review: A Study of the OpenStack Community
Authors: Han, X
Tahir, A
Liang, P
Counsell, S
Luo, Y
Keywords: code review;code smell;mining software;repositories;empirical study
Issue Date: 20-May-2021
Publisher: Institute of Electrical and Electronics Engineers (IEEE)
Citation: Han, X. eyt al. (2021) 'Understanding Code Smell Detection via Code Review: A Study of the OpenStack Community', 2021 IEEE/ACM 29th International Conference on Program Comprehension (ICPC), Madrid, Spain (virtual), 20-21 May, pp. 323 - 334. doi: 10.1109/ICPC52881.2021.00038.
Abstract: Code review plays an important role in software quality control. A typical review process would involve a careful check of a piece of code in an attempt to find defects and other quality issues/violations. One type of issues that may impact the quality of the software is code smells - i.e., bad programming practices that may lead to defects or maintenance issues. Yet, little is known about the extent to which code smells are identified during code reviews. To investigate the concept behind code smells identified in code reviews and what actions reviewers suggest and developers take in response to the identified smells, we conducted an empirical study of code smells in code reviews using the two most active OpenStack projects (Nova and Neutron). We manually checked 19,146 review comments obtained by keywords search and random selection, and got 1,190 smell-related reviews to study the causes of code smells and actions taken against the identified smells. Our analysis found that 1) code smells were not commonly identified in code reviews, 2) smells were usually caused by violation of coding conventions, 3) reviewers usually provided constructive feedback, including fixing (refactoring) recommendations to help developers remove smells, and 4) developers generally followed those recommendations and actioned the changes. Our results suggest that 1) developers should closely follow coding conventions in their projects to avoid introducing code smells, and 2) review-based detection of code smells is perceived to be a trustworthy approach by developers, mainly because reviews are context-sensitive (as reviewers are more aware of the context of the code given that they are part of the project's development team).
URI: https://bura.brunel.ac.uk/handle/2438/30380
DOI: https://doi.org/10.1109/ICPC52881.2021.00038
ISBN: 978-1-6654-1403-6 (ebk)
978-1-6654-1404-3 (PoD)
ISSN: 2643-7147
Other Identifiers: ORCiD: Steve Counsell https://orcid.org/0000-0002-2939-8919
Appears in Collections:Dept of Computer Science Research Papers

Files in This Item:
File Description SizeFormat 
FullText.pdfCopyright © 2021 Institute of Electrical and Electronics Engineers (IEEE). Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works. See: https://journals.ieeeauthorcenter.ieee.org/become-an-ieee-journal-author/publishing-ethics/guidelines-and-policies/post-publication-policies/744.28 kBAdobe PDFView/Open


Items in BURA are protected by copyright, with all rights reserved, unless otherwise indicated.