Online Judge程序缺陷实时定位及修复系统

来源 :天津大学 | 被引量 : 0次 | 上传用户:liyaping121416
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件调试过程是软件开发和软件维护中的重要阶段,包括软件缺陷的定位和修复等环节。目前,随着软件程序规模的日渐增长,软件调试过程中花费的成本也逐渐增多。并且,当软件缺陷发生时,会造成软件功能的失效,严重时甚至会造成财产的损失,因此尽快地修复软件缺陷是一个重要的研究问题。已有的软件缺陷定位技术大多是基于测试用例执行过程中程序的行为特征。在测试用例集执行过程中,通过搜集程序执行信息获取待测程序的行为特征,根据失败测试用例和成功测试用例的执行信息对程序实体进行排序,从而筛选出最有可能包含缺陷的程序实体。在基于测试用例集的方法中,基于频谱的方法数量较多,特别是轻量级的频谱构造方式,这类定位统计的数据较少,仅仅简单统计程序实体在成功测试用例和失败测试用例中的覆盖信息,由于时间开销较小也被用于自动程序修复方法当中。自动程序修复方法基于缺陷定位的结果,采用不同类型的补丁生成算法生成程序补丁。随后基于测试用例集或其他形式的程序规约对补丁的正确性进行验证,从而筛选出正确的补丁对源程序进行修复。目前缺陷定位和缺陷修复都是软件工程领域活跃的研究问题,近几年这两个领域都有较多的研究进展,但在实际项目上的应用仍有待进一步探索。为进一步研究上述问题,本课题利用先进的软件缺陷定位和自动程序修复方法对Online Judge系统中的数据集进行建模和实验,对系统中的部分提交程序进行缺陷的自动定位和修复,因此需要结合方法要求在Online Judge系统搜集相应的数据集。针对缺陷自动修复方法对测试用例的输入输出进行分析并自动生成Junit测试用例脚本作为程序规约,并进一步对修复结果进行可读性优化。此外,我们对数据结果进行分类统计,验证软件缺陷定位和缺陷自动修复两种方法对真实小规模程序的有效性和准确性,对比方法的优势及存在的问题,为该领域科研方法向实际产品转化展开进一步探索。
其他文献
植物在生长发育过程中受到各种非生物胁迫的影响,解析胁迫应答相关基因的功能有助于解释植物的胁迫应答分子机制及调节机理。bHLH转录因子是植物转录因子中最大的家族之一,在
自党的十八届五中全会第一次将"共享发展"写入"十三五"规划建议以来,共享经济在我国蓬勃发展。随着共享经济的不断深入,共享会计的出现,表明共享经济的模式由原来的物质租赁
网络造谣的入罪限度是一个非常严肃的政治以及法治问题,所以说我们在进行入罪的时候应该特别的慎重。特别是将网络造谣解释为寻衅滋事罪的时候更加应该去理性的对待这个问题,
人工神经网络是基于生物学中的神经网络的基本原理,以网络拓扑知识为基础,模拟人脑的神经系统对外界的信息处理机制的一种数学模型。虽然人工神经网络的研究在上世纪末,经历
<正>伴随着社会的进步,人们的生活水平得到了很大的提高,人们对于生活便有了更高的追求。在这样的情况下,钢琴便进入了人们的视野。钢琴不仅可以满足人们对于艺术的需求,还可
针对飞机起落架系统的故障机理及故障特点,总结分析了固定式起落架与可收放式起落架系统的故障类型,并概述了在日常检查和维护工作中所使用的方法及程序,为该系统的维护及检
目的探讨糖尿病低血糖的临床护理和预见性观察方法。方法回顾性分析30例糖尿病低血糖患者的护理体会。结果病情稳定出院30例,无死亡病例。结论通过对患者采取相应有效的治疗
本文主要针对目前国内关于纯水pH值测量误差大的问题,详细分析了影响测量的各种因素,并提出了有效的解决方法,为实际生产中的工作人员提供参考。
中国经济正面临着从要素驱动向创新驱动,生产型向服务型经济转型升级的历史性发展机遇.客户管理是在市场经济环境下伴随着服务经济的成熟而发展起来的,几乎所有的现代服务产
本文目的是用科学来解释“嗡、嘛、呢、叭、(口迷)、吽”和“南无阿弥陀佛”的道理及由来。