Detecting the Locations and Predicting the Maintenance Costs of Compound Architectural Debts

Detecting the Locations and Predicting the Maintenance Costs of Compound Architectural Debts
复制标题

DOI:
10.1109/tse.2021.3102221
复制
发表时间:
2021-08
影响因子:
7.4
通讯作者:
Lu Xiao;Yuanfang Cai;R. Kazman;Ran Mo;Qiong Feng
Lu Xiao;Yuanfang Cai;R. Kazman;Ran Mo;Qiong Feng
中科院分区:
计算机科学1区
文献类型:
--
作者:
Lu Xiao;Yuanfang Cai;R. Kazman;Ran Mo;Qiong Feng

文献摘要

被引文献

相似文献

建筑技术债务(ATD)是指在先前的研究中引起高维护的“兴趣”的软件系统,这表明ATD对日常开发产生了重大的负面影响。精确找到ATD,并捕获每个甲板上维护成本的轨迹,以预测甲板的未来版本中的成本我们以四种典型模式表示,这些模式需要每个甲板的核心。 。回归模型 - 五个项目中的稳定“利率”。在下一个系统中,大多数(82%至100%)通过汇总相关ATD来指责,建筑师可以专注于少数成本效益的复合债务源文件的数量,但通过这些功能来解释其项目的大部分维护成本,我们的方法可以帮助建筑师做出明智的决定,以了解是否,何处以及如何重构消除其系统中的ATD。
Architectural Technical Debt (ATD) refers to sub-optimal architectural design in a software system that incurs high maintenance “interest” over time. Previous research revealed that ATD has significant negative impact on daily development. This paper contributes an approach to enable an architect to precisely locate ATDs, as well as capture the trajectory of maintenance cost on each debt, based on which, predict the cost of the debt in a future release. The ATDs are expressed in four typical patterns, which entail the core of each debt. Furthermore, we aggregate compound ATDs to capture the complicated relationship among multiple ATD instances, which should be examined together for effective refactoring solutions. We evaluate our approach on 18 real-world projects. We identified ATDs that persistently incur significant (up to 95 percent of) maintenance costs in most projects. The maintenance costs on the majority of debts fit into a linear regression model—indicating stable “interest” rate. In five projects, 12.1 to 27.6 percent of debts fit into an exponential model, indicating increasing “interest” rate, which deserve higher priority from architects. The regression models can accurately predict the costs of the majority of (82 to 100 percent) debts in the next release of a system. By aggregating related ATDs, architects can focus on a small number of cost-effective compound debts, which contain a relatively small number of source files, but account for a large portion of maintenance costs in their projects. With these capabilities, our approach can help architects make informed decisions regarding whether, where, and how to refactor for eliminating ATDs in their systems.