[发明专利]一种基于贝叶斯网络推理的软件错误分层诊断方法有效
申请号: | 201710048225.8 | 申请日: | 2017-01-20 |
公开(公告)号: | CN107025169B | 公开(公告)日: | 2020-08-21 |
发明(设计)人: | 余啸;刘进;殷晓飞;崔晓辉;施泽洋;井溢洋 | 申请(专利权)人: | 武汉大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 | 代理人: | 鲁力 |
地址: | 430072 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种基于贝叶斯网络推理的软件错误分层诊断方法,包括构建函数层,MIC理论的应用,提高统计依赖的准确度,改进并应用Laplace平滑策略,解决测试数据稀松性。进行测试预言,判断某测试用例对整个程序是否为失败测试用例。进行错误定位,计算函数的可疑度并排序,构建对应函数的语句层BNPDG,按可疑度排序对函数进行逐一检查,在函数的语句层BNPDG上进行测试预言,找到bug函数,在其语句层BNPDG上进行错误定位,得到函数中所有语句的可疑度排序。按照可疑度排序对语句进行逐一检查,直到找到bug语句。本发明减少了错误诊断的空间消耗和时间消耗。解决了RankCP等技术中计算的局部可疑度存在的问题。 | ||
搜索关键词: | 一种 基于 贝叶斯 网络 推理 软件 错误 分层 诊断 方法 | ||
【主权项】:
一种基于贝叶斯网络推理的软件错误分层诊断方法,其特征在于,包括以下步骤:步骤1,以函数为代码元素,构建函数层贝叶斯网络程序依赖图,BNPDG是表示代码元素依赖关系的贝叶斯网络模型;函数层BNPDG表示为一个三元组(V,E,P);V代表节点集合,每个节点代表一个代码元素,即一个自定义函数;函数节点,有其对应的状态空间,不同状态值代表该代码元素不同的执行过程;E代表有向边的集合,每条有向边都代表代码元素之间的依赖关系,可以是语义依赖,包括控制依赖和数据依赖,也可以是通过测试数据得到的统计依赖;P代表网络参数,即每个节点的条件概率分布;构建函数层BNPDG包括以下子步骤,步骤1.1,将要测试的程序代码生成程序依赖图,确定函数层BNPDG语义依赖关系;步骤1.2,利用程序执行数据生成统计依赖关系图,确定函数层BNPDG统计依赖关系;步骤1.3,融合控制依赖边、数据依赖边和统计依赖边,形成基于贝叶斯网络的程序依赖图初始结构;步骤1.4,去掉基于贝叶斯网络的程序依赖图初始结构中的环路;步骤1.5,学习基于贝叶斯网络的程序依赖图中的参数信息;步骤2,在函数层贝叶斯网络程序依赖图上进行测试预言的概率推理,判断某个测试用例对整个程序来说是否为失败的测试用例;当确定某测试用例为失败测试用例以后,在函数层贝叶斯网络程序依赖图上进行错误定位的概率推理,计算代码元素的可疑度并排序,得到按照可疑度排序的函数序列;步骤3,按照函数的可疑度排序,以每一个函数内的语句为代码元素,构建对应函数的语句层贝叶斯网络程序依赖图;语句层BNPDG可以表示为一个三元组(V,E,P);V代表节点集合,每个节点代表一个代码元素,即一条程序语句;语句节点,有其对应的状态空间,不同状态值代表该代码元素不同的执行过程;E代表有向边的集合,每条有向边都代表代码元素之间的依赖关系,可以是语义依赖,包括控制依赖和数据依赖,也可以是通过测试数据得到的统计依赖;P代表网络参数,即每个节点的条件概率分布;构建语句层BNPDG包括以下子步骤,步骤3.1,将要测试的程序代码生成程序依赖图,确定语句层BNPDG语义依赖关系;步骤3.2,利用程序执行数据生成统计依赖关系图,确定语句层BNPDG统计依赖关系;步骤3.3,融合控制依赖边、数据依赖边和统计依赖边,形成基于贝叶斯网络的程序依赖图初始结构;步骤3.4,去掉基于贝叶斯网络的程序依赖图初始结构中的环路;步骤3.5,学习基于贝叶斯网络的程序依赖图中的参数信息;步骤4,按照函数的可疑度排序对函数进行逐一检查;检查某函数时,在该函数的语句层BNPDG上进行测试预言的概率推理,找到bug函数;在该bug函数的语句层贝叶斯网络程序依赖图上进行错误定位的概率推理,得到函数中所有语句的可疑度排序;按照语句的可疑度排序对语句进行逐一检查,直到找到真正的bug语句。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710048225.8/,转载请声明来源钻瓜专利网。
- 上一篇:草坪灯(蘑菇形)
- 下一篇:梳子手柄(231型)