2018
DOI: 10.1016/j.infsof.2017.11.012
|View full text |Cite
|
Sign up to set email alerts
|

Empirical evaluation of software maintainability based on a manually validated refactoring dataset

Abstract: Context: Refactoring is a technique for improving the internal structure of software systems. It has a solid theoretical background while being used in development practice also. However, we lack empirical research results on the real effect of code refactoring and its application. Objective: This paper presents a manually validated subset of a previously published dataset containing the refactorings extracted by the RefFinder tool, code metrics, and maintainability of 7 open-source systems. We found that RefF… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

3
9
0

Year Published

2018
2018
2024
2024

Publication Types

Select...
5
2
1

Relationship

1
7

Authors

Journals

citations
Cited by 36 publications
(15 citation statements)
references
References 37 publications
3
9
0
Order By: Relevance
“…We formulated eight hypotheses on the differences/similarities between refactoring-inducing and non-refactoring-inducing PRs, discussed as follows. This is an expected result in light of the findings from Hegedüs et al, since refactored code has significantly higher size-related metrics [40]. We speculate that reviewing larger code churn may potentially promote refactorings.…”
Section: How Do Refactoring-inducing Pullsupporting
confidence: 74%
“…We formulated eight hypotheses on the differences/similarities between refactoring-inducing and non-refactoring-inducing PRs, discussed as follows. This is an expected result in light of the findings from Hegedüs et al, since refactored code has significantly higher size-related metrics [40]. We speculate that reviewing larger code churn may potentially promote refactorings.…”
Section: How Do Refactoring-inducing Pullsupporting
confidence: 74%
“…Software maintainability analyses should be led at the levels of component, subsystem and whole system to directly and simultaneously enhance its functionality, reliability and efficiency. Maintainability is considered as a crucial prerequisite for lifelong evolution of systems on the basis of efficient updating of their related software (Vogel-Heuser & Ocker, 2018), and is derived from particular source code metrics as indicators (Hegedűs et al, 2018). As observed by Saraiva et al (2015), a considerable number of product metrics has been proposed for software maintainability assessment in the literature, what poses a decision-making challenge for practitioners and researchers with relation to gain a consolidated overview about available and practically beneficial software metrics (Bouwers et al, 2014).…”
Section: Maintainability and Usability Standardsmentioning
confidence: 99%
“…In this paper, we used a public empirical dataset containing refactoring data for 7 open-source systems (antlr4, junit, mapdb, mcMMO, mct, oryx, titan) [32]. The experimental dataset used in our study is freely and publicly available at the PROMISE Repository.…”
Section: Datasetsmentioning
confidence: 99%