원문정보
초록
영어
This study aims to extensively analyze the performance of various Machine Learning (ML) techniques for predicting version to version change-proneness of source code Java files. 17 object-oriented metrics have been utilized in this work for predicting change-prone files using 31 ML techniques and the framework proposed has been implemented on various consecutive releases of two Java-based software projects available as plug-ins. 10-fold and inter-release validation methods have been employed to validate the models and statistical tests provide supplementary information regarding the reliability and significance of the results. The results of experiments conducted in this article indicate that the ML techniques perform differently under the different validation settings. The results also confirm the proficiency of the selected ML techniques in lieu of developing change-proneness prediction models which could aid the software engineers in the initial stages of software development for classifying change-prone Java files of a software, in turn aiding in the trend estimation of change-proneness over future versions.
목차
Ⅰ. Introduction
Ⅱ. Related Work
Ⅲ. Pragmatic Framework for Change-proneness Prediction
3.1. Variables in the Study
3.2. Description of the Target Projects
3.3. Empirical Data Collection
Ⅳ. Experimental Setup
4.1. Resampling of Unbalanced Datasets
4.2. Outlier Detection and Removal
4.3. Feature Selection Methods
4.4. Prediction Techniques Incorporated
4.5. Performance Evaluation Metrics
4.6. Validation Methodologies
4.7. Statistical Evaluations
Ⅴ. Empirical Results and Analysis
5.1. RQ1:
5.2. RQ2:
5.3. RQ3:
5.4. RQ4:
Ⅵ. Threats to Validity
Ⅶ. Conclusion and Future Work