What is Technical Debt? with Michael Cooper

Published: July 1, 2022, noon

This week, Dan Neumann is joined by Agile\u2019s Thought Chief Architect, Michael Cooper to explore the topic of Technical Debt.

\xa0

In this episode, Dan and Mike share how Technical Debt has become a dirty term among technical and non-technical people, where it can be considered to be a waste of time and money. Mike is here to demystify Tech Debt and talk about the necessary steps to take when encountering it, like finding its root cause and advancing a strategy to address it.

\xa0

Key Takeaways

  • \u25cf What can be some indications that technical debt is present?

    • \u25cb The first sign is that things are not going right, people can be unhappy about some aspect of the platform, system, or project.

    • \u25cb One indicator is that the velocity is slowing down.

    • \u25cb When decisions are procrastinated we accumulate tech debt... is this a deliberate choice? Not really, but we still refuse to make decisions to address it.

    • \u25cb Stress is an indicator of Tech Debt.

    • \u25cb The passage of time will create Tech Debt.

    • \u25cb When defect rates get to a point that they are no longer tolerable or acceptable, you have to consider the decisions that were put off in order to reach that state.

  • \u25cf How to avoid technical debt:

    • \u25cb Automated Testing

    • \u25cb Unit Tests for capturing the developer\u2019s intent

    • \u25cb Static Code Analysis tools (such as SonarQube) for generating metrics about code complexity.

  • \u25cf Most code in the world has high-tech debt. However, it is not an issue because people don\u2019t need to change it.

    • \u25cb Software becomes \u201chard\u201d when it gets enough tech debt.

    • \u25cb The most used strategy is to do nothing when encountering tech debt, and if you are not making changes to the code, it is an acceptable and reasonable approach.

    • \u25cb The highest reach approach is trying to change and rewrite the entire codebase. You are likely to lose the functionality that you originally had.

    • \u25cb One way of approaching tech debt is to make slow changes only when you hit that piece of code again.

  • \xa0

  • Mentioned in this Episode:

  • What is technical debt? By Chris Cairns and Sarah Allen

  • Applied Software Measurement: Assuring Productivity and Quality, by Capers Jones.

  • Agile Estimating and Planning, by Mike Cohn

  • \xa0

  • Want to Learn More or Get in Touch?

  • Visit the website and catch up with all the episodes on AgileThought.com!

  • Email your thoughts or suggestions to Podcast@AgileThought.com or Tweet @AgileThought using #AgileThoughtPodcast!