TY - JOUR
T1 - A machine learning based software process model recommendation method
AU - Song, Qinbao
AU - Zhu, Xiaoyan
AU - Wang, Guangtao
AU - Sun, Heli
AU - Jiang, He
AU - Xue, Chenhao
AU - Xu, Baowen
AU - Song, Wei
N1 - Publisher Copyright:
© 2016 Elsevier Inc. All rights reserved.
PY - 2016/8/1
Y1 - 2016/8/1
N2 - Among many factors that influence the success of a software project, the software process model employed is an essential one. An improper process model will be time consuming, error-prone and cost expensive, and further lower the quality of software. Therefore, how to choose an appropriate software process model is a very important problem for software development. Current works focus on the selection criteria and often lead to subjective results. In this paper, we propose a software process model recommendation method, to help project managers choose the most appropriate software process model for a new project at an early stage of development process according to historical software engineering data. The proposed method casts the process model recommendation into a classification problem. It first evaluates the different combinations of the alternative classification and attribute selection algorithms, and the best one is used to build the recommendation model with historical software engineering data; then, the constructed recommendation model is used to predict process models for a new software project with only a few data. We also analyze the mutual impacts between process models and different types of project factors, to further help managers locate the most suitable process model. We found process models are also responsible for defect count, defect severity and software change. Experiments on the data sets from 37 different development teams of different countries show that the average recommendation accuracy of our method reaches up to 82.5%, which makes it potentially useful in practice.
AB - Among many factors that influence the success of a software project, the software process model employed is an essential one. An improper process model will be time consuming, error-prone and cost expensive, and further lower the quality of software. Therefore, how to choose an appropriate software process model is a very important problem for software development. Current works focus on the selection criteria and often lead to subjective results. In this paper, we propose a software process model recommendation method, to help project managers choose the most appropriate software process model for a new project at an early stage of development process according to historical software engineering data. The proposed method casts the process model recommendation into a classification problem. It first evaluates the different combinations of the alternative classification and attribute selection algorithms, and the best one is used to build the recommendation model with historical software engineering data; then, the constructed recommendation model is used to predict process models for a new software project with only a few data. We also analyze the mutual impacts between process models and different types of project factors, to further help managers locate the most suitable process model. We found process models are also responsible for defect count, defect severity and software change. Experiments on the data sets from 37 different development teams of different countries show that the average recommendation accuracy of our method reaches up to 82.5%, which makes it potentially useful in practice.
KW - Impact analysis
KW - Machine learning
KW - Model recommendation
KW - Software process model
KW - Software project management
UR - https://www.scopus.com/pages/publications/84967329239
U2 - 10.1016/j.jss.2016.05.002
DO - 10.1016/j.jss.2016.05.002
M3 - 文章
AN - SCOPUS:84967329239
SN - 0164-1212
VL - 118
SP - 85
EP - 100
JO - Journal of Systems and Software
JF - Journal of Systems and Software
ER -