当前位置: X-MOL 学术IET Softw. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Software defect prediction via LSTM
IET Software ( IF 1.6 ) Pub Date : 2020-07-27 , DOI: 10.1049/iet-sen.2019.0149
Jiehan Deng 1 , Lu Lu 1 , Shaojian Qiu 1
Affiliation  

Software quality plays an important role in the software lifecycle. Traditional software defect prediction approaches mainly focused on using hand-crafted features to detect defects. However, like human languages, programming languages contain rich semantic and structural information, and the cause of defective code is closely related to its context. Failing to catch this significant information, the performance of traditional approaches is far from satisfactory. In this study, the authors leveraged a long short-term memory (LSTM) network to automatically learn the semantic and contextual features from the source code. Specifically, they first extract the program's Abstract Syntax Trees (ASTs), which is made up of AST nodes, and then evaluate what and how much information they can preserve for several node types. They traverse the AST of each file and fed them into the LSTM network to automatically the semantic and contextual features of the program, which is then used to determine whether the file is defective. Experimental results on several opensource projects showed that the proposed LSTM method is superior to the state-of-the-art methods.

中文翻译:

通过LSTM进行软件缺陷预测

软件质量在软件生命周期中起着重要作用。传统的软件缺陷预测方法主要集中于使用手工制作的特征来检测缺陷。但是,像人类语言一样,编程语言也包含丰富的语义和结构信息,缺陷代码的原因与其上下文紧密相关。未能捕获到这些重要信息,传统方法的性能远远不能令人满意。在这项研究中,作者利用长短期记忆(LSTM)网络从源代码自动学习语义和上下文特征。具体来说,他们首先提取程序的抽象语法树(AST),该树由AST节点组成,然后评估它们可以为几种节点类型保留哪些信息以及保留多少信息。他们遍历每个文件的AST,并将其馈送到LSTM网络中,以自动执行程序的语义和上下文特征,然后将其用于确定文件是否有缺陷。在几个开源项目上的实验结果表明,所提出的LSTM方法优于最新方法。
更新日期:2020-07-28
down
wechat
bug