当前位置:主页 > 科技论文 > 软件论文 >

软件自动修复技术修复内涵分析研究

发布时间:2018-07-20 09:28
【摘要】:随着时代的发展,软件的开发规模与软件复杂度日渐提高,由于开发人员的因素或者软件本身的因素导致软件中的缺陷越来越多,并且缺陷种类繁多,软件在社会中引发的故障所造成的损失也越来越大,开发人员的目光必须重点放在对软件修复的研究上,然而人工进行软件调试不仅给维护人员增加了繁重的工作量,还可能延缓软件恢复正常运行的时间。所以学术界把研究重点放在了如何能有效减缓调试人员的压力上,为此开发了自动调试技术,例如软件自动修复技术。虽然近些年来在关于程序自动修复上的研究取得了很大成果,但是仍然存在很多待解决问题,自动修复的成功率和效率依然有待提高。一般而言,软件自动修复技术都是基于缺陷容忍与缺陷排除的方式来实现软件错误自动修复的,可是目前的自动修复技术只关注于修复补丁是否能够满足测试用例集的验证,却忽略了对修复效果的研究分析。本文主要是对自动修复工具在修复效果方面的探讨研究,通过对两种具有代表性的自动修复工具GenProg与CETI修复结果的收集,分析两种工具的修复效果,以此来判断自动修复工具在修复时是采取缺陷容忍修复还是缺陷排除修复,在修复时工具更倾向于哪种修复手段。从本文的实验结果可得知大部分情况软件自动修复工具在修复时会使用缺陷容忍的方式,只有小部分情况会使用缺陷排除的方式,缺陷排除修复占总修复量的两成左右。本文通过对缺陷涉及代码行数统计,以及缺陷到失效所经过传播链的长度,提出了一个关于错误复杂程度的理念,由于自动修复软件在修复时必然会涉及到缺陷代码以及错误传播链,本文进而对错误复杂度与自动软件修复倾向进行了研究,通过实验表明,错误复杂度越高时软件自动修复工具越倾向于缺陷容忍修复或者只能使用缺陷容忍来进行修复,当缺陷复杂度低时,自动修复软件才会考虑使用缺陷排除来进行修复。本文的研究成果明确了现有自动修复工具的修复效果以缺陷容忍为主,并发现了错误复杂度与修复手段之间的关联关系,为提升当前主流软件自动修复工具的修复效率提供了依据和基础。
[Abstract]:With the development of the times, the scale of software development and software complexity are increasing. Due to the factors of the developer or the software itself, there are more and more defects in the software, and there are many kinds of defects. The damage caused by the failure caused by software in the society is more and more great. Developers must focus on the research of software repair. However, manual debugging of software not only increases the heavy workload for maintainers, It may also delay the time the software is back to normal. Therefore, the academic research focuses on how to effectively reduce the pressure of debugging staff, and developed automatic debugging technology, such as software automatic repair technology. In recent years, great achievements have been made in the research of automatic program repair, but there are still many problems to be solved, and the success rate and efficiency of automatic repair still need to be improved. Generally speaking, software automatic repair technology is based on defect tolerance and defect removal to achieve automatic software fault repair, but the current automatic repair technology only focuses on whether the patch can satisfy the verification of test case set. However, the research and analysis of the effect of restoration were ignored. This paper mainly discusses the effect of automatic repair tools, through the collection of two representative automatic repair tools GenProg and CETI repair results, analyzes the repair effects of the two tools. In order to determine whether the automatic repair tool should be repaired by defect tolerance or defect removal, the tool is more inclined to repair the tool. From the experimental results of this paper, we can know that in most cases, the software automatic repair tools will use defect tolerance while only a small number of cases will use defect elimination, defect exclusion and repair accounts for about 20% of the total repair amount. By counting the number of lines of code involved in the defect and the length of the propagation chain from the defect to the failure, this paper presents an idea of the complexity of the error. Due to the defect code and error propagation chain will be involved in the repair of automatic repair software, the error complexity and the tendency of automatic software repair are studied in this paper, and the experimental results show that, The higher the error complexity, the more prone the software automatic repair tool is to defect tolerance or defect tolerance. When the defect complexity is low, the automatic repair software will consider using defect elimination to repair. The research results of this paper show that the defect tolerance is the main effect of the existing automatic repair tools, and the relationship between the error complexity and the repair means is also found. It provides the basis and foundation for improving the repair efficiency of the current mainstream software automatic repair tools.
【学位授予单位】:国防科学技术大学
【学位级别】:硕士
【学位授予年份】:2016
【分类号】:TP311.53

【相似文献】

相关期刊论文 前10条

1 费洪顺;如何选择有线台管理软件[J];广播与电视技术;2000年08期

2 段晓静;《着迷英语900句》学习软件[J];中国电子出版;2000年06期

3 晓红;;《得心应手办公2000》[J];电脑采购周刊;2000年21期

4 卫宏春;软件的特征[J];微机发展;2001年06期

5 CFan·高兴 ,Luck 高兴;软件功能失实——不得不说的话题[J];电脑爱好者;2001年21期

6 朱青亮;;软件上手不再难 软件快速上手十方法[J];软件导刊;2003年02期

7 任芳,杨蕾,徐珂珂;灵活利用软件功能 努力提高工作效率[J];中国传媒科技;2004年02期

8 齐国涛,娄奕娟;谁为软件狂?[J];软件世界;2004年10期

9 索而其已;软件多少钱一斤?[J];软件工程师;2004年11期

10 唐东,张健民,吴建峰;热轧模型实用解析软件[J];控制工程;2004年S2期

相关会议论文 前10条

1 韩大建;;前言[A];计算机在土木工程中的应用——第十届全国工程设计计算机应用学术会议论文集[C];2000年

2 王晓甜;张玉清;;安全漏洞自动收集软件的设计与实现[A];全国网络与信息安全技术研讨会'2005论文集(上册)[C];2005年

3 于秀山;杨玲萍;;装备软件定型测评实践[A];中国电子学会可靠性分会第十四届学术年会论文选[C];2008年

4 张茹;周红建;郭春;陈越;;军用软件测评实验室质量管理体系建设[A];第三届中国测试学术会议论文集[C];2004年

5 宋煜;张子明;;拳击比赛评判系统的软件国际化研究[A];中国电子学会第十五届信息论学术年会暨第一届全国网络编码学术年会论文集(上册)[C];2008年

6 李健;吕志平;李建伟;乔书波;;面向CORS的精密定位服务软件体系设计[A];计算机技术与应用进展·2007——全国第18届计算机技术与应用(CACIS)学术会议论文集[C];2007年

7 束奇峰;张家芸;Du Sichen;S.Seetharaman;;预报熔渣热物理及热力学性质的软件——ThermoSlag[A];中国金属学会2003中国钢铁年会论文集(3)[C];2003年

8 王绍举;郑晓云;徐拓奇;;星载软件在轨重注技术[A];中国空间科学学会2013年空间光学与机电技术研讨会会议论文集[C];2013年

9 祁欣;任曙霞;马文静;杨红梅;多海伟;曹德煜;白雪;班欣;张华荣;;海洋气象软件的开发风险与解决方法探讨[A];2012年全国网络与数字内容安全学术年会论文集[C];2012年

10 吕红宇;林建锋;刘振安;张家铨;;阴极条室测试用软件Comexe[A];第7届全国核电子学与核探测技术学术年会论文集(二)[C];1994年

相关重要报纸文章 前10条

1 吴镝;管理软件: 呈现五大走向[N];计算机世界;2006年

2 吴镝;管理软件:转移主战场[N];计算机世界;2005年

3 本报记者 柯文;软件怎样为中小企业E化出力[N];中国高新技术产业导报;2001年

4 本报记者 吴晓伟;财务软件:一套标准和一个产业的诞生[N];计算机世界;2004年

5 本报记者 吴玉征;为中小企业定制软件[N];计算机世界;2010年

6 ;触摸电脑的灵魂:软件[N];电脑报;2003年

7 谭浩强;我们需要更多的原创软件[N];电脑报;2004年

8 本报记者 王保纯 通讯员 赵艳芬;挑战世界软件市场[N];光明日报;2003年

9 本报记者 王政;买软件还是自己开发[N];人民日报;2001年

10 杨顺青 金明;小软件有大作为[N];扬州日报;2008年

相关博士学位论文 前10条

1 万小敏;软件行为动态分析关键技术研究[D];国防科学技术大学;2013年

2 黄兴;面向生物领域协作的科学软件分享、选择与推荐研究[D];复旦大学;2014年

3 杨帆;软件安全性测试与分析的若干关键技术研究[D];武汉大学;2013年

4 侯可佳;基于接口语义契约的服务化软件自动测试技术研究[D];清华大学;2015年

5 王红春;网络化软件多粒度动态特性分析[D];武汉大学;2010年

6 董雪兵;软件知识产权保护制度研究[D];浙江大学;2006年

7 刘铮;大规模软件可信性度量分析原理及其方法的研究[D];东北大学;2010年

8 邹佳恒;BESⅢ离线软件与D物理的研究[D];山东大学;2009年

9 陈刚;面向云计算的软件可用性机制研究[D];华中科技大学;2013年

10 何加浪;软件可信性保障若干关键技术[D];南京理工大学;2012年

相关硕士学位论文 前10条

1 蔡烨挺;软件自动修复技术修复内涵分析研究[D];国防科学技术大学;2016年

2 盛若亚;基于SBT的集成开发以及软件系统功能分离[D];华南理工大学;2015年

3 高赛;基于过程数据采集与分析的软件项目评价研究[D];山东大学;2015年

4 杜力为;面向汽车电子的通信栈软件的设计与实现[D];电子科技大学;2014年

5 金钊;软件项目工作监控系统模块的开发及系统测试[D];电子科技大学;2014年

6 王振佳;出租车全自动电召项目的设计与实现[D];北京邮电大学;2015年

7 赵轶文;基于行为模板的软件行为分析方法[D];北京工业大学;2015年

8 袁田;公司防火墙管理软件的设计与实现[D];电子科技大学;2014年

9 李艺丰;云计算软件即服务(SaaS)模式法律问题探析[D];复旦大学;2014年

10 白鹤;基于Perl语言的软件国际化的研究与应用[D];石家庄铁道大学;2015年



本文编号:2133101

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2133101.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户22a36***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com