An Ensemble of Computational Intelligence Models for Software Maintenance Effort Prediction

More accurate prediction of software maintenance effort contributes to better management and control of software maintenance. Several research studies have recently investigated the use of computational intelligence models for software maintainability prediction. The performance of these models however may vary from dataset to dataset. Consequently, computational intelligence ensemble techniques have become increasingly popular as they take advantage of the capabilities of their constituent models toward a dataset to come up with more accurate or at least competitive prediction accuracy compared to individual models. This paper proposes and empirically evaluates an ensemble of computational intelligence models for predicting software maintenance effort. The results confirm that the proposed ensemble technique provides more accurate prediction compared to individual models, and thus it is more reliable.

[1]  Yoav Freund,et al.  Boosting a weak learning algorithm by majority , 1995, COLT '90.

[2]  Vijay K. Vaishnavi,et al.  Predicting Maintenance Performance Using Object-Oriented Design Complexity Metrics , 2003, IEEE Trans. Software Eng..

[3]  Yuming Zhou,et al.  Predicting object-oriented software maintainability using multivariate adaptive regression splines , 2007, J. Syst. Softw..

[4]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[5]  Anders Krogh,et al.  Neural Network Ensembles, Cross Validation, and Active Learning , 1994, NIPS.

[6]  Tsuhan Chen,et al.  Pose invariant face recognition , 2000, Proceedings Fourth IEEE International Conference on Automatic Face and Gesture Recognition (Cat. No. PR00580).

[7]  David W. Opitz,et al.  Actively Searching for an E(cid:11)ective Neural-Network Ensemble , 1996 .

[8]  David W. Opitz,et al.  Generating Accurate and Diverse Members of a Neural-Network Ensemble , 1995, NIPS.

[9]  F. Girosi,et al.  Networks for approximation and learning , 1990, Proc. IEEE.

[10]  M.C.P. de Souto,et al.  An empirical comparison of individual machine learning techniques and ensemble approaches in protein structural class prediction , 2005, Proceedings. 2005 IEEE International Joint Conference on Neural Networks, 2005..

[11]  Ian Witten,et al.  Data Mining , 2000 .

[12]  Ian H. Witten,et al.  Data mining: practical machine learning tools and techniques, 3rd Edition , 1999 .

[13]  Ian H. Witten,et al.  Induction of model trees for predicting continuous classes , 1996 .

[14]  C. van Koten,et al.  An application of Bayesian network for predicting object-oriented software maintainability , 2006, Inf. Softw. Technol..

[15]  Jun Zheng,et al.  Predicting software reliability with neural network ensembles , 2009, Expert Syst. Appl..

[16]  Hamoud I. Aljamaan,et al.  An empirical study of bagging and boosting ensembles for identifying faulty classes in object-oriented software , 2009, 2009 IEEE Symposium on Computational Intelligence and Data Mining.

[17]  Leo Breiman,et al.  Bagging Predictors , 1996, Machine Learning.

[18]  Andrea De Lucia,et al.  Assessing effort estimation models for corrective maintenance through empirical studies , 2005, Inf. Softw. Technol..

[19]  S. Sathiya Keerthi,et al.  Improvements to the SMO algorithm for SVM regression , 2000, IEEE Trans. Neural Networks Learn. Syst..

[20]  Taghi M. Khoshgoftaar,et al.  Empirical case studies of combining software quality classification models , 2003, Third International Conference on Quality Software, 2003. Proceedings..

[21]  Lars Kai Hansen,et al.  Neural Network Ensembles , 1990, IEEE Trans. Pattern Anal. Mach. Intell..

[22]  Vladimir N. Vapnik,et al.  The Nature of Statistical Learning Theory , 2000, Statistics for Engineering and Information Science.

[23]  Jianchang Mao,et al.  A case study on bagging, boosting and basic ensembles of neural networks for OCR , 1998, 1998 IEEE International Joint Conference on Neural Networks Proceedings. IEEE World Congress on Computational Intelligence (Cat. No.98CH36227).

[24]  Ron Kohavi,et al.  A Study of Cross-Validation and Bootstrap for Accuracy Estimation and Model Selection , 1995, IJCAI.

[25]  Nathan Intrator,et al.  Classification of seismic signals by integrating ensembles of neural networks , 1998, IEEE Trans. Signal Process..

[26]  Harry Wechsler,et al.  Face recognition using hybrid classifier systems , 1996, Proceedings of International Conference on Neural Networks (ICNN'96).

[27]  H. E. Dunsmore,et al.  Software engineering metrics and models , 1986 .

[28]  Sallie M. Henry,et al.  Object-oriented metrics that predict maintainability , 1993, J. Syst. Softw..

[29]  Vadlamani Ravi,et al.  Software reliability prediction by soft computing techniques , 2008, J. Syst. Softw..

[30]  Sherif Hashem,et al.  Optimal Linear Combinations of Neural Networks , 1997, Neural Networks.

[31]  Subhas C. Misra Modeling Design/Coding Factors That Drive Maintainability of Software Systems , 2005, Software Quality Journal.

[32]  Paolo Nesi,et al.  Estimation and Prediction Metrics for Adaptive Maintenance Effort of Object-Oriented Systems , 2001, IEEE Trans. Software Eng..

[33]  Tong-Seng Quah,et al.  Application of neural networks for software quality prediction using object-oriented metrics , 2005, J. Syst. Softw..

[34]  D. Opitz,et al.  Popular Ensemble Methods: An Empirical Study , 1999, J. Artif. Intell. Res..

[35]  Silvio Romero de Lemos Meira,et al.  Bagging Predictors for Estimation of Software Project Effort , 2007, 2007 International Joint Conference on Neural Networks.

[36]  Karim O. Elish,et al.  Application of TreeNet in Predicting Object-Oriented Software Maintainability: A Comparative Study , 2009, 2009 13th European Conference on Software Maintenance and Reengineering.

[37]  J. Nazuno Haykin, Simon. Neural networks: A comprehensive foundation, Prentice Hall, Inc. Segunda Edición, 1999 , 2000 .

[38]  Anders Krogh,et al.  Learning with ensembles: How overfitting can be useful , 1995, NIPS.

[39]  Lionel C. Briand,et al.  A Controlled Experiment for Evaluating Quality Guidelines on the Maintainability of Object-Oriented Designs , 2001, IEEE Trans. Software Eng..