中文

静态分析在促进学生软件质量改进中的应用:基于 PMD 的经验研究

软件工程 2023-07-20 v2

摘要

静态分析工具常用于扫描源代码并检测对工程编码规范的偏离。鉴于其重要性,linter 常被引入课堂,以教育学生如何检测并潜在避免这些代码反模式。然而,由于此类 linter 往往产生大量误报,其在提升学生认知方面的有效性鲜为人知。为增强学生对违反编码标准的潜在编码问题的意识,本文旨在反思我们在教学中使用静态分析的经验,以评估其在帮助学生改进软件质量方面的有效性。本文讨论了一项跨越 3 个学期的课堂实验结果,涉及 65 份提交,使用 PMD 对 690 条规则执行了代码评审活动。定量与定性分析结果表明,一组 PMD 质量问题的存在影响了问题的接受或拒绝,其中设计与最佳实践相关类别耗时更久才得以解决,且学生认可在代码评审中使用静态分析工具的潜力。通过本实验,代码评审可成为教育计算计划的重要组成部分。我们期望我们的发现能帮助教育者以代码评审策略支持学生,提升其对静态分析工具的认知并夯实编码技能。

关键词

引用

@article{arxiv.2302.05554,
  title  = {On the Use of Static Analysis to Engage Students with Software Quality Improvement: An Experience with PMD},
  author = {Eman Abdullah AlOmar and Salma Abdullah AlOmar and Mohamed Wiem Mkaouer},
  journal= {arXiv preprint arXiv:2302.05554},
  year   = {2023}
}