Title
Mining software repositories for adaptive change commits using machine learning techniques.
Abstract
Abstract Context Version Control Systems, such as Subversion, are standard repositories that preserve all of the maintenance changes undertaken to source code artifacts during the evolution of a software system. The documented data of the version history are organized as commits; however, these commits do not keep a tag that would identify the purpose of the relevant undertaken change of a commit, thus, there is rarely enough detail to clearly direct developers to the changes associated with a specific type of maintenance. Objective This work examines the version histories of an open source system to automatically classify version commits into one of two categories, namely adaptive commits and non-adaptive commits. Method We collected the commits from the version history of three open source systems, then we obtained eight different code change metrics related to, for example, the number of changed statements, methods, hunks, and files. Based on these change metrics, we built a machine learning approach to classify whether a commit was adaptive or not. Results It is observed that code change metrics can be indicative of adaptive maintenance activities. Also, the classification findings show that the machine learning classifier developed has approximately 75% prediction accuracy within labeled change histories. Conclusion The proposed method automates the process of examining the version history of a software system and identifies which commits to the system are related to an adaptive maintenance task. The evaluation of the method supports its applicability and efficiency. Although the evaluation of the proposed classifier on unlabeled change histories shows that it is not much better than the random guessing in terms of F -measure, we feel that our classifier would serve as a better basis for developing advanced classifiers that have predictive power of adaptive commits without the need of manual efforts.
Year
DOI
Venue
2019
10.1016/j.infsof.2019.01.008
Information and Software Technology
Keywords
Field
DocType
Code change metrics,Adaptive maintenance,Commit types,Maintenance classification,Machine learning
Predictive power,Source code,Computer science,Commit,Software system,Artificial intelligence,Control system,Classifier (linguistics),Machine learning,Learning classifier system,Mining software repositories
Journal
Volume
ISSN
Citations 
109
0950-5849
0
PageRank 
References 
Authors
0.34
0
5
Name
Order
Citations
PageRank
Omar Meqdadi190.90
Nouh Alhindawi2283.61
J Alsakran3454.33
Ahmad A. Saifan4196.55
Hatim Migdadi500.34