欢迎来到天天文库
浏览记录
ID:50703104
大小:12.84 MB
页数:146页
时间:2020-03-07
《基于代码依赖分析的软件可追踪技术研究.pdf》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、為i乂邊研究生毕业论文(申请博去学位)基于代码依赖分析的软件可追踪技术研究A文题目作者姓名匡宏宇学科、专业方向计算机软件与理论指导教9巧吕建教授研究方向软件方法学2016年12月学号:DG1033005论文答辩日期:2017年2月26日指导教师:(签字)b\3义^Automated乂nalysisofSo巧wareTraceabilitBasedonCodeDeendenciesypbyKuangH
2、ongyuSuervisedbpyProfessorLtlJianDepartmentofComputerScienceandTechnologyNaninUniversitjgyJune1620SubmittedinartialullmentothereuirementspffifqforthedegreeofDoctorofPhilosophyinComputerSoftwareandTheory??)一南京大学研究生
3、毕业论文中文摘要首页用纸毕业论文题目:基于代码依赖分析的软件可追踪技术研究计算机软件与理论专业2010级博去生姓名:臣宏宇指导教师(姓名、职称);吕建教授摘要软件可追踪性(SoftwareTraceability)是指软件系统在开发全生命周期中,能够生成和维护各类软件制品(例如需求和代码)在系统功能上的关联关系(也一称作追踪线索)的种能力。软件可追踪性的主要目的是当软件制品随版本变化而发生变化时,可通过追踪这些关联关系来帮助开发人员确定软件制品功、能变化的范围及
4、影响。当前可追踪性的工程实践方法仍然是W人工实现为核屯一-代码矩阵生成,的套围绕需求、维护与验证的软件质量保障机制从而造成了软件可追踪性分析耗时、费力、易错。同时,软件开发流程迭代加速、软件开发方法面向维护与演化、软件系统技术复杂性增高等趋势更加深了开发人员对软件可追踪性自动化分析的依赖。因此,研究需求到代码的可追踪性自动化分工作之一析成为软件工程学术领域最具代表性与挑战性的。一般而言,,在学术界大多数可追踪性关联关系的生成与维护是通过自动化地选择需求和代码中两个主要的信息维度来分析和实
5、现的,即软件系统内的文本(如需求规约和源代码文本)与代码元素之间的依赖关系(如函数调用和数据依赖关系),可追踪性自动化分析方法还需要通过在可追踪。同时性的追踪线索生成(TraceRecovery)、维护(TraceMaintenance)、验证(TraceValidation)H个应用场景下的验证来说明该分析方法的实践有效性。因此,对该领域研究的主要问题可表述为:(1)如何从需求和代码送两类处于不同抽象层次、且具有不同数据格式的软件制品中选择巧关信息,从而既精确又完整(2)的生
6、成和维护可追踪性;如何评估这些信息在不同的可追踪性自动化分析应用场景中的有效性。然而,当前主流的可追踪性自动化分析技术主要关注可追踪性的生成问题,缺乏对可追踪性维护与验证的支持。且其分析手段主要侧一重于基于文本的词法分析,往往忽略了代码元素之间的依赖关系送维度,从而导致当前可追踪性自动化分析极度依赖于软件制品内嵌文本的质量。部分综合考虑了代码依赖关系的可追踪性自动化分析技术也有着分析的代码依赖关系一类型单(主要)、分析算法较为简单等不足,是函数调用。因此当前软件可追踪性自动化分析存在
7、着对可追踪性应用场景支持不足、、分析方法精度较弱用户对工具结果缺乏信也等问题。i针对上述研究现状,我们首先通过实验验证了w函数调用和数据依赖为代表的代码依赖分析与可追踪性自动化分析么间所存在的强关联性。W此发现为一基础,我们在实践中逐步提出了W代码依赖关系紧密度分析为代表的系列代码依赖关系分析方法,,并与具体的可追踪性应用场景相结合从而为可追踪性的追踪线索验证一、生成、维护H个不同应用场景分别提出了个基于代码依赖的自动化分析方法。H个方法的评估实验表明,我们提出的代码依赖分析有
8、效地改进了H个可追踪性应用场景下的自动化分析,充分展示了代码依赖对于软件可追踪性自动化分析的重要意义。本文具体工作如下:.提出并验证了代码依赖分析与可追踪性自动化分析之间所存在的强关联一性。我们首先设计实现了个动态分析工具捕获高质量的函数调用与数据依赖关系。基于捕获的两类代码依赖关系,通过衡量目标函数的追踪线""索与其邻居函数(通过直接的函数调用或数据依赖与目标
此文档下载收益归作者所有