Abstract
Software defect prediction helps improve software quality and allocate software test resources reasonably. Many defect prediction models based on software metrics have been proposed. However, the existing software metrics are mainly focused on structure information of source code, and the semantic information is lacking. Compilation optimization is the result of deep analysis of program semantics, and intuitively we believe that it should reflect the semantic information of the program in some ways to help defect prediction. Based on the optimization options widely used in the current compiler, this paper extracts 40 compilation optimization metrics based on DDG of program, and proposes seven types of metrics models that designed by different metrics sets. The relationship between compilation optimization metrics and software defect predictions was evaluated by 10 commonly used classifiers. Experimental results show: a) Compilation optimization metrics have a significant impact on the recall rate of software defect prediction. b) Static code metrics combined with compilation optimization metrics can improve the performance of software defect prediction in most classifiers. c) Code size optimization metrics and performance optimization metrics have their characteristics, combined both of them can get better performance in software defect prediction.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Mumtaz, B., Kanwal, S., Alamri, S., et al.: Feature selection using artificial immune network: an approach for software defect prediction. Intell. Autom. Soft Comput. 29(3), 669–684 (2021)
Sun, Y., Sun, Y., Qi, J., et al.: Unsupervised domain adaptation based on discriminative subspace learning for cross-project defect prediction. Comput. Mater. Continua. 68(3), 3373–3389 (2021)
Daoud, M., Aftab, S., Ahmad, M., et al.: Machine learning empowered software defect prediction system. Intell. Autom. Soft Comput. 31(2), 1287–1300 (2022)
Albahli, S., Nabi, G.: Defect prediction using akaike and bayesian information criterion. Comput. Syst. Sci. Eng. 41(3), 1117–1127 (2022)
Wang, S., Liu, T., Nam, J., et al.: Deep semantic feature learning for software defect prediction. IEEE Trans. Softw. Eng. 46(12), 1267–1293 (2020)
Li, J., He, P., Zhu, J., et al.: Software defect prediction via convolutional neural network. In: 2017 IEEE International Conference on Software Quality, Reliability and Security (QRS-C), pp. 318–328. IEEE (2017)
Zain, Z., Sakri, S., Halimatul, N., et al.: Software defect prediction harnessing on multi 1-dimensional convolutional neural network structure. Comput. Mater. Continua. 71(1), 1521–1546 (2022)
Phan, A., Nguyen, M., Bui, L.: Convolutional neural networks over control flow graphs for software defect prediction. In: IEEE 29th International Conference on Tools with Artificial Intelligence (ICTAI), Boston, MA, USA, pp. 45–52 (2017)
Martin, W., Christopher, V., Mario, L.: Toward deep learning software repositories. In: Mining Software Repositories (MSR), Florence, Italy, pp. 334–345 (2015)
Daskalantonakis, M.: A practical view of software measurement and implementation experiences within motorola. IEEE Trans. Softw. Eng. 18(11), 998–1010 (1992)
Zhou, Y., Xu, B., Leung, H.: On the ability of complexity metrics to predict fault-prone classes in object-oriented systems. J. Syst. Softw. 83(4), 660–674 (2010)
Zhou, Y., Leung, H., Leung, K., et al.: Examining the potentially confounding effect of class size on the associations between object-oriented metrics and change-proneness. IEEE Trans. Softw. Eng. 35(5), 607–623 (2009)
Zhou, Y., Xu, B., Leung, H., et al.: An in-depth study of the potentially confounding effect of class size in fault prediction. ACM Trans. Softw. Eng. Methodol. 23(1), 1–51 (2014)
Zhao, Y., Yang, Y., Lu, H., et al.: An empirical analysis of package-modularization metrics: Implications for software fault-proneness. Inf. Softw. Technol. 57(1), 186–203 (2015)
Santonu, S., Avinash, C., Girish, M.: Metrics for measuring the quality of modularization of large-scale object-oriented software. IEEE Trans. Softw. Eng. 34(5), 700–720 (2008)
Yang, Y., Zhou, Y., Lu, H., et al.: Are slice-based cohesion metrics actually useful in effort-aware post-release fault-proneness prediction? an empirical study. IEEE Trans. Softw. Eng. 41(4), 331–357 (2015)
Eken, B.: Assessing personalized software defect predictors. In: IEEE/ACM 40th International Conference on Software Engineering: Companion (ICSE-Companion), Gothenburg, Sweden, pp. 488–491. IEEE (2018)
Acknowledgement
This work was supported by the Universities Natural Science Research Project of Jiangsu Province under Grant 20KJB520026; the Foundation for Young Teachers of Nanjing Auditing University under Grant 19QNPY018; the National Nature Science Foundation of China under Grant 71972102 and 61902189.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Chen, Y., Xu, C., He, J.S., Xiao, S., Shen, F. (2022). DDG-Based Optimization Metrics for Defect Prediction. In: Sun, X., Zhang, X., Xia, Z., Bertino, E. (eds) Artificial Intelligence and Security. ICAIS 2022. Lecture Notes in Computer Science, vol 13338. Springer, Cham. https://doi.org/10.1007/978-3-031-06794-5_1
Download citation
DOI: https://doi.org/10.1007/978-3-031-06794-5_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-06793-8
Online ISBN: 978-3-031-06794-5
eBook Packages: Computer ScienceComputer Science (R0)