Part 1: Full PapersInternational audienceSoftware code review systems are commonly used in software development. In these systems, many patches are submitted to improve the quality. To verify the quality, voting is commonly used by contributors; however, there still exists a major problem, namely, that reviewers do not always simply reach a broad agreement. In our previous study, we found that consensus is not usually reached, implying that an individual reviewer’s final decision usually differs from that of the majority of the other reviewers. In this study, we further investigate the reasons why such situations often occur, and provide suggestions for better handling of these problems. Our analysis of the Qt and OpenStack project datasets allow us to suggest that a patch owner should select more appropriate reviewers who often agree with others’ decisions
Code review is key to ensuring the absence of potential issues in source code. Code reviewers spend a large amount of time to manually check submitted patches based on their knowledge. Since a number of patches sometimes have similar potential issues, code reviewers need to suggest similar source code changes to patch authors. If patch authors notice similar code improvement patterns by themselves before submitting to code review, reviewers' cost would be reduced. In order to detect similar code changes patterns, this study employs a sequential pattern mining to detect source code improvement patterns that frequently appear in code review history. In a case study using a code review dataset of the OpenStack project, we found that the detected patterns by our proposed approach included effective examples to improve patches without reviewers' manual check. We also found that the patterns have been changed in time series; our pattern mining approach timely achieves to track the effective code improvement patterns.
Peer code review is key work to ensure the absence of software defects. To improve the review process, many code review tools provide OSS projects CI tests that automatically verify the code quality issues such as a code convention issue and a syntax issue. However, it does not cover every issues such as project policy issue and a code readability issue. In this study, our main goal is to understand how a code owner fixes conditional statement issues based on reviewers feedback. As a first step to achieve this goal, we conduct an empirical study to understand if statement changes after reviewing. Using 69,325 review requests in the Qt project, we analyze changes of the if conditional statement (1) that are requested to review, and (2) that are implemented after reviewing. As a result, we find that most common symbolic changes are "(" and ")" (35%) , "!" operator (20%) and "->" operator (12%). Also, "!" operator is frequently replaced with "(" and ")".
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.