2019
DOI: 10.1016/j.scico.2019.05.002
|View full text |Cite
|
Sign up to set email alerts
|

A large-scale empirical exploration on refactoring activities in open source software projects

Abstract: Refactoring is a well-established practice that aims at improving the internal structure of a software system without changing its external behavior. Existing literature provides evidence of how and why developers perform refactoring in practice. In this paper, we continue on this line of research by performing a large-scale empirical analysis of refactoring practices in 200 open source systems. Specifically, we analyze the change history of these systems at commit level to investigate: (i) whether developers … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

5
22
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
5
3

Relationship

1
7

Authors

Journals

citations
Cited by 40 publications
(27 citation statements)
references
References 53 publications
5
22
0
Order By: Relevance
“…All the aforementioned work relate refactoring actions to quality attributes, such as metrics, code smells, or to process indicators (as Vassallo et al [48] did), whereas our study relates refactoring actions to bug introduction, while considering the effect of some change metrics (i.e., change size) as a co-factor. Our study allowed to (partially) corroborate previous findings reported in the literature [8].…”
Section: Related Workmentioning
confidence: 99%
See 2 more Smart Citations
“…All the aforementioned work relate refactoring actions to quality attributes, such as metrics, code smells, or to process indicators (as Vassallo et al [48] did), whereas our study relates refactoring actions to bug introduction, while considering the effect of some change metrics (i.e., change size) as a co-factor. Our study allowed to (partially) corroborate previous findings reported in the literature [8].…”
Section: Related Workmentioning
confidence: 99%
“…Vassallo et al [48] mined 200 systems to quantitatively investigate factors correlating with refactoring, looking at when, why, and by whom refactoring is performed. Their results show that refactorings (i) are rarely performed close to a new release; (ii) are mainly performed while improving existing features; and (iii) are mainly done by the owners of the code components being refactored.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…Tsantalis et al [30] automatically detect refactorings in commit history; however, their approach is currently limited to fine-grained analysis of classical refactorings, supports only Java, which is problematic for multilanguage ML systems, and does not correlate technical debt. Kim et al [36] study refactoring challenges and benefits at Microsoft, while Vassallo et al [69] perform a large-scale refactoring study on open-source software, and Murphy-Hill et al [70] study general refactoring at the IDE level. Sousa et al [71] characterize composite refactorings, Hora and Robbes [72] explore the characteristics of method extraction refactorings, Peruma et al [73] investigate refactorings of unit tests in Android, and Bavota et al [60] and Ferreira et al [74] study fault inducing refactoring activities.…”
Section: Re L a T E D W O R Kmentioning
confidence: 99%
“…Recent findings have shown how developers' experience constitutes a key factor to carefully consider during maintenance tasks [2], [3], [8]- [10], [32], [33]. For instance, Bhatt et al [10] found that human and organizational factors such as organization climate, customer attitude, and developers' experience have a significant influence on software maintenance effort.…”
Section: B On the Use Of Developers' Experiencementioning
confidence: 99%