Skip to main content
QUICK REVIEW

[论文解读] Quantifying Technical Debt: A Systematic Mapping Study and a Conceptual Model

Judith Perera, Ewan Tempero|arXiv (Cornell University)|Mar 12, 2023
Software Engineering Research被引用 4
一句话总结

本文提出了一种概念模型——技术债务量化模型(TDQM),以统一和标准化软件开发中技术债务(TD)量化方法的多样性。通过使用统一框架——TDQM方法对比矩阵,将39种技术债务量化方法进行映射,实现了系统性比较,揭示了诸如'利息'和'重构成本'等关键概念,并识别出'新代码成本'和'返工成本'等尚未充分探索的领域,从而支持更一致的技术债务管理决策。

ABSTRACT

To effectively manage Technical Debt (TD), we need reliable means to quantify it. We conducted a Systematic Mapping Study (SMS) where we identified TD quantification approaches that focus on different aspects of TD. Some approaches base the quantification on the identification of smells, some quantify the Return on Investment (ROI) of refactoring, some compare an ideal state with the current state of a software in terms of the software quality, and some compare alternative development paths to reduce TD. It is unclear if these approaches are quantifying the same thing and if they support similar or different decisions regarding TD Management (TDM). This creates the problem of not being able to effectively compare and evaluate approaches. To solve this problem, we developed a novel conceptual model, the Technical Debt Quantification Model (TDQM), that captures the important concepts related to TD quantification and illustrates the relationships between them. TDQM can represent varied TD quantification approaches via a common uniform representation, the TDQM Approach Comparison Matrix, that allows performing useful comparisons and evaluations between approaches. This paper reports on the mapping study, the development of TDQM, and on applying TDQM to compare and evaluate TD quantification approaches.

研究动机与目标

  • 识别并分析现有文献中关于软件开发中技术债务(TD)量化的各种方法。
  • 解决技术债务量化方法之间缺乏共识和可比性的问题,这阻碍了有效技术债务管理(TDM)的实施。
  • 开发一个统一的概念模型,以捕捉技术债务量化的核心概念及其相互关系。
  • 创建一个标准化的比较框架——TDQM方法对比矩阵,用于评估和对比多种技术债务量化方法。
  • 在未来工作中将模型的应用扩展至非代码相关的技术债务类型,如需求债务。

提出的方法

  • 开展系统性映射研究(SMS),从文献中识别并分类39种技术债务量化方法。
  • 通过综合现有文献中的关键概念,构建技术债务量化模型(TDQM),重点关注代码相关的技术债务类型(如代码债务、设计债务、架构债务)。
  • 定义TDQM的核心概念:技术债务项(TD Item)、利息(Interest)、重构成本(Cost of Refactoring)、新代码(New Code)、返工(Rework)及其相互关系。
  • 创建TDQM方法对比矩阵,作为统一的表示形式,用于在定义的概念基础上对不同量化方法进行映射与比较。
  • 应用TDQM评估39种方法——其中33种为模型前方法,6种为模型后方法——以评估其一致性、覆盖范围与洞察力。
  • 利用该模型识别趋势,例如'利息'和'重构成本'的映射频率最高,同时突出'新代码成本'等尚未充分研究的领域。

实验结果

研究问题

  • RQ1RQ1: 研究文献中提出了哪些技术债务量化方法?
  • RQ2RQ2: 如何建立一个能够捕捉其核心概念与关系的技术债务量化模型?
  • RQ3RQ3: 如何利用统一框架来比较和评估不同的技术债务量化方法?
  • RQ4RQ4: 在现有量化方法中,TDQM的哪些概念被最频繁地涉及?
  • RQ5RQ5: 该模型揭示了技术债务量化中哪些方面尚未被充分探索或代表性不足?

主要发现

  • TDQM方法对比矩阵成功实现了对39种多样化技术债务量化方法的系统性、高效比较,尽管这些方法在形式和侧重点上存在差异。
  • 概念'利息'和'重构成本'分别获得了最多直接映射(各22次),表明它们在当前量化工作中的核心地位。
  • 概念'技术债务项'在16种方法中被直接映射,显示出其在技术债务表示中的基础性作用。
  • 该模型揭示了'新代码成本'和'返工成本'——作为技术债务利息的组成部分——尚未被充分研究,凸显了当前研究中的一个空白。
  • 架构债务在TDQM各概念中覆盖最全面,表明现有研究对架构层面债务的关注度最高。
  • 2012年、2015年和2016年是技术债务量化研究最活跃的年份,表明该领域在这一时期经历了概念发展的高峰。

更好的研究,从现在开始

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

无需绑定信用卡

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