Cross-Platform Bug Localization Strategies: Utilizing Machine Learning for Diverse Software Environment Adaptability

Main Article Content

Waqas Ali
Mariam Sabir

Abstract

This paper introduces a novel hybrid machine learning model that combines Long Short-Term Memory (LSTM) networks and SHapley Additive exPlanations (SHAP) to enhance bug localization across multiple software platforms. The aim is to adapt to the variability inherent in different operating systems and provide transparent, interpretable results for software developers. Our methodology includes comprehensive preprocessing of bug report data using advanced natural language processing techniques, followed by feature extraction through word embeddings to accommodate the sequential nature of text data. The LSTM model is trained and evaluated on a dataset of simulated bug reports, with the results interpreted using SHAP values to ensure clarity in decision-making. The results demonstrate the model’s robustness, adaptability, and consistent performance across platforms, as evidenced by accuracy, precision, recall, and F1 scores. The dataset's distribution of bug categories and statuses further provides valuable insights into common software development issues.

Article Details

How to Cite
Ali, W., & Sabir, M. (2024). Cross-Platform Bug Localization Strategies: Utilizing Machine Learning for Diverse Software Environment Adaptability. Emerging Technologies and Engineering Journal, 1(1), 15–25. https://doi.org/10.53898/etej2024112
Section
Articles

References

M. Pavana, M. Pushpalatha, and A. Parkavi, "Software fault prediction using machine learning algorithms," in International Conference on Advances in Electrical and Computer Technologies, 2021: Springer, pp. 185-197.

J. Howard and S. Gugger, Deep Learning for Coders with fastai and PyTorch. O'Reilly Media, 2020.

M. Monperrus, "Explainable software bot contributions: Case study of automated bug fixes," in 2019 IEEE/ACM 1st international workshop on bots in software engineering (BotSE), 2019: IEEE, pp. 12-15.

G. Santos, E. Figueiredo, A. Veloso, M. Viggiato, and N. Ziviani, "Predicting software defects with explainable machine learning," in Proceedings of the XIX Brazilian Symposium on Software Quality, 2020, pp. 1-10.

Y. Sun, H. Chockler, X. Huang, and D. Kroening, "Explaining image classifiers using statistical fault localization," in European conference on computer vision, 2020: Springer, pp. 391-406.

M. Shetty et al., "DeepAnalyze: learning to localize crashes at scale," in Proceedings of the 44th International Conference on Software Engineering, 2022, pp. 549-560.

P. Chakraborty, M. Alfadel, and M. Nagappan, "RLocator: Reinforcement Learning for Bug Localization," arXiv preprint arXiv:2305.05586, 2023.

M. G. Abdolrasol et al., "Artificial neural networks based optimization techniques: A review," Electronics, vol. 10, no. 21, p. 2689, 2021.

K. Huang, Data Mining For Residential Buildings Using Smart WiFi Thermostats. University of Dayton, 2021.

Z. C. Lipton, J. Berkowitz, and C. Elkan, "A critical review of recurrent neural networks for sequence learning," arXiv preprint arXiv:1506.00019, 2015.

G. Lopardo, "Explainable AI for business decision-making," Politecnico di Torino, 2021.

D. Diepgrond, "Can prediction explanations be trusted? On the evaluation of interpretable machine learning methods," 2020.

S. Das, N. Agarwal, D. Venugopal, F. T. Sheldon, and S. Shiva, "Taxonomy and survey of interpretable machine learning method," in 2020 IEEE Symposium Series on Computational Intelligence (SSCI), 2020: IEEE, pp. 670-677.

S. F. A. Zaidi, H. Woo, and C.-G. Lee, "A graph convolution network-based bug triage system to learn heterogeneous graph representation of bug reports," IEEE access, vol. 10, pp. 20677-20689, 2022.

O. J. Chaparro Arenas, "Automated Analysis of Bug Descriptions to Support Bug Reporting and Resolution," 2019.

C. S. Timperley, G. van der Hoorn, A. Santos, H. Deshpande, and A. Wąsowski, "ROBUST: 221 bugs in the Robot Operating System," Empirical Software Engineering, vol. 29, no. 3, p. 57, 2024.

Q. Shen, S. Teso, F. Giunchiglia, and H. Xu, "To Transfer or Not to Transfer and Why? Meta-Transfer Learning for Explainable and Controllable Cross-Individual Activity Recognition," Electronics, vol. 12, no. 10, p. 2275, 2023.

Q. Xu, S. Lu, W. Jia, and C. Jiang, "Imbalanced fault diagnosis of rotating machinery via multi-domain feature extraction and cost-sensitive learning," Journal of Intelligent Manufacturing, vol. 31, no. 6, pp. 1467-1481, 2020.

A. Alaboudi and T. D. LaToza, "Edit-run behavior in programming and debugging," in 2021 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), 2021: IEEE, pp. 1-10.

W. Lam, P. Godefroid, S. Nath, A. Santhiar, and S. Thummalapenta, "Root causing flaky tests in a large-scale industrial setting," in Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis, 2019, pp. 101-111.

R. Karri, "LSTM and SHAP for transparent and effective IoB systems in IoT environments: household power consumption," 2023.