Oh boy, does this sound familiar.
James Shore, consultant, lays down just how bad it gets when you ‘go Agile’ and don’t do so correctly: The Decline and Fall of Agile:
Without continuous, incremental design, Scrum teams quickly dig themselves a gigantic hole of technical debt. Two or three years later, I get a call–or one of my colleagues does. “Changes take too long and cost too much!” I hear. “Teach us about test-driven development, or pairing, or acceptance testing!” By that time, fixing the real problems requires paying back a lot of technical debt, and could take years.
What frustrates me the most is that this situation is entirely avoidable.
…There are a lot of teams right now failing with Agile. These teams are working in short cycles. The increased planning frequency has given them more control over their work and they’re discovering and fixing some problems. They feel good, and they really are seeing more success than they were before.
But they aren’t working in shared workspaces or emphasizing high-bandwidth communication. They’re don’t have on-site customers or work in cross-functional teams. They don’t even finish all of their stories by the end of each Sprint, let alone deliver releasable software, and they certainly don’t use good engineering practices.
These teams say they’re Agile, but they’re just planning (and replanning) frequently. Short cycles and the ability to re-plan are the benefit that Agile gives you. It’s the reward, not the method. These psuedo-Agile teams are having dessert every night and skipping their vegetables. By leaving out all the other stuff–the stuff that’s really Agile–they’re setting themselves up for rotten teeth, an oversized waistline, and ultimate failure. They feel good now, but it won’t last.
Amen!
Hi Livia,
Just posted a link to Jon Moore’s piece on technical debt:
http://codeartisan.blogspot.com/2008/08/cracking-down-on-technical-debt.html