On the use of deep learning in software defect prediction

Görkem Giray*, Kwabena Ebo Bennin, Ömer Köksal, Önder Babur, Bedir Tekinerdogan

*Corresponding author for this work

Research output: Contribution to journalArticleAcademicpeer-review

32 Citations (Scopus)


Context: Automated software defect prediction (SDP) methods are increasingly applied, often with the use of machine learning (ML) techniques. Yet, the existing ML-based approaches require manually extracted features, which are cumbersome, time consuming and hardly capture the semantic information reported in bug reporting tools. Deep learning (DL) techniques provide practitioners with the opportunities to automatically extract and learn from more complex and high-dimensional data. Objective: The purpose of this study is to systematically identify, analyze, summarize, and synthesize the current state of the utilization of DL algorithms for SDP in the literature. Method: We systematically selected a pool of 102 peer-reviewed studies and then conducted a quantitative and qualitative analysis using the data extracted from these studies. Results: Main highlights include: (1) most studies applied supervised DL; (2) two third of the studies used metrics as an input to DL algorithms; (3) Convolutional Neural Network is the most frequently used DL algorithm. Conclusion: Based on our findings, we propose to (1) develop more comprehensive DL approaches that automatically capture the needed features; (2) use diverse software artifacts other than source code; (3) adopt data augmentation techniques to tackle the class imbalance problem; (4) publish replication packages.

Original languageEnglish
Article number111537
JournalJournal of Systems and Software
Publication statusPublished - Jan 2023


  • Deep learning
  • Quality assurance
  • Software defect prediction
  • Systematic literature review


Dive into the research topics of 'On the use of deep learning in software defect prediction'. Together they form a unique fingerprint.

Cite this