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

基于代码变更检测的软件演化评估技术

发布时间:2022-07-14 19:42
  在现代软件系统的生命周期内,缺陷修复、功能增强、性能改进、需求增加,以及运行环境的改变等均要求软件系统具有较强的演化能力,否则软件将会不断地腐化,越来越难以修改,进而维护费用也会越来越高。为了提高软件演化的可信性和降低软件演化的成本,许多应用场景需要对软件的演化行为和演化效果实施定性或定量的评估,例如,代码不一致性修改,代码重构收益等。近年来,开源软件的数据获取更加便捷,吸引了越来越多的学者利用软件仓库挖掘技术研究开源软件的演化,研究的主题包括代码复杂度的演化、代码变更模式的挖掘、软件演化预测,以及代码可演进性分析等。然而,现有的软件演化评估还存在如下两个突出问题:(1)演化评估中的变更信息多数从版本控制系统中直接获取,变更粒度为文件级别或代码行级别,这种变更忽略了代码语法结构的变化,且含有较多的噪音,而代码的结构变更信息对于准确地理解代码演化的本质至关重要;(2)演化评估的结果在实践指导方面与软件开发活动的衔接不够紧密。为了解决上述问题,本文从代码层面上选取了圈复杂度、易替换性,以及结构变更倾向性3个常用的软件质量特性,对它们进行演化评估。本文的研究一方面从代码结构变更的角度加深了人... 

【文章页数】:110 页

【学位级别】:博士

【文章目录】:
摘要
Abstract
第1章 绪论
    1.1 研究背景
    1.2 研究现状
        1.2.1 代码复杂性度量与演化评估研究现状
        1.2.2 易替换性演化评估研究现状
        1.2.3 代码变更倾向性预测研究现状
    1.3 研究内容
    1.4 主要贡献
    1.5 论文结构
第2章 基础知识
    2.1 抽象语法树
    2.2 控制流图
    2.3 代码度量提取
    2.4 代码结构变更检测
    2.5 本章小结
第3章 代码圈复杂度演化评估
    3.1 背景知识
    3.2 研究方法
        3.2.1 研究问题
        3.2.2 分析方法
    3.3 实验设置
        3.3.1 实验对象
        3.3.2 数据采集
    3.4 实验结果
    3.5 效度威胁
    3.6 本章小结
第4章 代码易替换性度量与演化评估
    4.1 背景知识
        4.1.1 耦合类型
        4.1.2 类构造型
        4.1.3 包组织方式
    4.2 研究方法
        4.2.1 研究问题
        4.2.2 分析方法
    4.3 实验设置
        4.3.1 实验对象
        4.3.2 数据采集
    4.4 实验结果
    4.5 效度威胁
    4.6 本章小结
第5章 代码结构变更倾向性预测与评估
    5.1 背景知识
        5.1.1 代码坏味简介
        5.1.2 代码坏味演化度量
        5.1.3 代码结构变更类型
    5.2 研究方法
        5.2.1 研究问题
        5.2.2 分析方法
    5.3 实验设置
        5.3.1 实验对象
        5.3.2 数据采集
    5.4 实验结果
    5.5 效度威胁
    5.6 本章小结
第6章 总结与展望
    6.1 工作总结
    6.2 研究展望
致谢
参考文献
作者简介



本文编号:3661757

资料下载
论文发表

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


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

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