Agile. It rocks! To me unlike many other people in the software industry Agile is not just a synonym for “flexible”. You can do Waterfall, but still be flexible. If that works for you: Great. If you are chaotic and still deliver successful projects – great! But none of this is Agile (and every time either of these approaches is called Agile it stabs me through the heart).
The Agile trade-off
The Waterfall methodology means lots of upfront organization. Gather requirements, refine requirements, verify requirements, prepare lots of documentation that nobody will ever read a second time etc. It means planning and estimated times to finish, which are anyway never met.
Chaos means getting things done. At first at least. Starting without a plan, without knowing exactly what to do, but at least we’re working, right? In the end you work but you’ll never realize you’re heading in the wrong direction. Until it’s too late. And hey: You can still steer the project by heavy command and control micromanagement once it got off track! Chaos is obviously no project management methodology at all (nonetheless I assume it’s heavily used).
Using Agile as your project management methodology means to choosing a compromise between Waterfall and Chaos. It means doing the necessary minimum of documentation and planning and then executing the first step(s). It then means doing the necessary minimum of documentation and planning and then executing the next step! All of this happens in a controlled manner. There are no ad-hoc meetings (like in chaos and micromanagement). But there are no 500 pages requirements specification to “read” before development can start either.
Agile and me
I started working as a Project Manager in a chaotic environment right after finishing my diploma thesis. We tried to transform this chaos into an Agile way of working and for two years we failed. Yes, we did our stand ups (Daily Scrums) and planning meetings and reviews and retrospectives, but we never fixed the root cause for agile not working for us.
Then we did fix it: We created standing, widely cross-functional teams and suddenly things improved. Everybody became more involved, more engaged, more productive. Projects had still been delayed. But we were able to plan for these delays. We actively decided for and against them.
Before we went Agile the question was:
When can we finally launch this feature???
After the transition the question was:
Shall we do one more sprint and add this sub-feature?
(To a product that had already been released on time.)
Now as I consider myself an Agile evangelist, from time to time I will share my experience on this website. I know how to explain it, how to get started and how to excel!
If you’re currently undergoing an Agile transition, if you plan on doing it or have already done it: Please share your experience here. If you have questions: Please ask and I will answer them to my best knowledge. Any other feedback is also very welcome.
If you are not planning on going Agile or are unsure whether to do it: Do it!