Purpose:
It refers a framework that can be used for the long-term management of Technical Debt. It supports the estimation of principal and interest of TD items at source code level.
“FITTED, that can be used for the long-term management of Technical Debt. FITTED considers that interest accumulating during software evolution, can potentially outgrow the amount required for repaying the principal of TD. Therefore, it is critical for project managers to be able to estimate the point in time where the accumulated interest will be equal to the TD principal. This point in time is called the “breaking point” (TD-BP), in the sense that any benefit deriving from the decision to take on technical debt is being neutralized after that point, i.e. the cost becomes higher than the benefit.”
How this technology can be used?
“The instantiation of the framework is supported by a software tool which can extract data on: (a) the principal of technical debt, (b) the interest accumulated in every version of the system, and (c) the occurrence of the breaking point for every version of the system“.
In summary, the principal and interest on source code arctifacts should be estimated as follows:
- Principal: based on the computation of a widely used OSS platform, SonarQube;
- Interest: taking into account that in the common case, maintaining the optimum system requires less effort than maintaining the actual system. Then, it considers efforts, noted as Effort(optimum), and Effort(actual). Then difference between these two efforts represents the interest that is accumulate during this maintenance activity, i.e. the addition of feature;
- Breaking point: the ratio of the principal over the interest gives the number of versions after which the company will reach the breaking point.
Detailed instructions for adopting the FITTED framework for managing interest in TD can be found in Ampatzoglou, A., et al(2018).
Prerequisite for use it:
- Proprietary tools: a) Breaking Point Tool – an software tool which can extract data. It is part of FITTED framework; b) Percerons Client is a toolset2 to calculate metrics for every class contained in a .JAR file and produces a .CSV output.
- Third-party tools: SonarQube.
Supported TD type(s): Archicteture, Code, and Design.
Supported TDM activity (ies): Measurement
Source/Input Artifact(s): Source codes from versions a software product.
Project Context, Programming Language or Domain Application: FITTED intends to be independent of project context, programming language, and domain application. However, this framework was evaluated in projects from the mobile domain.
Evidence Type(s): Source(s): Case Study.
Reference:
Ampatzoglou, Areti, et al. “A framework for managing interest in technical debt: an industrial validation.” Proceedings of the 2018 International Conference on Technical Debt. 2018.