APP下载

基于软件代码演化信息的克隆谱系提取方法

2017-01-13陈桌张丽萍王春晖

计算机应用 2016年12期

陈桌+张丽萍+王春晖

摘 要:针对现有克隆演化模式分类不清晰、克隆谱系提取工具少且效率低等问题,提出了根据克隆代码映射关系和演化信息自动构建克隆谱系的方法。首先通过词频向量计算、代码行距以及克隆属性相结合分阶段映射版本间克隆;然后根据映射结果为克隆群和克隆片段添加演化模式;最后串联所有版本中的克隆映射关系和演化模式构建克隆谱系。对4款开源软件进行实验并人工验证,实验结果表明克隆谱系提取工具——ECG的可行性和高效性。此外,从提取结果中发现,在演化过程中约42%的克隆代码未发生变化,发生不一致变化的克隆代码约占3.48%,此类克隆可能会引入潜在bug需要被重点关注。该方法将为克隆代码质量评估和管理提供参考和支持。

关键词:克隆代码;克隆映射;演化模式;克隆谱系;演化分析

中图分类号: TP311.5

文献标志码:A

文章编号:1001-9081(2016)12-3461-07