当前位置: 首页 > 专利查询>扬州大学专利>正文

一种基于深度森林网络的软件缺陷预测方法技术

技术编号:17779623 阅读:279 留言:0更新日期:2018-04-22 08:05
本发明专利技术涉及一种基于深度森林网络的软件缺陷预测方法。本发明专利技术对程序模块按照设定好的度量进行相关代码特征数据提取,筛选出与缺陷相关度高的代码特征,构建多个随机森林和完全随机森林模型,联成缺陷预测网络,将缺陷特征向量随机切片到缺陷预测网络进行训练,形成缺陷预测的分类器,与真实标记的数据进行对比得到最终的缺陷预测分类器。本发明专利技术克服了过去整体的缺陷预测精度不高的缺陷。本发明专利技术从深度森林网络的角度,结合多粒度扫描,级联森林等技术来构建缺陷预测分类器,提供有效的代码缺陷预测,帮助开发者合理使用测试资源,大大缩短了软件开发周期。

【技术实现步骤摘要】
一种基于深度森林网络的软件缺陷预测方法
本专利技术属于软件分析与测试领域,特别涉及一种基于深度森林网络的软件缺陷预测方法。
技术介绍
软件缺陷(softwaredefect)产生于开发人员的编码过程中,需求理解不正确、软件开发过程不合理或开发人员的经验不足,均有可能产生软件缺陷.而含有缺陷的软件在运行时可能会产生意料之外的结果或行为,严重的时候会给企业造成巨大的经济损失,甚至会威胁到人们的生命安全.在软件项目的开发生命周期中,检测出内在缺陷的时间越晚,修复该缺陷的代价也越高.尤其在软件发布后,检测和修复缺陷的代价将大幅度增加.因此,项目主管借助软件测试或代码审查等软件质量保障手段,希望能够在软件部署前尽可能多地检测出内在缺陷.但是,若关注所有的程序模块会消耗大量的人力物力,因此,项目主管希望能够预先识别出可能含有缺陷的程序模块,并对其分配足够的测试资源。在本专利技术作出之前,为了帮助软件开发人员尽可能地节省发现缺陷的成本,就需要尽可能地提高缺陷预测的精度,对于软件缺陷预测的研究主要集中在对于软件预测度量的构建和预测方法的设计。目前缺陷预测领域越来越多的利用机器学习的方法来构建分类器,本文档来自技高网...
一种基于深度森林网络的软件缺陷预测方法

【技术保护点】
一种基于深度森林网络的代码缺陷预测方法,其特征在于如下步骤:(1)挖掘代码历史仓库,抽取程序模块,对程序模块按照设定好的度量进行相关代码特征数据提取;(2)将步骤(1)代码特征进行多粒度扫描,筛选出与缺陷相关度高的代码特征;(3)利用步骤(2)中的缺陷特征构建多个随机森林和完全随机森林模型;(4)将步骤(3)的多个随机森林级联成缺陷预测网络;(5)对步骤(2)的缺陷特征向量按照设定比例进行随机切片,输入到步骤(4)中建立的缺陷预测网络进行训练,形成缺陷预测的分类器;(6)将步骤(5)切片剩余的数据输入到缺陷预测分类器中,与真实标记的数据进行对比,验证训练效果,根据结果调整训练参数后得到最终的缺...

【技术特征摘要】
1.一种基于深度森林网络的代码缺陷预测方法,其特征在于如下步骤:(1)挖掘代码历史仓库,抽取程序模块,对程序模块按照设定好的度量进行相关代码特征数据提取;(2)将步骤(1)代码特征进行多粒度扫描,筛选出与缺陷相关度高的代码特征;(3)利用步骤(2)中的缺陷特征构建多个随机森林和完全随机森林模型;(4)将步骤...

【专利技术属性】
技术研发人员:李斌周天驰孙小兵
申请(专利权)人:扬州大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1