Cost/Benefit-based Technical Debt Management

Implementing a payback strategy to reduce the technical debt (TD) is a must for every software organization, as TD exists in most software systems. If we do not cautiously manage the debt or have no strategy to pay it back, the system finally may go to the “bankruptcy” phase, i.e., the software is unmaintainable and the maintenance cost will increase continuously. In general, refactoring is one of the strategies to pay it back. Usually, project managers are always juggling on the decision to either implement new features or to make improvements in a release cycle as it is always complicated to decide, which refactoring task should be done first or could be postponed.

To this end we propose an approach called Cost-Benefit based Technical Debt Management (CoBeTDM). It aims to help business and technical people to decide which refactoring/maintenance should be implemented in a short-term or long-term. At first, TD items are identified on detected code and architecture smells using specified metrics. Then the identified TD items are quantified and prioritized applying a Cost-Benefit analysis taking also into consideration the risks associated to respective refactoring tasks. Based on the Cost-Benefit analysis Return on Investment values can be determined which can be used to decide when to implement which refactoring in order to pay back the TD step by step.

Project information

Researchers:
Project start & end:
until 2018

Cooperation partner