Cargando…
Software defect prediction using hybrid model (CBIL) of convolutional neural network (CNN) and bidirectional long short-term memory (Bi-LSTM)
In recent years, the software industry has invested substantial effort to improve software quality in organizations. Applying proactive software defect prediction will help developers and white box testers to find the defects earlier, and this will reduce the time and effort. Traditional software de...
Autores principales: | , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
PeerJ Inc.
2021
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8627227/ https://www.ncbi.nlm.nih.gov/pubmed/34901421 http://dx.doi.org/10.7717/peerj-cs.739 |
_version_ | 1784606811113914368 |
---|---|
author | Farid, Ahmed Bahaa Fathy, Enas Mohamed Sharaf Eldin, Ahmed Abd-Elmegid, Laila A. |
author_facet | Farid, Ahmed Bahaa Fathy, Enas Mohamed Sharaf Eldin, Ahmed Abd-Elmegid, Laila A. |
author_sort | Farid, Ahmed Bahaa |
collection | PubMed |
description | In recent years, the software industry has invested substantial effort to improve software quality in organizations. Applying proactive software defect prediction will help developers and white box testers to find the defects earlier, and this will reduce the time and effort. Traditional software defect prediction models concentrate on traditional features of source code including code complexity, lines of code, etc. However, these features fail to extract the semantics of source code. In this research, we propose a hybrid model that is called CBIL. CBIL can predict the defective areas of source code. It extracts Abstract Syntax Tree (AST) tokens as vectors from source code. Mapping and word embedding turn integer vectors into dense vectors. Then, Convolutional Neural Network (CNN) extracts the semantics of AST tokens. After that, Bidirectional Long Short-Term Memory (Bi-LSTM) keeps key features and ignores other features in order to enhance the accuracy of software defect prediction. The proposed model CBIL is evaluated on a sample of seven open-source Java projects of the PROMISE dataset. CBIL is evaluated by applying the following evaluation metrics: F-measure and area under the curve (AUC). The results display that CBIL model improves the average of F-measure by 25% compared to CNN, as CNN accomplishes the top performance among the selected baseline models. In average of AUC, CBIL model improves AUC by 18% compared to Recurrent Neural Network (RNN), as RNN accomplishes the top performance among the selected baseline models used in the experiments. |
format | Online Article Text |
id | pubmed-8627227 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2021 |
publisher | PeerJ Inc. |
record_format | MEDLINE/PubMed |
spelling | pubmed-86272272021-12-10 Software defect prediction using hybrid model (CBIL) of convolutional neural network (CNN) and bidirectional long short-term memory (Bi-LSTM) Farid, Ahmed Bahaa Fathy, Enas Mohamed Sharaf Eldin, Ahmed Abd-Elmegid, Laila A. PeerJ Comput Sci Artificial Intelligence In recent years, the software industry has invested substantial effort to improve software quality in organizations. Applying proactive software defect prediction will help developers and white box testers to find the defects earlier, and this will reduce the time and effort. Traditional software defect prediction models concentrate on traditional features of source code including code complexity, lines of code, etc. However, these features fail to extract the semantics of source code. In this research, we propose a hybrid model that is called CBIL. CBIL can predict the defective areas of source code. It extracts Abstract Syntax Tree (AST) tokens as vectors from source code. Mapping and word embedding turn integer vectors into dense vectors. Then, Convolutional Neural Network (CNN) extracts the semantics of AST tokens. After that, Bidirectional Long Short-Term Memory (Bi-LSTM) keeps key features and ignores other features in order to enhance the accuracy of software defect prediction. The proposed model CBIL is evaluated on a sample of seven open-source Java projects of the PROMISE dataset. CBIL is evaluated by applying the following evaluation metrics: F-measure and area under the curve (AUC). The results display that CBIL model improves the average of F-measure by 25% compared to CNN, as CNN accomplishes the top performance among the selected baseline models. In average of AUC, CBIL model improves AUC by 18% compared to Recurrent Neural Network (RNN), as RNN accomplishes the top performance among the selected baseline models used in the experiments. PeerJ Inc. 2021-11-16 /pmc/articles/PMC8627227/ /pubmed/34901421 http://dx.doi.org/10.7717/peerj-cs.739 Text en ©2021 Farid et al. https://creativecommons.org/licenses/by/4.0/This is an open access article distributed under the terms of the Creative Commons Attribution License (https://creativecommons.org/licenses/by/4.0/) , which permits unrestricted use, distribution, reproduction and adaptation in any medium and for any purpose provided that it is properly attributed. For attribution, the original author(s), title, publication source (PeerJ Computer Science) and either DOI or URL of the article must be cited. |
spellingShingle | Artificial Intelligence Farid, Ahmed Bahaa Fathy, Enas Mohamed Sharaf Eldin, Ahmed Abd-Elmegid, Laila A. Software defect prediction using hybrid model (CBIL) of convolutional neural network (CNN) and bidirectional long short-term memory (Bi-LSTM) |
title | Software defect prediction using hybrid model (CBIL) of convolutional neural network (CNN) and bidirectional long short-term memory (Bi-LSTM) |
title_full | Software defect prediction using hybrid model (CBIL) of convolutional neural network (CNN) and bidirectional long short-term memory (Bi-LSTM) |
title_fullStr | Software defect prediction using hybrid model (CBIL) of convolutional neural network (CNN) and bidirectional long short-term memory (Bi-LSTM) |
title_full_unstemmed | Software defect prediction using hybrid model (CBIL) of convolutional neural network (CNN) and bidirectional long short-term memory (Bi-LSTM) |
title_short | Software defect prediction using hybrid model (CBIL) of convolutional neural network (CNN) and bidirectional long short-term memory (Bi-LSTM) |
title_sort | software defect prediction using hybrid model (cbil) of convolutional neural network (cnn) and bidirectional long short-term memory (bi-lstm) |
topic | Artificial Intelligence |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8627227/ https://www.ncbi.nlm.nih.gov/pubmed/34901421 http://dx.doi.org/10.7717/peerj-cs.739 |
work_keys_str_mv | AT faridahmedbahaa softwaredefectpredictionusinghybridmodelcbilofconvolutionalneuralnetworkcnnandbidirectionallongshorttermmemorybilstm AT fathyenasmohamed softwaredefectpredictionusinghybridmodelcbilofconvolutionalneuralnetworkcnnandbidirectionallongshorttermmemorybilstm AT sharafeldinahmed softwaredefectpredictionusinghybridmodelcbilofconvolutionalneuralnetworkcnnandbidirectionallongshorttermmemorybilstm AT abdelmegidlailaa softwaredefectpredictionusinghybridmodelcbilofconvolutionalneuralnetworkcnnandbidirectionallongshorttermmemorybilstm |