Do Agile Teams Pay Down Technical Debt in Practice?

Technical debt is “a concept in programming that reflects the extra development work that arises when code that is easy to implement in the short run is used instead of applying the best overall solution”. Technical debt can be compared to monetary debt in that if it is  not repaid, it can accumulate ‘interest’, making it harder to implement changes later on.  Important questions to ask are “How common is it for agile teams to run into technical debt in practice?” and “When they do run into technical debt, are they paying it down?”

The following diagram summarizes responses to our question from our 2016 Agility at Scale study around technical complexity.  As you can see 84% of agile teams are working with legacy functionality and 51% with legacy data sources (so yes, the vast majority of teams are working in environments that are likely to have some form of technical debt).  More importantly, 38% of teams are actively paying down functional technical debt and 32% are paying down data technical debt (48% are paying down one or the other).

Technical Debt in Practice

 

Related Posts

 

 

7 thoughts on “Do Agile Teams Pay Down Technical Debt in Practice?

  1. Steven Gordon, PhD

    Do we know how many of these teams were in denial?

    Do we know how these percentages compare to those under other software development approaches?

    Reply
    1. Scott Ambler Post author

      The survey didn’t include any sort of “Are you in denial?” question so we don’t know. 😉

      The survey was only targeted at agile teams. Previous surveys have shown comparable rates for having to work with legacy systems for both agile and traditional teams, but those did not look into the rate of which traditional teams were paying tech debt. I suspect it would be lower than with agile teams but do not know for sure. Definitely something worth looking into at some point.

      Reply
  2. Steven Gordon, PhD

    The idea of a “Are you in denial?” question makes me chuckle. I hope you found it funny, too.

    The problem is if there is no cross-check against reality, the survey is only telling you the opinions of the people who chose to answer. I have worked with too many people who believe their team or organization is actually doing what they said they intend to do.

    Reply
    1. Scott Ambler

      The “are you in denial” question got me thinking. Very likely a way that I could get at that issue with other questions.

      Yes, the survey is only asking capturing opinions, which is why the types of questions that I ask specifically are written along the lines of “did this happen?” or “did you do this?” As fact based as possible, always giving people an option of “don’t know” or N/A so that they have a way out.

      Still requires people to answer honestly, which I think is happening the vast majority of the time.

      Reply
  3. SRIKANTH RAMANUJAM

    I agree Stephen, just like a tonne of organizations consider themselves Agile and not really are. I would even question whether most of the participants understand software craftsmanship and what constitutes technical debt 🙂

    Pinch of salt.

    Reply
    1. Scott Ambler Post author

      Sri, good point about understanding technical debt which is why I didn’t ask about it in those terms. If you look at the actual questions asked I focused on things people likely could understand, such as whether they’re working with existing systems or data sources and whether their team is fixing them when they do run into quality problems.

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *