Skip to main navigation Skip to search Skip to main content

Confusion detection in code reviews

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

Abstract

Code reviews are an important mechanism for assuring quality of source code changes. Reviewers can either add general comments pertaining to the entire change or pinpoint concerns or shortcomings about a specific part of the change using inline comments. Recent studies show that reviewers often do not understand the change being reviewed and its context. Our ultimate goal is to identify the factors that confuse code reviewers and understand how confusion impacts the efficiency and effectiveness of code review(er)s. As the first step towards this goal we focus on the identification of confusion in developers' comments. Based on an existing theoretical framework categorizing expressions of confusion, we manually classify 800 comments from code reviews of the Android project. We observe that confusion can be reasonably well-identified by humans: raters achieve moderate agreement (Fleiss' kappa 0.59 for the general comments and 0.49 for the inline ones). Then, for each kind of comment we build a series of automatic classifiers that, depending on the goals of the further analysis, can be trained to achieve high precision (0.875 for the general comments and 0.615 for the inline ones), high recall (0.944 for the general comments and 0.988 for the inline ones), or substantial precision and recall (0.696 and 0.542 for the general comments and 0.434 and 0.583 for the inline ones, respectively). These results motivate further research on the impact of confusion on the code review process. Moreover, other researchers can employ the proposed classifiers to analyze confusion in other contexts where software development-related discussions occur, such as mailing lists.

Original languageEnglish
Title of host publicationProceedings of the 2017 IEEE International Conference on Software Maintenance and Evolution (ICSME)
Subtitle of host publication19–22 September 2017 Shanghai, China
Place of PublicationPiscataway, NJ
PublisherIEEE
Pages549-553
Number of pages5
ISBN (Electronic)978-1-5386-0992-7
ISBN (Print)978-1-5386-0993-4
DOIs
Publication statusPublished - 7 Nov 2017
Externally publishedYes
Event33rd IEEE International Conference on Software Maintenance and Evolution, ICSME 2017 - Crowne Plaza Shanghai Fudan, Shanghai, China
Duration: 17 Sept 201724 Sept 2017
Conference number: 33
https://icsme2017.github.io/

Publication series

NameInternational Conference on Software Maintenance (ICSM)
PublisherIEEE
Volume2017
ISSN (Print)1063-6773
ISSN (Electronic)9161-8932

Conference

Conference33rd IEEE International Conference on Software Maintenance and Evolution, ICSME 2017
Abbreviated titleICSME 2017
Country/TerritoryChina
CityShanghai
Period17/09/1724/09/17
Internet address

Keywords

  • n/a OA procedure
  • Confusion
  • Machine learning
  • Code review

Fingerprint

Dive into the research topics of 'Confusion detection in code reviews'. Together they form a unique fingerprint.

Cite this