克隆代码稳定性评估:基于bugs的修改频度方法

需积分: 5 1 下载量 40 浏览量 更新于2024-08-10 收藏 1.14MB PDF 举报
"这篇论文提出了一种新的方法来评估克隆代码的稳定性,该方法基于含bugs的代码文件修改频度。通过对软件版本管理系统中的bug修复日志进行标准化处理,结合bug管理系统的详细描述信息,关联提取出含有bug的代码文件。接着,使用克隆检测工具找出软件系统中的克隆代码,并与含bug的文件路径关联,从而区分含bug的克隆代码和非克隆代码。最后,通过SVN diff工具统计两者之间的修改频度,以评估克隆代码的稳定性。实验结果证明了这种方法的有效性,对于克隆代码的管理和维护提供了理论支持。" 克隆代码是软件开发中常见的现象,它指的是在代码库中存在结构相似或完全相同的代码片段。这种重复的代码可能会增加软件的复杂性和维护难度,因为一个bug的修复可能需要应用到所有克隆副本。论文关注的是如何有效地评估克隆代码的稳定性,这是软件质量保证和维护过程中的一个重要问题。 传统的克隆代码评估方法可能无法准确反映其实际稳定性,因此,论文提出了一种创新的方法,即基于bug的修复频率来衡量。首先,从版本控制系统(如SVN)中收集bug修复记录,这些记录包含了代码修改的历史信息。通过标准化处理,可以消除数据格式不一致的问题。其次,利用bug管理系统(如JIRA)中的详细信息,将bug报告与修复日志关联,定位到具体涉及bug的代码文件。 接下来,使用专门的克隆检测工具(如Simian、CPD等)扫描整个软件代码库,识别出所有的克隆代码段。将这些克隆代码与已确定的含bug文件进行比较,区分出那些包含bug的克隆代码和非克隆代码。通过SVN diff工具,可以量化计算出含bug的克隆代码与非克隆代码在修改频度上的差异。 实验部分,论文选取了五种不同编程语言开发的软件系统进行测试,结果显示,克隆代码的修改频度普遍低于非克隆代码,这意味着克隆代码可能更稳定,引发的bug严重程度也相对较低。这一发现为优化代码管理和改进维护策略提供了依据。 这篇论文提供了一种新的评估克隆代码稳定性的方法,该方法具有较高的准确性和实用性,能够帮助开发者更好地理解和处理软件中的克隆代码,提高整体的软件质量。此外,对于软件工程的研究和实践,它也提出了新的思考角度,即如何利用bug信息来优化代码的维护流程。
2019-10-28 上传
2023-12-10 上传