SEFeb 3, 2018

A deep tree-based model for software defect prediction

arXiv:1802.00921v1122 citationsHas Code
Originality Incremental advance
AI Analysis

This addresses the problem of accurately predicting defects in software systems for developers and organizations, representing an incremental improvement by applying a novel deep learning method to a known bottleneck in feature design.

The paper tackled software defect prediction by developing a deep tree-based model that automatically learns features from source code syntax and semantics, achieving effective results on both within-project and cross-project predictions using datasets from Samsung and PROMISE.

Defects are common in software systems and can potentially cause various problems to software users. Different methods have been developed to quickly predict the most likely locations of defects in large code bases. Most of them focus on designing features (e.g. complexity metrics) that correlate with potentially defective code. Those approaches however do not sufficiently capture the syntax and different levels of semantics of source code, an important capability for building accurate prediction models. In this paper, we develop a novel prediction model which is capable of automatically learning features for representing source code and using them for defect prediction. Our prediction system is built upon the powerful deep learning, tree-structured Long Short Term Memory network which directly matches with the Abstract Syntax Tree representation of source code. An evaluation on two datasets, one from open source projects contributed by Samsung and the other from the public PROMISE repository, demonstrates the effectiveness of our approach for both within-project and cross-project predictions.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes