Abstract
Highly accurate prediction of software maintainability models is a significant requirement to achieve software quality assurance. Development an accurate prediction model may involve on trying several types of machine learning models with different configurations that include tuning parameters and selected features. However, this is a difficult and very time-consuming task to implement. In this paper, we report on the experience of using a new, rapid automated tool to identify the best prediction accuracy of a software maintainability model, namely Auto-WEKA, applied to sets of different models with various configurations. Auto-WEKA is applied to five datasets collected from real-world open-source software systems. The mean magnitude relative error (MMRE) value is used to evaluate the accuracy of predictive models, along with ZeroR model to compare selected model performance with the baseline. The results obtained from this study provide empirical evidence of the ability of Auto-WEKA to identify the best model to predict software maintainability. Auto-WEKA selected the following as the best prediction models: SMOreg in Eclipse JDT Core dataset, RandomSubSpace in Eclipse PDE UI dataset, KStar in Equinox Framework dataset, RandomForet in Lucene and Mylyn datasets. These selected models achieved a low MMRE value and improved performance of the accuracy prediction over the baseline. The proposed tool was found useful in identifying the best model in predicting software maintainability.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Jung, H.-W., Kim, S.-G., Chung, C.-S.: Measuring software product quality: A survey of ISO/IEC 9126. IEEE Softw. 21(5), 88–92 (2004)
IEEE Std 610.12-1990: IEEE Standard Glossary of Software Engineering Terminology. IEEE (1990)
van Koten, C., Gray, A.R.: An application of Bayesian network for predicting object-oriented software maintainability. Inf. Software Technol. 48(1), 59–67 (2006)
Zhou, Y., Leung, H.: Predicting object-oriented software maintainability using multivariate adaptive regression splines. J. Syst. Software 80(8), 1349–1361 (2007)
Elish, M.O., Elish, K.O.: Application of TreeNet in predicting object-oriented software maintainability: a comparative study. In: 2009 13th European Conference on Software Maintenance and Reengineering, pp. 69–78 (2009)
Malhotra, R., Chug, A.: Application of Group Method of Data Handling model for software maintainability prediction using object oriented systems. Int. J. Syst. Assur. Eng. Manag. 5(2), 165–173 (2014)
Thwin, M.M.T., Quah, T.-S.: Application of neural networks for software quality prediction using object-oriented metrics. J. Syst. Softw. 76(2), 147–156 (2005)
Kumar, L., Rath, S.K.: Software maintainability prediction using hybrid neural network and fuzzy logic approach with parallel computing concept. Int. J. Syst. Assur. Eng. Manag. J. Article 8(2), 1487–1502 (2017)
Alsolai, H.: Predicting software maintainability in object-oriented systems using ensemble techniques. In: 2018 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 716–721. IEEE (2018)
Li, W., Henry, S.: Object-oriented metrics that predict maintainability. J. Syst. Softw. 23(2), 111–122 (1993)
Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Software Eng. 20(6), 476–493 (1994)
Dahiya, S.S., Chhabra, J.K., Kumar, S.: Use of genetic algorithm for software maintainability metrics’ conditioning. In: 15th International Conference on Advanced Computing and Communications (ADCOM 2007), pp. 87–92: IEEE (2007)
Kotthoff, L., Thornton, C., Hoos, H.H., Hutter, F., Leyton-Brown, K.: Auto-WEKA 2.0: automatic model selection and hyperparameter optimization in WEKA. J. Mach. Learn. Res. 18(1), 826–830 (2017)
Kotthoff, L., Thornton, C., Hutter, F.: User guide for auto-WEKA version 2.3. Department of Computer Science, University of British Columbia, BETA lab, Vancouver, BC, Canada, Technical report, vol. 2 (2017)
Fernández-Delgado, M., Cernadas, E., Barro, S., Amorim, D.: Do we need hundreds of classifiers to solve real world classification problems? J. Mach. Learn. Res. 15(1), 3133–3181 (2014)
Olson, R.S., La Cava, W., Mustahsan, Z., Varik, A., Moore, J.H.: Data-driven advice for applying machine learning to bioinformatics problems. arXiv preprint arXiv:1708.05070 (2017)
Laradji, I.H., Alshayeb, M., Ghouti, L.: Software defect prediction using ensemble learning on selected features. Inf. Softw. Technol. 58, 388–402 (2015)
Gao, K., Khoshgoftaar, T.M., Wang, H., Seliya, N.: Choosing software metrics for defect prediction: an investigation on feature selection techniques. Softw. Pract. Experience 41(5), 579–606 (2011)
Catal, C., Diri, B.: Investigating the effect of dataset size, metrics sets, and feature selection techniques on software fault prediction problem. Inf. Sci. 179(8), 1040–1058 (2009)
Fu, W., Menzies, T., Shen, X.: Tuning for software analytics: is it really necessary? Inf. Softw. Technol. 76, 135–146 (2016)
Ambros, M.D., Lanza, M., Robbes, R.: An extensive comparison of bug prediction approaches. In: 2010 7th IEEE Working Conference on Mining Software Repositories (MSR 2010), pp. 31–41 (2010)
Yang, J., Qian, H.: Defect prediction on unlabeled datasets by using unsupervised clustering. In: 2016 IEEE 18th International Conference on High Performance Computing and Communications; IEEE 14th International Conference on Smart City; IEEE 2nd International Conference on Data Science and Systems (HPCC/SmartCity/DSS), pp. 465–472 (2016)
Boucher, A., Badri, M.: Using software metrics thresholds to predict fault-prone classes in object-oriented software. In: 2016 4th International Conference on Applied Computing and Information Technology/3rd International Conference on Computational Science/Intelligence and Applied Informatics/1st International Conference on Big Data, Cloud Computing, Data Science & Engineering (ACIT-CSII-BCD), pp. 169–176 (2016)
Ahmed, M.A., Al-Jamimi, H.A.: Machine learning approaches for predicting software maintainability: a fuzzy-based transparent model. IET Softw. 7(6), 317–326 (2013)
Kumar, L., Rath, S.: Predicting object-oriented software maintainability using hybrid neural network with parallel computing concept. In: Proceedings of the 8th India Software Engineering Conference, pp. 100–109. ACM (2015)
Kumar, L., Naik, D.K., Rath, S.K.: Validating the effectiveness of object-oriented metrics for predicting maintainability. Procedia Computer Science 57, 798–806 (2015)
Kitchenham, B.A., Pickard, L.M., MacDonell, S.G., Shepperd, M.J.: What accuracy statistics really measure [software estimation]. IEE Proc. Softw. 148(3), 81–85 (2001)
Shepperd, M., MacDonell, S.: Evaluating prediction systems in software project estimation. Inf. Softw. Technol. 54(8), 820–827 (2012)
Bi, J., Bennett, K.P.: Regression error characteristic curves. In: Proceedings of the 20th international conference on machine learning (ICML-03), pp. 43–50 (2003)
Mendes, E., Kitchenham, B.: Further comparison of cross-company and within-company effort estimation models for web applications. In: 10th International Symposium on Software Metrics, 2004. Proceedings, pp. 348–357. IEEE (2004)
Aher, S.B., Lobo, L.: Data mining in educational system using Weka. In: IJCA Proceedings on International Conference on Emerging Technology Trends (ICETT), vol. 3, pp. 20–25 (2011)
Venkatesh, A., Jacob, S.G.: Prediction of credit-card defaulters: a comparative study on performance of classifiers. Int. J. Comput. Appl. 145(7) (2016)
Alsolai, H., Roper, M.: Application of ensemble techniques in predicting object-oriented software maintainability. In: Proceedings of the Evaluation and Assessment on Software Engineering, Copenhagen, Denmark (2019)
Acknowledgments
We gratefully acknowledge Princess Nourah bint Abdulrahman University for their support in pursuing this research. We thank the University of Strathclyde for providing several facilities in the production of this research paper.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Alsolai, H., Roper, M. (2019). Determining the Best Prediction Accuracy of Software Maintainability Models Using Auto-WEKA. In: Alfaries, A., Mengash, H., Yasar, A., Shakshuki, E. (eds) Advances in Data Science, Cyber Security and IT Applications. ICC 2019. Communications in Computer and Information Science, vol 1098. Springer, Cham. https://doi.org/10.1007/978-3-030-36368-0_6
Download citation
DOI: https://doi.org/10.1007/978-3-030-36368-0_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-36367-3
Online ISBN: 978-3-030-36368-0
eBook Packages: Computer ScienceComputer Science (R0)