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 language | English |
|---|---|
| Title of host publication | Proceedings of the 2017 IEEE International Conference on Software Maintenance and Evolution (ICSME) |
| Subtitle of host publication | 19–22 September 2017 Shanghai, China |
| Place of Publication | Piscataway, NJ |
| Publisher | IEEE |
| Pages | 549-553 |
| Number of pages | 5 |
| ISBN (Electronic) | 978-1-5386-0992-7 |
| ISBN (Print) | 978-1-5386-0993-4 |
| DOIs | |
| Publication status | Published - 7 Nov 2017 |
| Externally published | Yes |
| Event | 33rd IEEE International Conference on Software Maintenance and Evolution, ICSME 2017 - Crowne Plaza Shanghai Fudan, Shanghai, China Duration: 17 Sept 2017 → 24 Sept 2017 Conference number: 33 https://icsme2017.github.io/ |
Publication series
| Name | International Conference on Software Maintenance (ICSM) |
|---|---|
| Publisher | IEEE |
| Volume | 2017 |
| ISSN (Print) | 1063-6773 |
| ISSN (Electronic) | 9161-8932 |
Conference
| Conference | 33rd IEEE International Conference on Software Maintenance and Evolution, ICSME 2017 |
|---|---|
| Abbreviated title | ICSME 2017 |
| Country/Territory | China |
| City | Shanghai |
| Period | 17/09/17 → 24/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
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver