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

针对代码缺陷修复的代码推荐技术研究

发布时间:2022-07-11 15:08
  代码缺陷的修复是一项复杂而且耗时的工作,相关研究与调查表明,软件公司每年都需要为代码缺陷的修复投入大量金钱和时间。与此同时,随着开源行动的普及,大量开源代码被复用与重新实现,部分含有简单缺陷的代码,有很大可能在其它软件项目中经过轻微修改后被重新实现,成为修复了缺陷的相似代码。在这种情况下,对于某一段缺陷代码,如果能找到其存在于软件项目中的相似代码,通过比较缺陷代码与该相似代码之间的异同,程序员将有机会更快地理解缺陷发生的原因,设计缺陷修复方案。基于上述想法,本文在对大量静态代码分析工具与代码自动修复技术的相关研究进行调研后,对相似代码在代码缺陷修复中的应用开展了研究,并针对简单的代码缺陷修复设计与实现了一种基于代码相似度的Java代码推荐技术CRSearcher。CRSearcher以缺陷代码的静态分析结果为基础,结合抽象语法树分析技术,使用RKR-GST的改进算法从成熟的开源代码库中进行相似代码搜索,为程序员提供设计优秀的相似代码片段作为参考,降低缺陷修复难度,提高缺陷修复效率。最后,为了验证本研究的可行性和有效性,本文使用来自8个开源项目中约93万代码构建CRSearhcer的代码... 

【文章页数】:64 页

【学位级别】:硕士

【文章目录】:
摘要
abstract
第一章 绪论
    1.1 研究背景
        1.1.1 高昂的代码缺陷修复成本
        1.1.2 代码自动修复技术的研究进展
        1.1.3 开源行动的兴起
        1.1.4 软件项目之间的代码冗余
    1.2 研究内容及其意义
    1.3 本文的主要贡献
    1.4 章节安排
第二章 国内外相关工作
    2.1 静态代码分析
    2.2 相似代码搜索
    2.3 代码缺陷修复
    2.4 本章小结
第三章 相似代码与缺陷修复的联系与应用
    3.1 相似代码与代码自动修复技术的联系
        3.1.1 对代码自动修复技术的研究
        3.1.2 代码自动修复技术带来的启发
    3.2 相似代码对代码缺陷修复的帮助
    3.3 本章小结
第四章 针对代码缺陷修复的代码推荐技术的设计与实现
    4.1 总体框架
    4.2 缺陷的检测和定位
        4.2.1 基于静态代码分析工具的缺陷定位
        4.2.2 基于测试覆盖的缺陷定位
    4.3 代码上下文选取
    4.4 相似代码搜索
    4.5 代码推荐
    4.6 CRSearcher的实现与展示
    4.7 本章小结
第五章 实验与评估
    5.1 对代码补丁的统计与分析
        5.1.1 实验背景
        5.1.2 实验过程与结果
    5.2 对CRSearcher的代码推荐效果的实验与评估
        5.2.1 实验背景
        5.2.2 实验过程与结果
    5.3 本章小结
第六章 总结与展望
    6.1 总结
    6.2 后续研究工作
参考文献
致谢
攻读硕士学位期间已发表或录用的论文



本文编号:3658387

资料下载
论文发表

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


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

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