基于数据挖掘的软件错误定位方法研究

被引量 : 0次 | 上传用户:jiangliang87
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
近年来,社会发展对软件测试和调试技术提出了新的挑战。不断变化的环境和需求对软件系统提出了更高的要求,保证软件质量变得至关重要。目前,软件调试是保证软件质量最主要的手段之一,而错误定位是软件调试中最为耗时费力的活动之一。错误定位旨在找到隐含在程序源代码中的错误指令、过程或数据定义。它可以提高软件质量、降低软件调试成本。因此,研究软件错误定位具有重要意义。软件错误定位是近年来国内外研究的热点,具有重要科学意义和应用前景。到目前为止,软件错误定位方法还不够完善,存在如下问题:(1)错误定位精度有待进一步提高。大多数错误定位方法,利用统计理论对定位结果进行了精炼,只在一定程度上提高了错误定位的精度。(2)较少考虑偶然正确性测试用例对错误定位效率的影响,偶然正确性测试用例会使错误定位效率下降。(3)已有的方法在软件中存在多个错误时的定位效果不理想,开发人员较难高效地同时定位出软件中存在的多个错误。针对上述问题,本文从程序切片分析入手并结合数据挖掘技术进行软件错误定位研究。首先,研究基于关联分析及排序策略的错误定位方法;其次,研究偶然正确性测试用例对错误定位效率的影响,从理论角度进行了分析,并提出偶然正确性测试用例识别方法;最后,针对软件中存在多错误的问题,提出多错误定位方法。本文的主要工作和贡献总结如下:(1)提出了基于关联分析及排序策略的错误定位方法FLAR(Fault Localization based on Association analysis and Rank strategy)以及改进方法DS-FLAR(Dynamic Slicing-Fault Localization based on Association analysis and Rank strategy)。采用关联分析技术能够反映出程序执行轨迹中语句与执行结果之间的关联关系,然后利用本文设计的排序策略对关联分析后的语句进行排序,生成错误定位报告。实证研究表明,FLAR方法错误定位效果较好。另外,我们提出改进的动态切片方法,用于更好地缩小错误定位的范围,从而优化FLAR方法,最终提出一种基于动态切片、关联分析及排序策略相结合的错误定位方法DS-FLAR。实验结果表明DS-FLAR定位效果优于FLAR方法、以及其它对比方法。(2)针对偶然正确性问题,提出了错误定位效率受偶然正确性测试用例影响的理论分析框架。通过将怀疑度计算公式看成是程序元素的四元组表示形式中变量(成功测试用例覆盖程序元素的次数)的函数,采用对函数求导的方式来分析偶然正确性测试用例对不同怀疑度计算公式效率的影响。基于上述框架,理论分析了偶然正确性测试用例对30个经典怀疑度计算公式效率的影响。此研究工作是偶然正确性测试用例对错误定位效率影响的有益理论探索,为在软件错误定位时移除偶然正确性测试用例提供理论依据。(3)针对偶然正确性影响错误定位效率的问题,提出了面向有效错误定位的偶然正确性测试用例识别方法。该方法首先识别偶然正确性元素,应用怀疑度计算公式计算程序元素怀疑度,挑选出高可疑偶然正确性元素作为偶然正确性特征元素;然后,根据该特征元素对程序执行轨迹进行维度约简,并进一步建立基于模糊c均值聚类的偶然正确性测试用例识别模型;最后,将其结果应用于错误定位。应用该方法在3组测试程序上进行偶然正确性测试用例识别,在此基础上,采用4种错误定位方法开展错误定位,比较移除偶然正确性测试用例对错误定位效率的影响。实验结果表明,与基于k-means聚类的偶然正确性测试用例识别方法相比,该方法在偶然正确性测试用例识别方面具有较低的误报率和漏报率,更能提高错误定位的效率。(4)针对软件中存在多个错误的问题,提出了基于Chamelelon聚类分析的多错误定位方法。该方法首先将每一个失败程序执行轨迹和所有成功程序执行轨迹合并,计算其怀疑度,按怀疑度大小选取高可疑元素作为程序执行轨迹的特征元素,按照该特征元素对失败程序执行轨迹进行约简;其次,在此基础上,聚类分析技术将失败程序执行轨迹分簇,使得每簇包含一个错误;然后,将失败程序执行轨迹簇与所有成功程序执行轨迹簇合并,计算其怀疑度;最后,根据合并后的簇生成的怀疑度序列,采用并行调试模式同时定位程序中的多个错误。实证研究表明该方法能有效地定位程序中的多个错误。
其他文献
目的 :探讨脊髓体感诱发电位 (SEP)与运动诱发电位 (MEP)在脊髓手术中联合监测的临床应用价值。方法 :对 18例脊柱手术患者进行术中SEP和MEP联合监测 ,并用日本矫形学会量表
随着汇率改革的深入,外汇风险在国际融资中已不容小视。国际贷款与发行国际债券的融资方式使企业面临较高的汇率风险,这些汇率风险逐渐受到跨国企业的重视。而采用外汇远期交
目的:观察益肾活血方治疗中风后尿失禁的临床疗效。方法:将60例中风后尿失禁患者随机分为治疗组和对照组各30例,两组患者均实施康复治疗,对照组在康复治疗的基础上给予缩泉丸口服
在实施"四个全面"现代化建设中,工会工作是以现代化经济建设为中心,坚定不移地贯彻、执行党的路线、方针和政策,为职工说真话、办实事、解难事、做好事,凝聚人心,汇聚力量,增
目的: 探讨代谢综合征各组分与高尿酸血症的相关性。 方法: 选取浙江省城市健康体检者2032例,测定血尿酸、空腹血糖、血脂及体重指数及血压,分组比较高尿酸血症组及非高尿
随着精神疾病不断得到全社会关注,国家对精神病专科医院投入增多,各地加大完善建设精神病专科医院,带来日益增多的设计需求。为扩展设计思路,对精神病专科医院的设计个案分析,探讨
目的:通过多索茶碱与氨茶碱的对比,观察多索茶碱治疗哮喘及慢性阻塞性肺疾病的临床疗效。方法:随机抽取2011年5月-2014年5月浙江西湖街道社区卫生服务中心收治的哮喘及慢性阻
本文针对目前胜利油区海上埕岛油田产液量低、采油速度低和预测的平台安全使用期末采出程度低等问题,筛选了先导试验区,利用油藏工程、数值模拟、经济评价等方法进行了开发调
<正>表演游戏是一种深受幼儿园中班幼儿喜爱的重要游戏类型,它是根据幼儿自己对作品的理解,按照童话、故事中的角色、情节和语言进行创造表演的游戏,也就是指幼儿通过扮演某
成就动机是一种心理上的内部动因,是人们在完成任务时力求获得成功的内部心理活动。运动员从事体育运动有多种心理动机,其中的成就动机是决定运动员的运动动机当中的关键因素