首页> 外文期刊>Expert systems with applications >SLDeep: Statement-level software defect prediction using deep-learning model on static code features
【24h】

SLDeep: Statement-level software defect prediction using deep-learning model on static code features

机译:SLDEEP:语句级软件在静态代码特征上使用深学习模型的缺陷预测

获取原文
获取原文并翻译 | 示例
获取外文期刊封面目录资料

摘要

Software defect prediction (SDP) seeks to estimate fault-prone areas of the code to focus testing activities on more suspicious portions. Consequently, high-quality software is released with less time and effort. The current SDP techniques however work at coarse-grained units, such as a module or a class, putting some burden on the developers to locate the fault. To address this issue, we propose a new technique called as Statement-Level software defect prediction using Deep-learning model (SLDeep). The significance of SLDeep for intelligent and expert systems is that it demonstrates a novel use of deep-learning models to the solution of a practical problem faced by software developers. To reify our proposal, we defined a suite of 32 statement-level metrics, such as the number of binary and unary operators used in a statement. Then, we applied as learning model, long short-term memory (LSTM). We conducted experiments using 119,989 C/C++ programs within Code4Bench. The programs comprise 2,356,458 lines of code of which 292,064 lines are faulty. The benchmark comprises a diverse set of programs and versions, written by thousands of developers. Therefore, it tends to give a model that can be used for cross-project SDP. In the experiments, our trained model could successfully classify the unseen data (that is, fault-proneness of new statements) with average performance measures 0.979, 0.570, and 0.702 in terms of recall, precision, and accuracy, respectively. These experimental results suggest that SLDeep is effective for statement-level SDP. The impact of this work is twofold. Working at statement-level further alleviates developer's burden in pinpointing the fault locations. Second, cross-project feature of SLDeep helps defect prediction research become more industrially-viable. (C) 2020 Elsevier Ltd. All rights reserved.
机译:软件缺陷预测(SDP)旨在估计代码的故障易于忽视的区域,以对焦于更具可疑部分的测试活动。因此,高质量的软件以较少的时间和精力释放。然而,目前的SDP技术然而,在粗粒单元(例如模块或类)上工作,为开发人员提供一些负担来定位故障。为解决此问题,我们提出了一种使用深度学习模型(SLDEEP)称为声明级软件缺陷预测的新技术。 SLLDEEP对智能和专家系统的意义是,它表明了深入学习模型的新颖利用,以解决软件开发人员面临的实际问题。为了重新确定我们的提议,我们定义了一套32个声明级度量标准,例如语句中使用的二进制和联合操作符的数量。然后,我们应用于学习模型,长短短期内存(LSTM)。我们在Code4Bench中使用119,989个C / C ++程序进行了实验。该程序包括2,356,458行代码,其中292,064条线路故障。基准测试包括多种计划和版本,由数千名开发人员编写。因此,它倾向于提供一种可用于交叉项目SDP的模型。在实验中,我们培训的模型可以分别成功地将看不见的数据(即新陈述的故障为0.79,0.570和0.702分别在召回,精度和准确性方面进行分类。这些实验结果表明,SLDEEP对陈述级SDP有效。这项工作的影响是双重的。在声明级别工作进一步减轻了开发人员在确定故障位置时的负担。其次,SLDEEP的交叉项目特征有助于缺陷预测研究变得更加工业上可行。 (c)2020 elestvier有限公司保留所有权利。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号