Monday, March 16, 2009

Waterfall versus Agile

At the recent Product Management PCamp 2009 event, held over the weekend at the Yahoo Campus, there was a real focus on Agile.  One of the best sessions I attended was "Agile 101" by Chris Sims of the Technical Management Institute.

I have seen far too many large waterfall projects fail - people spend years defining what the market needs up front, but finally what they deliver comprehensively misses the mark (NetWare 4 or Windows Vista anyone?).

Even in smaller companies, the amount of churn and change control meetings to get to a released product is unpleasant and combative - there has to be a better way.  And does anyone really think in our current economy that the market needs are going to remain static for long periods of time?

Luckily there is a better way - Agile Development - this was described at the conference as "building a mountain 1000 feet at a time".  To quote from Chris's handout:

"Agile development employs the same steps as the waterfall method: requirements gathering, design, coding and testing.  But instead of completing each step before moving onto the next, an agile team does a little bit of requirements gathering, a little bit of design, coding and testing, and delivers a little bit of value to a customer.  They then do it all over again... and again, refining and tweaking their process as they go..

Agile is actually a fairly disciplined approach to software development.  It is agile, not ad hoc."

The biggest takeaway were the four core values of Agile versus Waterfall
  1. Focus on individuals and interactions (over process and tools)
  2. Working software (over comprehensive documentation)
  3. Customer and stakeholder collaboration (over contract negotiation)
  4. Responding to change (instead of following a plan)
There were some great sessions on implementing Agile within Enterprise organizations, and one of the best was a case study from Borland.  The take-away here was that it doesn't need to be an "all or nothing" implementation, and that a lot of preparation, executive sponsorship, training, and planning is required for a successful implementation.

But more on that later...

No comments:

Post a Comment