一、文献综述
(一)国内外研究现状
软件故障定位是识别程序中故障位置的行为,被普遍认为是程序调试中最繁琐,最耗时,最昂贵但同样也是最重要的活动之一。 由于当今软件的规模和复杂性的增加,在发生故障时手动定位故障正在迅速变得不可行,因此,强烈需要能够在最少的人为干预的条件下,将软件开发者引导到程序的故障位置的技术。 反过来,这种需求推动了广泛的故障定位技术的提出和发展,每种技术旨在简化故障定位过程,并通过以独特方式处理问题使其更有效。
自动错误检出系统被开发人员广泛使用。较流行的技术之一是轻量级的lint类静态分析。通常这些工具是作为框架的一部分创建的,该框架支持一组可扩展的错误模式或规则,如Google Error Prone[1]、Find-Bugs[2]。每个框架至少包含数十个,有时甚至数百个错误检测器,即针对特定错误模式的独立检测器。这里的“错误”是指在软件运行中因为程序本身有错误而造成的功能不正常、非正常中断等现象。
许多关于软件故障定位的实证研究的一个挑战是它们需要适当的工具支持来进行自动或半自动数据收集和可疑性计算。下面给出了几个常用工具,包括名称和简要说明。
·Microsoft Visual Studio Debuger
Microsoft Visual Studio Debuger 是一个集成在Microsoft Visual Studio开发工具集中的调试工具,该调试工具允许用户在调试器模式下运行程序,在该模式下运行程序时,该调试器可提供多种方式让用户查看代码情况。用户可以逐步执行代码,查看变量中储存的值、设置对变量的监视以查看值何时改变、检查代码的执行路径等。逐步执行代码是通过在代码中设置断点实现,添加断电并开始调试后,Visual 将在断电处挂起用户的运行中的代码,以使用户可以查看变量的值或者内存的使用情况,以确定相关的代码分支是否运行。同时,Visual Studio 提供了单步调试的功能,用户可以通过F5从断点处开始单步调试,或者F11从程序开始处开始单步调试,通过查看每一行代码运行后的变量的值和内存的使用情况来判断代码是否出错。变量监视是通过变量监视窗口实现,用户可以在窗口中设置需要监测的变量,在进行断点调试或者单步调试中,可以时刻观察监视窗口中的变量是否与预期相符合,从而判定相关程序片段是否出错。
·Apollo
组合了具体和符号化的程序与一些故障定位的技术而产生的一个用于在php应用中定位故障位
以上是毕业论文文献综述,课题毕业论文、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。