返回
Automatically identifying code features for software defect prediction: Using AST N-grams
DOI:10.1016/j.infsof.2018.10.001.png)
摘要
En 中文
Context Identifying defects in code early is important. A wide range of static code metrics have been evaluated as potential defect indicators. Most of these metrics offer only high level insights and focus on particular pre-selected features of the code. None of the currently used metrics clearly performs best in defect prediction. Objective: We use Abstract Syntax Tree (AST) n-grams to identify features of defective Java code that improve defect prediction performance. Method: Our approach is bottom-up and does not rely on pre-selecting any specific features of code. We use non-parametric testing to determine relationships between AST n-grams and faults in both open source and commercial systems. We build defect prediction models using three machine learning techniques. Results: We show that AST n-grams are very significantly related to faults in some systems, with very large effect sizes. The occurrence of some frequently occurring AST n-grams in a method can mean that the method is up to three times more likely to contain a fault. AST n-grams can have a large effect on the performance of defect prediction models. Conclusions: We suggest that AST n-grams offer developers a promising approach to identifying potentially defective code.
Keyword:
FAULTS
SYSTEM
AI总结
对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。
期刊
IF:
4.3
论文数:
3.8K
被引数:
7.7K
机构
引用论文
A Systematic Literature Review on Fault Prediction Performance in Software Engineering软件工程中故障预测性能的系统文献综述
Synthesizing Data Using Variational Autoencoders for Handling Class Imbalanced Deep Learning使用变分自编码器合成数据以处理类不平衡深度学习

