The agile development method is not just a buzzword anymore and one finds more and more organizations that are starting to reap the benefits of it. Interestingly, the methodology makes me reminisce fondly about my development times with Smalltalk, the ultimate agile development environment.

Nevertheless, I know firsthand of happy and not so happy outcomes. Interestingly, in both situations, the cards were stacked in favor of the involved:

  • There was a product owner available at all times
  • There were subject matter experts available
  • The teams (application, services, business rules, data modeling, infrastructure) where working as one team and pretty much good friends
  • The tools were available and the methodology was followed.

Yet, one big difference was that the successful project had the foresight to develop their architecture and infrastructure in a separate prototyping cycle with more "waterfall" like planning up front upon which to implement customer wishes, while the less successful team was building that infrastructure up during the agile cycles.

Each cycle was essentially 11 business days. First day was story acceptance, planning and voting, nine and a half days of mad work, and a half day of "Show and Tell".

The less successful project is still paying for the ad-hack created architecture and infrastructure.

In agile development efforts, you need to understand when to pay the piper. It is either now or later, but later always comes with compound interest expense.