Agile – Are bugs part of technical debt

agiletechnical-debt

Our Scrum Master keeps referring to bugs as technical debt. Is he right, are bugs considered to be technical debt in the world of Agile?

Best Answer

I think the answer here is fairly simple - the key feature of technical debt is that its something we incur by choice.

We choose to make architectural, design or implementation decisions that we expect will cause us issues later in order to achieve specific objectives sooner.

A bug is not something we choose to have in our code - so de-facto its not technical debt.

Of course one can make all kinds of interesting (and possibly valid) arguments about choices made post discovery but fundamentally (and particularly in the context of the question) no, bugs are not technical debt - sounds more like abuse of buzzword bingo to me.


As a postscript - I don't agree with the assertion that its a given that technical debt will lead to bugs in and of itself as that makes far to many assumptions about the nature of the choices made. For example you can have well written, well structured, test covered code that still makes - say - architectural compromises for early delivery. Similarly you could choose not automate your deployment processes which won't lead to bugs but will probably lead to a lot of stress and pain. Of course if the debt is that you've written code that's not SOLID (or whatever) then yes... but that's by no means always the case.