中文

利用需求与源代码间的历史关联识别受影响的类

软件工程 2018-08-21 v1

摘要

当新需求在软件系统中被引入并实现时,开发者必须识别需要更改的源代码类集合。因此,以往研究致力于预测受某需求影响的类集合。本文中,我们基于这样一种直觉引入并评估一类新型信息:与某特定类的历史变更相关联的需求集合,很可能表现出与该类中受影响的新需求在语义上的相似性。这一新的需求到需求集合(R2RS)度量族捕捉了新需求与先前关联至某类的现有需求集合之间的语义相似性。本文旨在提出并评估R2RS度量在预测受需求影响的类方面的效用。我们通过组合六种自然语言处理技术(如VSM)来衡量文本间语义相似性,以及三种分布分数(如相似性分数的平均值)来计算整体相似性,考虑了18种不同的R2RS度量。我们评估R2RS结合及对照于其他四个基于变更时间局部性、与代码直接相似性、复杂度度量和代码坏味的度量族,在预测受影响类上是否有用。我们的评估包含五种分类器和属于四个大型开源项目的78个发布版本,产生超过700,000个候选受影响类。实验结果表明,利用R2RS信息在各分类器和项目上实际将预测受影响类的准确率平均提升超过60%。

关键词

引用

@article{arxiv.1808.06359,
  title  = {Leveraging Historical Associations between Requirements and Source Code to Identify Impacted Classes},
  author = {Davide Falessi and Justin Roll and Jin Guo and Jane Cleland-Huang},
  journal= {arXiv preprint arXiv:1808.06359},
  year   = {2018}
}