Do practitioners intentionally self-fix Technical Debt and why?

by   Jie Tan, et al.

The impact of Technical Debt (TD) on software maintenance and evolution is of great concern, but recent evidence shows that a considerable amount of TD is fixed by the same developers who introduced it; this is termed self-fixed TD. This characteristic of TD management can potentially impact team dynamics and practices in managing TD. However, the initial evidence is based on low-level source code analysis; this casts some doubt whether practitioners repay their own debt intentionally and under what circumstances. To address this gap, we conducted an online survey on 17 well-known Java and Python open-source software communities to investigate practitioners' intent and rationale for self-fixing technical debt. We also investigate the relationship between human-related factors (e.g., experience) and self-fixing. The results, derived from the responses of 181 participants, show that a majority addresses their own debt consciously and often. Moreover, those with a higher level of involvement (e.g., more experience in the project and number of contributions) tend to be more concerned about self-fixing TD. We also learned that the sense of responsibility is a common self-fixing driver and that decisions to fix TD are not superficial but consider balancing costs and benefits, among other factors. The findings in this paper can lead to improving TD prevention and management strategies.



There are no comments yet.


page 1

page 2

page 3

page 4


Does it matter who pays back Technical Debt? An empirical study of self-fixed TD

Context: Technical Debt (TD) can be paid back either by those that incur...

Understanding Architecture Erosion: The Practitioners' Perceptive

As software systems evolve, their architecture is meant to adapt accordi...

The Impact of Traceability on Software Maintenance and Evolution: A Mapping Study

Software traceability plays a critical role in software maintenance and ...

Relationships between Software Architecture and Source Code in Practice: An Exploratory Survey and Interview

Context: Software Architecture (SA) and Source Code (SC) are two intertw...

Preventing Technical Debt by Technical Debt Aware Project Management

Technical Debts (TD) are problems of the internal software quality. They...

Better Technical Debt Detection via SURVEYing

Software analytics can be improved by surveying; i.e. rechecking and (po...

Preventing technical debt with the TAP framework for Technical Debt Aware Management

Context. Technical Debt (TD) is a metaphor for technical problems that a...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.