Skip to main content
QUICK REVIEW

[论文解读] Problems in Systematic Application of Software Metrics and Possible Solution

Gordana Rakić, Zoran Budimac|arXiv (Cornell University)|Nov 15, 2013
Software Engineering Research参考文献 7被引用 9
一句话总结

本文识别出现有软件度量工具的关键局限性——尤其是其语言特定的设计和可扩展性差——并提出一种基于模块化架构的新度量工具,实现语言无关性。原型通过统一的中间表示,展示了对输入编程语言的独立性,从而实现跨多种代码库的系统化、可复用的软件度量应用。

ABSTRACT

Systematic application of software metric techniques can lead to significant improvements of the quality of a final software product. However, there is still the evident lack of wider utilization of software metrics techniques and tools due to many reasons. In this paper we investigate some limitations of contemporary software metrics tools and then propose construction of a new tool that would solve some of the problems. We describe the promising prototype, its internal structure, and then focus on its independency of the input language.

研究动机与目标

  • 解决由于工具限制导致的软件度量在实践中广泛未被充分利用的问题。
  • 识别现有软件度量工具的核心缺陷,包括语言依赖性和可扩展性差。
  • 设计一种新工具架构,支持在多种编程语言中系统化、可重复地应用软件度量。
  • 通过语言无关的内部表示,确保工具与输入源代码语言的独立性。
  • 提供一个原型,展示所提架构在现实世界软件质量评估中的可行性与可扩展性。

提出的方法

  • 设计一种模块化软件度量工具,采用可插拔架构以支持多种编程语言。
  • 引入一种统一的中间表示(IR),将度量计算与源语言解析解耦。
  • 为每种目标语言实现前端解析器,将源代码转换为通用中间表示。
  • 开发后端引擎,对中间表示应用度量,确保语言无关的度量评估。
  • 采用插件式设计,支持无需修改核心逻辑即可轻松扩展新语言和度量。
  • 通过一个支持多种语言的原型验证该方法,展示一致的度量计算能力。

实验结果

研究问题

  • RQ1当前软件度量工具的主要局限性是什么,阻碍了其系统性采用?
  • RQ2如何设计一种软件度量工具,使其与输入编程语言无关?
  • RQ3统一的中间表示能否实现跨不同编程语言的一致且可复用的度量应用?
  • RQ4所提架构在多大程度上提升了软件度量工具的可扩展性与可维护性?
  • RQ5该原型如何展示语言无关软件度量分析的可行性?

主要发现

  • 现有软件度量工具存在强烈的语言依赖性,限制了其在多样化代码库中的可重用性与可扩展性。
  • 所提出的工具架构通过使用通用中间表示,成功地将度量计算与源语言解析解耦。
  • 原型表明,无需重写核心逻辑,即可在多种编程语言中一致地应用度量。
  • 模块化、插件式设计支持新语言和度量的轻松集成,提升了可维护性与可扩展性。
  • 通过在多种语言目标上实现与测试,验证了工具与输入语言的独立性。
  • 该方法为工业与学术环境中系统化、可重复且可扩展的软件质量评估提供了切实可行的基础。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。