Abstract
The software fault classification is very crucial in the development of reliable and high-quality software products. The fault classification allows determining and concentrating on fault software modules for early prediction of fault in time. As a result, it saves the time and money of the industry. Generally, various metrics are generated to represent the fault. But, selecting the dominant metrics from the available set is a challenge. Therefore, in this paper, a sequential forward search (SFS) with extreme learning machine (ELM) approach has used for fault classification. The number of features available in the metrics are selected to represent the fault using SFS and operated on ELM to verify the performance of software fault classification. Also, various activation functions of ELM have tested for the proposed work to identify the best model. The experimental result demonstrates that ELM with radial basis function achieves the good results compared to other activation function. Also, the proposed method has shown good results in comparison to support vector machine.
Similar content being viewed by others
References
Menzies T, Greenwald J, Frank A (2007) Data mining static code attributes to learn defect predictors. IEEE Trans Softw Eng 1:2–13
Nagappan N, Ball T (2005) Static analysis tools as early indicators of pre-release defect density. In: Proceedings of the 27th international conference on software engineering. ACM, pp 580–586
Elish KO, Elish MO (2008) Predicting defect-prone software modules using support vector machines. J Syst Softw 81(5):649–660
Turhan B, Bener A (2009) Analysis of Naive Bayes’ assumptions on software fault data: an empirical study. Data Knowl Eng 68(2):278–290
Catal C, Diri B (2009) Investigating the effect of dataset size, metrics sets, and feature selection techniques on software fault prediction problem. Inf Sci 179(8):1040–1058
Singh P, Pal NR, Verma S, Vyas OP (2017) Fuzzy rule-based approach for software fault prediction. IEEE Trans Syst Man Cybern Syst 47(5):826–837
Dhanajayan RCG, Pillai SA (2017) SLMBC: spiral life cycle model-based Bayesian classification technique for efficient software fault prediction and classification. Soft Comput 21(2):403–415
Shatnawi R (2017) The application of ROC analysis in threshold identification, data imbalance and metrics selection for software fault prediction. Innov Syst Softw Eng 13(2–3):201–217
Bishnu PS, Bhattacherjee V (2012) Software fault prediction using quad tree-based k-means clustering algorithm. IEEE Trans Knowl Data Eng 24(6):1146–1150
Yadav HB, Yadav DK (2015) A fuzzy logic based approach for phase-wise software defects prediction using software metrics. Inf Softw Technol 63:44–57
Aljahdali S, Sheta AF (2011) Predicting the reliability of software systems using fuzzy logic. In: Proceedings of the eighth international conference on information technology: new generations (ITNG). IEEE, pp 36–40
Abaei G, Selamat A (2015) Increasing the accuracy of software fault prediction using majority ranking fuzzy clustering. In: Proceedings of the software engineering, artificial intelligence, networking and parallel/distributed computing, pp 179–193. Springer, Cham
Li K, Chen C, Liu W, Fang X, Lu Q (2014) Software defect prediction using fuzzy integral fusion based on GA-FM. Wuhan Univ J Nat Sci 19(5):405–408
Okutan A, Yıldız OT (2014) Software defect prediction using Bayesian networks. Empir Softw Eng 19(1):154–181
Li L, Leung H (2013) Bayesian prediction of fault-proneness of agile-developed object-oriented system. In: Proceedings of the international conference on enterprise information systems, pp 209–225. Springer, Cham
Catal C, Sevim U, Diri B (2011) Practical development of an Eclipse-based software fault prediction tool using Naive Bayes algorithm. Expert Syst Appl 38(3):2347–2353
Chatterjee S, Nigam S, Singh JB, Upadhyaya LN (2012) Software fault prediction using nonlinear autoregressive with exogenous inputs (NARX) network. Appl Intell 37(1):121–129
Jindal R, Malhotra R, Jain A (2014) Software defect prediction using neural networks. In: Proceedings of the 3rd international conference on reliability, infocom technologies and optimization (ICRITO) (trends and future directions). IEEE, pp 1–6
Schumann J, Mbaya T, Mengshoel O, Pipatsrisawat K, Srivastava A, Choi A, Darwiche A (2013) Software health management with Bayesian networks. Innov Syst Softw Eng 9(4):271–292
Pushphavathi TP, Suma V, Ramaswamy V (2014) A novel method for software defect prediction: hybrid of FCM and random forest. In: Proceedings of the international conference on electronics and communication systems (ICECS). IEEE, pp 1–5
Khoshgoftaar TM, Xiao Y, Gao K (2014) Software quality assessment using a multi-strategy classifier. Inf Sci 259:555–570
Perkusich M, Soares G, Almeida H, Perkusich A (2015) A procedure to detect problems of processes in software development projects using Bayesian networks. Expert Syst Appl 42(1):437–450
Alzghoul A, Löfstrand M, Backe B (2012) Data stream forecasting for system fault prediction. Comput Ind Eng 62(4):972–978
Ahmadon MAB, Yamaguchi S, Gupta BB (2016) A Petri-net based approach for software evolution. In: Proceedings of the 7th international conference on information and communication systems (ICICS). IEEE, pp 264–269
Ahmadon MAB, Yamaguchi S, Gupta BB (2018) Petri net-based verification of security protocol implementation in software evolution. Int J Embed Syst 10(6):503–517
Jararweh Y, Alsmirat M, Al-Ayyoub M, Benkhelifa E, Darabseh A, Gupta B, Doulat A (2017) Software-defined system support for enabling ubiquitous mobile edge computing. Comput J 60(10):1443–1457
Monden A, Hayashi T, Shinoda S, Shirai K, Yoshida J, Barker M, Matsumoto K (2013) Assessing the cost effectiveness of fault prediction in acceptance testing. IEEE Trans Softw Eng 39(10):1345–1357
Singh P, Verma S (2012) Empirical investigation of fault prediction capability of object oriented metrics of open source software. In: Proceedings of the international joint conference on computer science and software engineering (JCSSE). IEEE, pp 323–327
Rajaganapathy CD, Subramani A (2015) A comparative study of different software fault prediction and classification techniques. Res J Appl Sci Eng Technol 10(7):831–840
Rathore SS, Kumar S (2017) An empirical study of some software fault prediction techniques for the number of faults prediction. Soft Comput 21(24):7417–7434
Chatterjee S, Maji B (2016) A new fuzzy rule based algorithm for estimating software faults in early phase of development. Soft Comput 20(10):4023–4035
Choudhary GR, Kumar S, Kumar K, Mishra A, Catal C (2018) Empirical analysis of change metrics for software fault prediction. Comput Electr Eng 67:15–24
Rhmann W (2018) Cross project defect prediction using hybrid search based algorithms. Int J Inf Technol. https://doi.org/10.1007/s41870-018-0244-7
Zhu M, Pham H (2018) A two-phase software reliability modeling involving with software fault dependency and imperfect fault removal. Comput Lang Syst Struct 53:27–42
Huang GB, Chen L, Siew CK (2006) Universal approximation using incremental constructive feedforward networks with random hidden nodes. IEEE Trans Neural Netw 17(4):879–892
Huang G, Huang GB, Song S, You K (2015) Trends in extreme learning machines: a review. Neural Netw 61:32–48
Ahila R, Sadasivam V, Manimala K (2015) An integrated PSO for parameter determination and feature selection of ELM and its application in classification of power system disturbances. Appl Soft Comput 32:23–37
Li S, Wang P, Goel L (2015) Short-term load forecasting by wavelet transform and evolutionary extreme learning machine. Electr Power Syst Res 122:96–103
Suresh S, Saraswathi S, Sundararajan N (2010) Performance enhancement of extreme learning machine for multi-category sparse data classification problems. Eng Appl Artif Intell 23(7):1149–1157
Whitney AW (1971) A direct method of nonparametric measurement selection. IEEE Trans Comput 100(9):1100–1103
Pudil P, Novovičová J, Kittler J (1994) Floating search methods in feature selection. Pattern Recognit Lett 15(11):1119–1125
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Pandey, A.K., Gupta, M. Software fault classification using extreme learning machine: a cognitive approach. Evol. Intel. 15, 2261–2268 (2022). https://doi.org/10.1007/s12065-018-0193-x
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s12065-018-0193-x