Agile Event Session

Technical Debt Is A Systemic Problem, Not A Personal Failing

This video content is for Agile Alliance members only

If you’re already an active member, please log in now.

To view this content, and gain access to many more valuable resources, conference discounts, and invitations to exclusive networking and learning events, please consider becoming an Agile Alliance member.

Abstract/Description

You often hear technical debt described as a personal failing. Why didn’t you code with greater rigor? By creating technical debt, how could you have made life harder on people working in the code? More often than not, technical debt is the result of bigger, systemic problems.

Chances are, you’re not a bad person. You didn’t want this to happen. It’s the system, not you, that’s chiefly responsible.

In this talk, we will present some of the conclusions from the Agile Alliance’s technical debt working group, which has looked into the systemic causes and consequences of technical debt. While marginal amounts of technical debt will always accrue, that does not explain why substantial technical debt is a widespread phenomenon. The organization in which software development teams work is the much bigger culprit. Many systemic causes, such as deadline pressures, under-investment in skills, and even the unwillingness to measure technical debt, conspire to create a growing burden on software professionals, who would otherwise choose not to create this problem if given the opportunity.

Just as technical debt has systemic causes, the real cost of technical debt lies at the system level. The increasing drag on software innovation has effects not just on individual and team productivity, but on the software value stream, the portfolio, and the organization as a whole. Sometimes, the cost is obvious, such as the valuation of a start-up company’s code; other times, the consequences are far more subtle and insidious.

During this session, we will use the language and methods of systems theory to better come to grips with the causes and consequences of technical debt. Don’t worry if systems thinking is unfamiliar — we will cover the basics during the talk. We will also do an exercise in which you will create a simple systems model of your own challenges with technical debt, and discuss how this model should help you shape a plan of action for dealing with technical debt.

Ultimately, the goal of this session is to give you the tools to better deal with technical debt. Rather than blaming individual developers, you will be able to show the systemic sources of technical debt, and assess the relative value of addressing each of them. Rather than depending on technical measures to convey the costs of technical debt, we will help you to put the costs of technical debt in stark business terms.

Additional Resources

Add to Bookmarks Remove Bookmark
Add to Bookmarks Remove from Bookmarks
Add to Bookmarks Remove from Bookmarks

Speaker(s) may be willing to present this session at local group meetings and other events.

Agile2017
Video
Learning

More Agile Event Session Videos

Strategic Domain-Driven Design
If you’re a software developer or architect who wants to play a more influential role in ensuring your software systems are optimised to support business goals, then you need to learn about the benefits and techniques of strategic domain-driven desig…
TDD – It’s About More Than Just the Tests
Test driven development is all the rage. But why do people choose to write their code in a test driven fashion? It's so their code will have tests, right? Ending up with tested code is a nice benefit of test driven development (TDD), but it's not the…
Strategic Domain-Driven Design
If you’re a software developer or architect who wants to play a more influential role in ensuring your software systems are optimised to support business goals, then you need to learn about the benefits and techniques of strategic domain-driven desig…

Have a comment? Join the conversation

Discover the many benefits of membership

Your membership enables Agile Alliance to offer a wealth of first-rate resources, present renowned international events, support global community groups, and more — all geared toward helping Agile practitioners reach their full potential and deliver innovative, Agile solutions.

Not yet a member? Sign up now