Publication Type

Journal Article

Version

publishedVersion

Publication Date

6-2019

Abstract

Software developers contribute numerous changes every day to the code review systems. However, not all submitted changes are merged into a codebase because they might not pass the code review process. Some changes would be abandoned or be asked for resubmission after improvement, which results in more workload for developers and reviewers, and more delays to deliverables. To understand the underlying reasons why changes are abandoned, we conduct an empirical study on the code review of four open source projects (Eclipse, LibreOffice, OpenStack, and Qt).First, we manually analyzed 1459 abandoned changes. Second, we leveraged the open card sorting method to label these changes with reasons why they were abandoned, and we identified 12 categories of reasons. Next, we further investigated the frequency distribution of the categories across projects. Finally, we studied the relationship between the categories and time-to-abandonment.Our findings include the following: (1) Duplicate changes are the majority of the abandoned changes; (2) the frequency distribution of abandoned changes across the 12 categories is similar for the four open source projects; (3) 98.39% of the changes are abandoned within a year. Our study concluded the root causes of abandoned changes, which will help developers submit high-quality code changes.

Keywords

Abandoned change, Empirical study, Code review

Discipline

Software Engineering

Research Areas

Software and Cyber-Physical Systems

Publication

Information and Software Technology

Volume

110

First Page

108

Last Page

120

ISSN

0950-5849

Identifier

10.1016/j.infsof.2019.02.007

Publisher

Elsevier

Copyright Owner and License

Authors

Additional URL

https://doi.org/10.1016/j.infsof.2019.02.007

Share

COinS