How are IF-Conditional Statements Fixed Through Peer CodeReview?

Yuki UEDA  Akinori IHARA  Takashi ISHIO  Toshiki HIRAO  Kenichi MATSUMOTO  

Publication
IEICE TRANSACTIONS on Information and Systems   Vol.E101-D   No.11   pp.2720-2729
Publication Date: 2018/11/01
Online ISSN: 1745-1361
DOI: 10.1587/transinf.2018EDP7004
Type of Manuscript: PAPER
Category: Software Engineering
Keyword: 
codeReview,  if statement,  code readability,  

Full Text: PDF(817.3KB)
>>Buy this Article


Summary: 
Peer code review is key to ensuring the absence of software defects. To reduce review costs, software developers adopt code convention checking tools that automatically identify maintainability issues in source code. However, these tools do not always address the maintainability issue for a particular project. The goal of this study is to understand how code review fixes conditional statement issues, which are the most frequent changes in software development. We conduct an empirical study to understand if-statement changes through code review. Using review requests in the Qt and OpenStack projects, we analyze changes of the if-conditional statements that are (1) requested to be reviewed, and are (2) revised through code review. We find the most frequently changed symbols are “( )”, “.”, and “!”. We also find project-specific fixing patterns for improving code readability by association rule mining. For example “!” operator is frequently replaced with a function call. These rules are useful for improving a coding convention checker tailored for the projects.