Skip to main content
QUICK REVIEW

[论文解读] Technical Debt Prioritization: State of the Art. A Systematic Literature Review

Valentina Lenarduzzi, Terese Besker|arXiv (Cornell University)|Apr 29, 2019
Software Engineering Research参考文献 21被引用 9
一句话总结

本篇系统性文献回顾综合分析了44项关于技术债务(TD)优先级排序的研究,识别出多种针对不同标准进行优化的策略,但尚未就关键因素或经过验证的工具达成共识。研究揭示了在技术债务本金和利息的实证测量方面存在显著空白,并提出了一个优先级排序因素的影响图,以指导未来的研究与工具开发。

ABSTRACT

Background. Software companies need to manage and refactor Technical Debt issues. Therefore, it is necessary to understand if and when refactoring Technical Debt should be prioritized with respect to developing features or fixing bugs. Objective. The goal of this study is to investigate the existing body of knowledge in software engineering to understand what Technical Debt prioritization approaches have been proposed in research and industry. Method. We conducted a Systematic Literature Review among 384 unique papers published until 2018, following a consolidated methodology applied in Software Engineering. We included 38 primary studies. Results. Different approaches have been proposed for Technical Debt prioritization, all having different goals and optimizing on different criteria. The proposed measures capture only a small part of the plethora of factors used to prioritize Technical Debt qualitatively in practice. We report an impact map of such factors. However, there is a lack of empirical and validated set of tools. Conclusion. We observed that technical Debt prioritization research is preliminary and there is no consensus on what are the important factors and how to measure them. Consequently, we cannot consider current research conclusive and in this paper, we outline different directions for necessary future investigations.

研究动机与目标

  • 调查现有研究与工业实践在技术债务(TD)优先级排序方面相对于功能开发和错误修复的处理方式。
  • 识别在软件工程研究与实践中用于TD优先级排序的准则、度量方法与工具。
  • 评估TD优先级排序的最新进展,突出实证验证与工具支持方面的缺口。
  • 为未来的研究与决策框架提供一个全面的影响图,展示影响TD优先级排序的各类因素。

提出的方法

  • 依据Kitchenham和Charters的指南开展系统性文献回顾(SLR),分析截至2019年12月前发表的557篇独立论文。
  • 对标题与摘要应用纳入与排除标准,并由多位评审员进行全文评估,以确保一致性。
  • 采用滚雪球法扩展检索范围,包括正向与反向引用分析,以识别相关研究。
  • 使用Dyb和Dingsøyr的协议评估研究质量,以确保所纳入的原始研究具有可靠性。
  • 将研究发现综合为对TD优先级排序方法、因素、度量与工具的专题分析。
  • 基于对识别出准则的定性综合,构建优先级排序因素的影响图。

实验结果

研究问题

  • RQ1在研究与工业界中,提出了哪些用于技术债务优先级排序的方法?
  • RQ2在实践中与研究中,哪些因素影响技术债务的优先级排序?
  • RQ3目前用于支持技术债务优先级排序的度量与工具有哪些?
  • RQ4技术债务的本金与利息在多大程度上得到了实证测量与验证?
  • RQ5技术债务优先级排序中的关键缺口与未来研究方向是什么?

主要发现

  • 代码债务与架构债务是在优先级排序研究中最常被研究的技术债务类型,而测试债务与需求债务等其他类型则研究不足。
  • 存在多种优先级排序方法,各自针对成本、风险或可维护性等不同标准进行优化,但尚未就最有效的方法达成共识。
  • 现有度量方法仅捕捉了实践中用于优先级排序的定性因素的一小部分,表明在全面建模方面存在显著缺口。
  • 缺乏专门设计用于技术债务优先级排序的实证验证工具,大多数工具为临时性解决方案或未被广泛采用。
  • 优先级排序因素的影响图提供了不同类型技术债务可能带来的负面影响(利息)与需考虑事项(本金)的结构化概览。
  • 未来研究必须系统性地测量各类技术债务的本金与利息,并开发经过验证的、支持决策的优先级排序框架。

更好的研究,从现在开始

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

无需绑定信用卡

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