Login | Register

Untangling Java Code Changes


Untangling Java Code Changes

Chen, Xiaowei (2021) Untangling Java Code Changes. Masters thesis, Concordia University.

[thumbnail of Chen_MASc_F2021.pdf]
Text (application/pdf)
Chen_MASc_F2021.pdf - Accepted Version


Pull requests are a critical approach for developers to collaborate in software development, which also initiates the following code review and integration. However, tangled pull requests can be introduced into version control systems via committing unrelated or multi-purposes code changes in one single pull request, which have been found to bring a negative impact on code recommendation systems and bug prediction models in the previous research. In this thesis, we conduct a case study on 640 pull requests among 8 popular open-source Java projects from GitHub. Through manual analysis, we find that 47% of the pull requests are tangled. In order to further understand the characteristics of tangled pull requests, we perform a qualitative annotation and classify the reasons for tangled pull requests. We find that 75% are tangled because bug fixing, feature improvement, or new feature adding are committed with an update in test code. The remaining 25% of pull requests are tangled because developers commit two or more unrelated bug fixing, feature improvement, test code adding or modifying, new feature adding, feature improvement and bug fixing, and other combinations inside one pull request. We also propose an approach to predict whether a pull request is tangled or not with an AUC of 0.87. Furthermore, we also predict whether two lines of code changes belong to the same task, which achieves an AUC of 0.74.

Divisions:Concordia University > Gina Cody School of Engineering and Computer Science > Computer Science and Software Engineering
Item Type:Thesis (Masters)
Authors:Chen, Xiaowei
Institution:Concordia University
Degree Name:M.A. Sc.
Program:Software Engineering
Date:9 July 2021
Thesis Supervisor(s):Shihab, Emad
ID Code:988532
Deposited By: Xiaowei Chen
Deposited On:29 Nov 2021 16:33
Last Modified:29 Nov 2021 16:33
All items in Spectrum are protected by copyright, with all rights reserved. The use of items is governed by Spectrum's terms of access.

Repository Staff Only: item control page

Downloads per month over past year

Research related to the current document (at the CORE website)
- Research related to the current document (at the CORE website)
Back to top Back to top