Agile Doesn’t Fix Anything
Hey… are you any of you guys out there contemplating going agile? Be warned. Agile doesn’t fix anything. Seriously… if you have problems with your development organization, making the switch to agile WILL NOT fix anything.
Agile will actually do the opposite of fixing things… it will make them more broken. Teams with poor communication will communicate poorly more often. Developers that don’t code well will break the build more often. Defects will be injected more frequently and quality issues will be everywhere.
While waterfall lets these problems hide, agile has them smack you right in the face.
Waterfall teams get a period of quiet because most everything early on is documentware. We don’t actually have to deliver any working software. Even once we start building code, the heat doesn’t really turn up until we are ready to integrate, and that could take months. Not until we hand everything over to QA, and find out the product doesn’t work, does the crap really hit the fan.
We get to pretend nothing is wrong until it is too late to do anything about it.
Agile on the other hand is noisy and chaotic… it will bring all our problems to the surface early. It will seem like agile is causing the problems when it is merely pointing them out. Agile will force our reality upon us in a way that is going to get pretty uncomfortable. As project leaders, development managers, and especially team members… we have to be prepared to do the hard work ahead of us.
The easy part of agile is holding a sprint planning meeting and doing a daily scrum. Writing requirements as user stories is fine, but what happens at the end of our first sprint when none of them are actually done? What about when we get to the end of sprint three and our automated builds are still not working? What happens a few sprints later when QA still can’t test anything?
These might have been some of the same problems that you thought agile was going to fix. Guess what, those problems are still there. The value is not that agile fixes your problems, but that you get to find out about them early… while you still have time to do something about them. It is still up to you to fix them.
So the title of this post… while provocative (sorry about that… two in one month) is true. Agile isn’t going to fix anything. Agile WILL put you in a great position to identity those things that needed to be fixed anyway. Agile doesn’t let anything hide, it forces us to get real about where we are vs. where we want to be. If you want to be successful, your organization will still have to deal with the broken stuff.
Our goal is to build great product… better, faster, and more reliably than our competition. To do that, we have to relentlessly pursue excellence and we must understand the gap between our current reality and where we need to be. While agile isn’t going to fix anything for us, it can provide a way to see that gap and position us to do something about it.
Comments (7)
Jef Claes
Very nice article.
Mike Cottmeyer
Thanks Jef for the kind feedback.
Lee Winder
Absolutely fantastic post.
I think this breaks a few of the agile myths that make people dive headlong into the process without preparing themselves for the fallout.
Mike Cottmeyer
Thanks Lee… how could I argue with such an insightful opinion of my work ;-)
This year I am inclined to name all my posts things like “watch out”, “agile is hard”, “be ready for the unexpected” and stuff like that.
I don’t believe that people really anticpate the profound organizational change that agile will bring nor do I feel most will anticipate the level of exposure, and risk, agile will uncover.
It is much more confortable under the rock, hiding ;-)
Seriously though… I appreciate the kind words.
Anonymous
These are all opinion and insights but where is the meat of the argument? Where are the stats that prove the argument? Not that I want to be critical, I just want to know :)
Mike Cottmeyer
Dear Anonymous…
That is kind of the point of a blog… at least my blog. It is one big, ongoing opinion piece.
I interact with lots of companies in my role at VersionOne and get to spend lots of time with folks trying to do agile.
My intent here is to share my experience not my research.
Optimal Optimus
This is a great post. Keep it up.