Current State of Practice - A Survey and Multiple Case-Study in 15 large organizations
Journal article, 2017
Large software companies need to support continuous and fast delivery of customer value both in the short and long term. However, this can be hindered if both evolution and maintenance of existing systems are hampered by Technical Debt. Although a lot of theoretical work on Technical Debt has been recently produced, its practical management lacks empirical studies. In this paper, we investigate the state of practice in several companies, to understand what is the cost of managing TD, what tools are used to track TD and how a tracking process is introduced in practice. We combined two phases: a survey, involving 226 respondents from 15 organizations, and an in-depth multiple case-study in three organizations, including 13 interviews and 79 Technical Debt issues. We selected the organizations where Technical Debt was better tracked, in order to distill best practices. We found that the development time dedicated to managing Technical Debt is substantial (an average of 25% of the overall development), but mostly not systematic: only a few participants (26%) use a tool, and only 7.2% methodically track Technical Debt. We found that the most used and effective tools are currently backlogs and static analyzers. By studying the approaches in the companies participating in the case-study, we report how companies start tracking Technical Debt and what are the initial benefits and challenges. Finally, we propose a Strategic Adoption Model for the introduction of tracking Technical Debt in software organizations.
software process improvement