journal article·2022Open access

Explainable Software Fault Localization Model: From Blackbox to Whitebox

Abdulaziz Alhumam

Computers, Materials & Continua· Volume 73· Issue 1

Abstract

The most resource-intensive and laborious part of debugging is finding the exact location of the fault from the more significant number of code snippets. Plenty of machine intelligence models has offered the effective localization of defects. Some models can precisely locate the faulty with more than 95% accuracy, resulting in demand for trustworthy models in fault localization. Confidence and trustworthiness within machine intelligence-based software models can only be achieved via explainable artificial intelligence in Fault Localization (XFL). The current study presents a model for generating counterfactual interpretations for the fault localization model's decisions. Neural system approximations and disseminated presentation of input information may be achieved by building a nonlinear neural network model. That demonstrates a high level of proficiency in transfer learning, even with minimal training data. The proposed XFL would make the decision-making transparent simultaneously without impacting the model's performance. The proposed XFL ranks the software program statements based on the possible vulnerability score approximated from the training data. The model's performance is further evaluated using various metrics like the number of assessed statements, confidence level of fault localization, and Top-N evaluation strategies.
Source: openalex_inverted_index · Quality: baseline

Research context

OpenAlex topics: Software Engineering Research · Software Reliability and Analysis Research · Software System Performance and Reliability

SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.

References (35)

Show source-provided references
1. Overview of software testing standard ISO/IEC/IEEE 29119
2. Empirical study on classifiers for earlier prediction of COVID-19 infection cure and death rate in the Indian states10.3390/healthcare10010085 ↗
3. A multi-component framework for the analysis and design of explainable artificial intelligence10.3390/make3040045 ↗
4. S. Chakraborty, R. Krishna, Y. Ding and B. Ray, “Deep learning based vulnerability detection: Are we there yet?,” arXiv e-prints, 2020.
5. VUDENC: Vulnerability detection with deep learning on a natural codebase for python
6. Research on prediction methods of energy consumption data10.32604/jnm.2020.09889 ↗
7. A multi-feature learning model with enhanced local attention for vehicle re-identification10.32604/cmc.2021.021627 ↗
8. Tracking down dynamic feature code changes against python software evolution
9. Software fault localization through aggregation-based neural ranking for static and dynamic features selection10.3390/s21217401 ↗
10. Slice-based statistical fault localization10.1016/j.jss.2013.08.031 ↗
11. Prediction of software fault-prone classes using an unsupervised hybrid SOM algorithm10.1007/s10586-018-1923-7 ↗
12. Model-based integration and system test automation for visualizing error inclined to an application
13. Predicting vulnerable software components through n-gram analysis and statistical feature selection
14. Predicting SQL injection and cross-site scripting vulnerabilities through mining input sanitization patterns10.1016/j.infsof.2013.04.002 ↗
15. Iterated feature selection algorithms with layered recurrent neural network for software fault prediction10.1016/j.eswa.2018.12.033 ↗
16. Prediction of software fault-prone classes using ensemble random forest with adaptive synthetic sampling algorithm
17. On the stability of feature selection algorithms
18. Vafaei · Technological Innovation for Cyber-Physical Systems (DoCEIS-2016), IFIP Advances in Information and Communication Technology · 2016 · 470 · 26110.1007/978-3-319-31165-4_26 ↗
19. Experiments on the effectiveness of dataflow and control-flow-based test adequacy criteria
20. Software-Artifact infrastructure repository, [Online]. Available: https://sir.csc.ncsu.edu/php/previewfiles.php (accessed on 28 February 2022).
21. A single fault localization technique based on failed test input
22. SinLU: Sinu-sigmoidal linear unit10.3390/math10030337 ↗
23. An improved fault diagnosis using 1d-convolutional neural network model10.3390/electronics11010001 ↗
24. Vijay · Data Science · 2019 · 307
25. Designing a network intrusion detection system based on machine learning for software defined networks10.3390/fi13050111 ↗
26. Self-learning network-based segmentation for real-time brain M. R. images through HARIS
27. Srinivasu · Deep Learning Techniques for Biomedical and Health Informatics · 2020
28. Fault localization in software testing using soft computing approaches
29. Software fault localization based on centrality measures
30. Credibility based imbalance boosting method for software defect proneness prediction10.3390/app10228059 ↗
31. Christakis · Tools and Algorithms for the Construction and Analysis of Systems (TACAS-2019) · 2019 · 11427 · 226
32. Program spectra analysis with theory of evidence10.1155/2012/642983 ↗
33. Evaluating and improving fault localization
34. Software fault localization using DStar (D*)
35. Simultaneous localization of software faults based on complex network theory10.1109/ACCESS.2018.2829541 ↗