中文

我们如何检测不一致的方法名?一项基于代码审查视角的实证研究

软件工程 2023-08-25 v1

摘要

方法的恰当命名可以使程序代码更易于理解,从而提升软件可维护性。然而,由于沟通不畅或对软件开发生命周期内规范的缺乏熟悉,开发者可能会使用不一致的名称。为解决此问题,大量研究工作致力于构建能够检查方法名不一致并推荐一致名称的自动化工具。然而,现有数据集通常未提供关于为何某个方法名被认为不当且需要更改的精确细节。此类信息可为如何改进恰当方法名的推荐提供有用线索。据此,我们通过将名称变更与代码审查相匹配,构建了一个样本方法命名基准 ReName4J。随后,我们基于 ReName4J 对最先进技术在检测或推荐一致与不一致方法名方面的表现进行了实证研究。该研究的主要目的在于揭示基于已审查名称的不同视角,而非提出一个完整的基准。我们发现,现有技术在我们的审查驱动基准上表现欠佳,无论是在不一致检查还是推荐方面。我们进一步识别了现有技术评估中的潜在偏差,未来研究应予以充分考虑。

关键词

引用

@article{arxiv.2308.12701,
  title  = {How are We Detecting Inconsistent Method Names? An Empirical Study from Code Review Perspective},
  author = {Kisub Kim and Xin Zhou and Dongsun Kim and Julia Lawall and Kui Liu and Tegawendé F. Bissyandé and Jacques Klein and Jaekwon Lee and David Lo},
  journal= {arXiv preprint arXiv:2308.12701},
  year   = {2023}
}