首页> 中文学位 >基于复制粘贴操作的克隆代码一致性维护需求预测方法
【6h】

基于复制粘贴操作的克隆代码一致性维护需求预测方法

代理获取

目录

封面

中文摘要

英文摘要

目录

第1章 绪 论

1.1课题研究的目的与意义

1.2国内外在克隆代码维护方向的研究现状及分析

1.3课题研究的主要内容及章节安排

第2章 克隆表示与处理

2.1克隆代码的表示形式

2.2克隆区域描述符的构建

2.3构建克隆家系

2.4本章小结

第3章 克隆代码一致性维护需求预测

3.1复制源及副本片段确认

3.2克隆代码特征提取

3.3克隆群一致性维护需求的识别

3.4克隆的一致性维护需求预测

3.5实验与分析

3.6本章小结

第4章 一致性维护需求预测插件的设计与实现

4.1插件总体框架

4.2克隆代码跟踪

4.3一致性维护需求预测

4.4克隆代码的保存

4.5预测插件的测试

4.6本章小结

结论

参考文献

攻读硕士学位期间发表的论文及其它成果

声明

致谢

展开▼

摘要

克隆代码普遍存在于软件系统中,它们可以加快开发速度,但同时也会引起一系列问题。当修改源代码涉及到某个克隆片段时,为确保克隆代码间的一致性,需要查找系统中所有与之构成克隆代码的克隆片段,逐一分析并确定它们是否需要做相应修改,这增加了软件维护的代价,而且忘记修改可能会引发软件缺陷。实证研究表明系统中的克隆代码只有一小部分在未来修改中需要一致性维护,因此为确保小部分克隆代码的一致性,每次修改克隆片段都查找并分析所有与之构成克隆的片段是不值得的。
  针对上述问题,本文提出了基于复制粘贴操作的克隆代码一致性维护需求预测方法。开发过程中,当开发人员执行复制粘贴操作且产生克隆代码时,预测其未来是否需要一致性维护并及时给出警告,从而避免可能引起软件维护困难的克隆代码产生。本文主要完成了以下工作,首先,使用Nicad克隆检测工具进行多版本软件克隆代码的检测,处理检测结果构建多版本系统中克隆代码的克隆家系。然后,使用机器学习算法构建克隆代码一致性维护需求预测模型,为构建预测模型,本文提取表征克隆代码片段的代码特征和上下文特征。最后,设计并实现了一个针对Java语言系统的Eclipse插件,将本文提出的预测方法以插件的形式体现,实现一个完整的预防性克隆代码维护方法。
  本文选择四个具有不同代码规模、不同应用领域的、Java语言开发的开源软件系统进行克隆代码一致性维护预测方法的评价实验。实验结果表明本文提出的预测方法具有较高的准确率和召回率。在实际开发中,该方法对开发人员是否执行复制粘贴操作有一定的参考价值。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号