【24h】

Predicting Consistent Clone Change

机译:预测一致的克隆更改

获取原文

摘要

Code clones, being an inevitable by-product of rapid software development, can impact software quality. The introduction of code clone groups and clone genealogies enable software developers to be aware of the presence of and changes to clones as a collective group, they also allow developers to understand how clone groups evolve throughout software life cycle. Due to similarity in codes within a clone group, a change in one piece of the code may require developers to make changes to other clones in the group. Failure in making consistent change to a clone group when necessary is commonly known as "clone consistency-defect", which can adversely impact software reliability. We propose an approach to predict clone consistency-requirement at the time when changes have been made to a clone group. Our predictor is a Bayesian network implemented in WEKA. We build a variant of clone genealogies to collect all consistent/inconsistent changes to clone groups, and extract three sets of attributes from clone groups as input for predicting consistent clone change. These three sets are: code attributes, context attributes and evolution attributes. We conduct experiments on three open source projects. These experiments show that our approach has high precision and recall in predicting clone consistency-requirement. This holistic approach can aid developers in maintaining code clone changes, and avoid potential clone consistency-defect, which can improve the software quality and reliability.
机译:代码克隆是快速软件开发的必然产物,会影响软件质量。代码克隆组和克隆族谱的引入使软件开发人员可以了解作为一个集体组的克隆的存在和更改,它们还使开发人员能够了解克隆组在整个软件生命周期中是如何演变的。由于克隆组中代码的相似性,更改其中一部分代码可能需要开发人员对组中的其他克隆进行更改。未能在必要时对克隆组进行一致更改的失败通常称为“克隆一致性缺陷”,这可能会对软件可靠性产生不利影响。我们提出了一种在对克隆组进行更改时预测克隆一致性要求的方法。我们的预测器是在WEKA中实现的贝叶斯网络。我们构建了一个克隆族谱的变体,以收集对克隆组的所有一致/不一致的更改,并从克隆组中提取三组属性作为预测一致克隆更改的输入。这三组分别是:代码属性,上下文属性和演化属性。我们在三个开源项目上进行了实验。这些实验表明,我们的方法在预测克隆一致性要求方面具有很高的精度和召回率。这种整体方法可以帮助开发人员维护代码克隆更改,并避免潜在的克隆一致性缺陷,从而可以提高软件质量和可靠性。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号