中文

部分 SonarQube 问题对缺陷与变更有显著但微小的影响:一项大规模实证研究

软件工程 2021-03-09 v1

摘要

背景。公司通常投入精力去除被认为影响软件质量的技术问题,例如去除反模式或编码风格违规。目标。我们的目的是分析软件系统中技术债务(TD)项的散布情况,并评估它们对代码变更和缺陷倾向的影响,同时考虑 TD 项的类型及其严重性。方法。我们在 Apache 软件基金会(ASF)仓库的 33 个 Java 项目中进行案例研究。我们分析了包含 27K 个缺陷和 12M 次变更的 726 个提交。这些项目违反了 173 条 SonarQube 规则,在超过 200K 个类中产生了超过 95K 个 TD 项。结果。干净类(不受 TD 项影响的类)比脏类更不易变更,但两组之间的差异很小。干净类比受代码异味或安全漏洞类型 TD 项影响的类略微更容易变更。至于缺陷倾向,干净类与脏类之间没有差异。此外,我们发现 SonarQube 分配的类型和严重级别存在大量不一致。结论。我们的结果可帮助从业者理解他们应重构哪些 TD 项,并帮助研究人员弥补缺失的差距。它们也可支持公司和工具供应商尽可能准确地识别 TD 项。

关键词

引用

@article{arxiv.1908.11590,
  title  = {Some SonarQube Issues have a Significant but SmallEffect on Faults and Changes. A large-scale empirical study},
  author = {Valentina Lenarduzzi and Nyyti Saarimäki and Davide Taibi},
  journal= {arXiv preprint arXiv:1908.11590},
  year   = {2021}
}