【摘 要】
:
在软件开发阶段,开发人员为了缩短开发时间、减少开发成本,经常会通过复制粘贴已有代码来进行软件开发任务。一般地,这种开发方式被称为代码克隆,所使用的重复代码被称为克隆代码。虽然代码克隆可以有效地降低软件开发的成本,但它可能会对整体软件的质量带来潜在的威胁,并显著增加维护成本。因此,为了保证软件质量,有必要对软件进行代码克隆检测。维护人员可以对检测到的克隆代码进行重构,以此来减少软件中的克隆代码。为了
论文部分内容阅读
在软件开发阶段,开发人员为了缩短开发时间、减少开发成本,经常会通过复制粘贴已有代码来进行软件开发任务。一般地,这种开发方式被称为代码克隆,所使用的重复代码被称为克隆代码。虽然代码克隆可以有效地降低软件开发的成本,但它可能会对整体软件的质量带来潜在的威胁,并显著增加维护成本。因此,为了保证软件质量,有必要对软件进行代码克隆检测。维护人员可以对检测到的克隆代码进行重构,以此来减少软件中的克隆代码。为了缓解克隆所造成的软件质量缺陷,现有的研究已经提出了许多用于代码克隆检测的自动化技术和工具。在现阶段的研究成果中,大部分研究所提出的检测技术主要是基于粗粒度的,并主要在前两类克隆中有较好的表现。然而,结构化克隆和语义克隆对软件质量影响较大,且无论在开发中和维护中都较难检测。并且,考虑到函数是组成系统的有意义的最小代码单元,本文尝试在函数级别上分别对结构化克隆和语义克隆进行检测,主要取得了以下研究成果:(1)为了在函数级别有效地检测软件中的结构化克隆代码,本文提出了函数级别的代码克隆检测方法,该方法利用结构相似性来测量函数级别中代码片段的相似性。该方法首先通过使用定义的节点类型而不是原始节点表示来改进抽象语法树(AST),以消除不同值给相似度计算带来的误差。然后采用序列算法,即Smith Waterman,来计算函数级别代码片段对的相似性得分。为了评估该方法的有效性,本文基于开源软件项目构建了五个公开可用的数据集。在五个数据集上的实验表明,该方法平均可以达到90.46%的精度和96.24%的召回率,并且比对比算法分别提高10.94%和4.02%。同时,实验结果表明,在跨项目的代码克隆检测中,该方法可以达到92.22%的精度和97.30%的召回率。(2)为了对软件中的语义克隆进行有效地检测,本文提出了一种新的语义克隆检测方法SCDVP。该方法首先通过将代码转化为中间表示,然后构造程序依赖图(PD G),并抽取其中的控制依赖和数据依赖信息。然后利用深度学习中的语义理解模型p aragra-ph2vec来分别获得每个函数的语义向量化表示。最后通过使用余弦相似度计算公式计算向量间的相似度值来判断函数间是否为克隆。为了评估该方法的检测性能,本文使用代码克隆标准数据集BigCloneBench来作为数据集。其实验结果表明,该方法可以达到95%的精度和96%的召回率,着意味着该方法在基于函数的代码克隆检测中表现良好。此外,在该数据集中,SCDVP的性能明显优于其他对比方法。
其他文献
目的:本文通过对急性缺血性脑卒中患者进行常规颅脑CT平扫(NCCT)、全脑CT灌注成像(CTP)、头颈部CTA血管成像及2-7天后颅脑CT平扫(NCCT~1)复查,并用Alberta卒中项目早期CT评分
杜甫在关心社会政治生活的同时 ,毕生致力于诗歌艺术的探索。他晚期的拗体诗 ,特别是七律拗体诗的创作 ,一改先前的诗风 ,正是他致力于这种探索所取得的硕果。本文将试图说明
英语角色扮演教学十分有利于培养学生运用英语的能力,实施英语角色扮演教学要在恰当选材的基础上做好精心设计和准备,要按一定步骤组织实施,才能真正达到好的教学效果。在表
随着近海地区交通运输的需要,各种大跨度跨海桥梁不断涌现,其中大跨度公铁两用钢桁梁斜拉桥由于其跨越能力强、能同时满足公路和铁路运输要求等优势而被普遍采用。海洋环境通常较为恶劣,其风大浪急的环境条件对这种大跨轻柔的跨海桥梁影响极大,因此对这类桥梁在风浪荷载作用下的结构动力响应进行研究是很有必要的。风致效应中抖振发生的频率较高,发生的风速较低,容易引起构件的疲劳,对桥梁行车的舒适度甚至安全性均存在不利影
翅果油是翅果油树种仁中提取的油脂,富含不饱和脂肪酸,含量达到90%以上,其中主要是亚油酸、油酸和亚麻酸,具有很高的营养价值。本论文以翅果油作为主要原料,以C57BL/6小鼠为研究对象,探讨翅果油对高脂饮食诱导的非酒精性脂肪肝小鼠的改善作用并对干预机制做初步研究。具体内容及结果如下:(1)4周龄C57BL/6小鼠适应性喂养1周后,将40只小鼠随机分为5组(n=8):基础饮食组、高脂饮食组、翅果油低、
本文就小学科学课堂教学工作的开展进行分析,重点了解到学生观察能力的培养策略,希望能够通过本文的研究,有效地提高课堂教学质量,以此帮助学生观察能力的改善,同时也为学生
近年来,先进高强钢已经成为了国内外研究的热点。作为第三代先进高强钢的中锰钢,其强韧性的提高主要是利用奥氏体发生TRIP效应来实现。目前,氮合金化已经被成功应用于不锈钢
随着科学技术的不断发展,在我国海洋经济发展取得的巨大成就的同时,也给自然资源环境,特别是海洋环境带来了巨大的威胁。卫星遥感成像监测具有迅速、真实、范围广、时效性强
现今社会,随着生活水平的提高,慢性疾病开始出现在人们的生活中。经研究表明,选择适宜的食物,可以减缓甚至控制病情的恶化。传统的确定疾病与食物关系的方法需要专家针对每种
<正> 邮电部设计院承担的报纸分发设备引进工程可行性研究报告于最近在北京通过邮政总局组织的建设单位和专家的会审,这项首次引进的报纸分发设备工程计划于1998年建成投产。