DocumentCode
626343
Title
Conditional-Based Refactorings and Fault-Proneness: An Empirical Study
Author
Counsell, Steve ; Gatrell, M. ; Hierons, Rob ; Murgia, Alessio ; Tonelli, Roberto ; Marchesi, M. ; Concas, Giulio
Author_Institution
Dept. of Inf. Syst., Brunel Univ., Uxbridge, UK
fYear
2013
fDate
18-22 March 2013
Firstpage
80
Lastpage
85
Abstract
Recent empirical work has shown that some of the most frequently applied Java-based refactorings relate to the manipulation of code conditionals and flags. The logic of such code is often complex and difficult to test regressively. One open research issue thus relates to the fault-proneness profiles of classes where these refactorings have been applied, vis-a-vis refactorings on other classes. In this paper, we explore six releases of three Eclipse projects and the faults in the refactored classes of those releases. We explore four specific conditional-based refactorings and the supposition that: classes where these four refactorings have been applied will tend to have relatively higher fault incidences because of the inherent complexity of the embedded logic given by the constructs they operate on. Results showed that one of the four refactorings in particular had been applied to classes with higher fault profiles - the `Replace Nested Conditional with Guard Clauses´ refactoring. Some evidence that the `Remove Control Flag´ refactoring had also been applied to relatively highly fault-prone classes was found. Relative to other types of refactoring, the result thus suggests that these two effectively signpost fault-prone classes.
Keywords
Java; software fault tolerance; software maintenance; Eclipse project; Java-based refactoring; code conditional; code flag; conditional-based fault-proneness; conditional-based refactoring; embedded logic; fault-proneness profile; remove control flag refactoring; replace nested conditional with guard clause refactoring; Complexity theory; Conferences; Correlation; Educational institutions; Fault diagnosis; Market research; Testing; Refactoring; conditionals; faults; object-oriented;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Testing, Verification and Validation Workshops (ICSTW), 2013 IEEE Sixth International Conference on
Conference_Location
Luxembourg
Print_ISBN
978-1-4799-1324-4
Type
conf
DOI
10.1109/ICSTW.2013.81
Filename
6571612
Link To Document