首页> 中文学位 >基于多层次频谱的软件故障定位研究
【6h】

基于多层次频谱的软件故障定位研究

代理获取

目录

声明

摘要

符号列表

第一章 绪论

1.1 研究背景

1.2 研究意义

1.3 研究现状

1.3.1 国外研究现状

1.3.2 国内研究现状

1.4 存在的问题

1.5 本文的研究内容

1.6 论文结构和章节安排

第二章 研究基础

2.1 软件故障动态定位技术

2.2 基于程序频谱的故障定位技术

2.3 程序分析技术

2.3.1 控制流分析

2.3.2 数据流分析

2.3.3 依赖分析

2.4 AOP(面向切面编程)技术

2.4.1 AOP相关原理和步骤

2.4.2 AspectJ介绍

2.5 小结

第三章 基于多层次频谱故障定位方法

3.1 问题描述

3.2 相关定义

3.3 问题求解思路

3.4 函数层次故障定位方法

3.4.1 搜集程序频谱

3.4.2 建立函数调用对成功行为图

3.4.3 建立函数调用对失效行为图

3.4.4 计算函数调用对发生故障的可疑值

3.4.5 计算函数发生故障的可疑值

3.5 语句层次故障定位方法

3.5.1 建立语句间数据依赖对程序频谱

3.5.2 建立语句间控制依赖对程序频谱

3.5.3 计算数据依赖对发生故障的可疑值

3.5.4 计算控制依赖对发生故障的可疑值

3.5.5 计算语句发生故障的可疑值

3.5.6 与相关工作的对比

3.6 小结

第四章 实验分析

4.1 实验描述

4.2 针对函数层次故障定位方法的实验

4.2.1 针对搜集程序频谱的实验

4.2.2 针对建立函数调用对成功行为图的实验

4.2.3 针对建立函数调用对失效行为图的实验

4.2.4 针对计算函数调用对发生故障的可疑值的实验

4.2.5 针对计算函数发生故障的可疑值的实验

4.3 针对语句层次故障定位方法的实验

4.3.1 针对建立语句间数据依赖对程序频谱的实验

4.3.2 针对建立语句间控制依赖对程序频谱的实验

4.3.3 针对计算数据依赖对发生故障的可疑值的实验

4.3.4 针对计算控制数据对发生故障的可疑值的实验

4.3.5 针对计算语句发生故障的可疑值计算的实验

4.4 实验结果分析

第五章 总结和展望

5.1 本文工作的总结

5.2 进一步的研究工作

参考文献

校期间参加的科研项目和发表的论文

致谢

展开▼

摘要

当今社会,计算机软件与人们的生活息息相关,人们对软件质量的要求也越来越高。软件在运行时发生失效,如何实现快速、高效的、准确的软件故障定位仍是学术界和工业界研究的关键问题。
  基于语句程序频谱的软件故障定位方法通常利用搜集程序在运行测试用例集合产生的语句覆盖信息来计算程序中每条语句发生故障的可疑值,按照语句的可疑值从大到小依次检查,直到精确定位至所有故障语句为止。但这种故障定位方法由于“计算整个程序中所有语句的发生故障的可疑值,缺乏一定的语句筛选机制”和“忽略了程序中语句之间的存在的依赖关系”的原因导致故障定位效率和精度受限。为了解决上述问题,本文提出了一种基于多层次频谱的软件故障定位方法。这种方法的具体做法是将软件故障定位分为函数故障定位和语句故障定位两个层次,函数故障定位方法能生成函数故障报告,语句故障定位方法生成语句故障报告,依次检查可疑语句直至找到故障语句,进而实现故障定位。主要的工作有:
  1)在函数故障定位层次上首先使用“函数调用对”程序频谱集合来构造函数调用对成功行为图和失效行为图,然后对两个图的进行差异分析,计算函数发生故障的可疑值,最后依照可疑值从大到小依次排列程序中的函数,主动筛选“最有可能”发生故障的函数,生成函数故障定位报告。
  2)在语句故障定位层次上选择函数故障报告中可疑值高的函数,计算其函数体内的语句发生故障的可疑值。在此层次上考虑语句之间存在的数据依赖和控制依赖关系,通过语句的数据依赖发生故障的可疑值和语句的控制依赖发生故障的可疑值加权差值计算的方式来计算语句发生故障的可疑值,依照此可疑值从到大到小依次排列函数中的语句,生成语句故障报告,依次检查该故障报告中的语句直至找到所有故障语句为止,完成软件故障定位。
  3)设计了完整的实验实例和相应的测试用例,在此基础上对本文提出的方法进行验证。实验表明,本文提出的方法能缩小代码审查区域,相比于Tarantula方法和Ochiai方法,其定位效率更高。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号