Why Developers Refactor Source Code
Refactoring aims at improving code non-functional attributes without modifying its external behavior. Previous studies investigated the motivations behind refactoring by surveying developers. With the aim of generalizing and complementing their findings, we present a large-scale study quantitatively and qualitatively investigating why developers perform refactoring in open source projects. First, we mine 287,813 refactoring operations performed in the history of 150 systems. Using this dataset, we investigate the interplay between refactoring operations and process (e.g., previous changes/fixes) and product (e.g., quality metrics) metrics. Then, we manually analyze 551 merged pull requests implementing refactoring operations and classify the motivations behind the implemented refactorings (e.g., removal of code duplication). Our results led to (i) quantitative evidence of the relationship existing between certain process/product metrics and refactoring operations and (ii) a detailed taxonomy, generalizing and complementing the ones existing in the literature, of motivations pushing developers to refactor source code.
Топ-30
Журналы
|
1
2
3
4
|
|
|
ACM Transactions on Software Engineering and Methodology
4 публикации, 7.84%
|
|
|
Empirical Software Engineering
4 публикации, 7.84%
|
|
|
IEEE Transactions on Software Engineering
3 публикации, 5.88%
|
|
|
Information and Software Technology
3 публикации, 5.88%
|
|
|
Journal of Software Evolution and Process
2 публикации, 3.92%
|
|
|
Lecture Notes in Computer Science
1 публикация, 1.96%
|
|
|
Arabian Journal for Science and Engineering
1 публикация, 1.96%
|
|
|
Journal of Systems and Software
1 публикация, 1.96%
|
|
|
Software Quality Journal
1 публикация, 1.96%
|
|
|
Expert Systems with Applications
1 публикация, 1.96%
|
|
|
Science of Computer Programming
1 публикация, 1.96%
|
|
|
Studies in Computational Intelligence
1 публикация, 1.96%
|
|
|
IET Software
1 публикация, 1.96%
|
|
|
1
2
3
4
|
Издатели
|
5
10
15
20
25
|
|
|
Institute of Electrical and Electronics Engineers (IEEE)
21 публикация, 41.18%
|
|
|
Association for Computing Machinery (ACM)
12 публикаций, 23.53%
|
|
|
Springer Nature
8 публикаций, 15.69%
|
|
|
Elsevier
6 публикаций, 11.76%
|
|
|
Wiley
2 публикации, 3.92%
|
|
|
Institution of Engineering and Technology (IET)
1 публикация, 1.96%
|
|
|
Sociedade Brasileira de Computacao - SB
1 публикация, 1.96%
|
|
|
5
10
15
20
25
|
- Мы не учитываем публикации, у которых нет DOI.
- Статистика публикаций обновляется еженедельно.