The Recipe for Tasty Agile Soup

An entry about agile | scrum Publication date 17. November 2008 10:08

Over the weekend, there’s been some discussion on the interweb about why Agile is “failing”. James Shore (Agile consultant and author of the book Agile Development), wrote a post on his blog about the perceived Decline and Fall of Agile:

“…many people who call me already have Agile in place (they say), but they're struggling. They're having trouble meeting their iteration commitments, they're experiencing a lot of technical debt, and testing takes too long.”

He goes on to describes why these teams are struggling (emphasis mine):

“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.

The big selling point of Agile has always been that it will let you, well, be agile. Employ an Agile process (like Scrum), and you’ll have a happy customer who will be allowed to influence the project and change the direction it is taking along the way. As James writes, however, this is the result of employing an Agile process, which implies that there is some input required to produce this result. In a follow up succinctly titled Dirty Rotten ScrumDrels, Uncle Bob Martin puts it in layman's terms, explaining that “it is neither the purpose of scrum nor of CSMs to make engineers out of us, or to instill the disciplines of craftsmanship within us. That’s our job!”

Go figure – developing great software requires competent, dedicated engineers. StructureMap author Jeremy D. Miller follows upwith the recipe you and I need to follow in order to cook up a tasty soup of Agile:

“You wanna work adaptively instead of the ol' fashioned plan driven method?  Fine, but you've got to make that adaptability safe.  You need rapid feedback cycles to know when you're getting off the rails (customer demos, TDD, Continuous Integration, automated acceptance tests, static code analysis or some sort of equivalent).  You need to take steps that make continuous design methods safe and effective (simple design, a constant attention to design fundamentals like the SOLID principles, and an intolerance for technical debt).  And your team needs to be retrospective about its work to make adaptions as they become necessary.”

I’ve written about this before; you cannot reasonably expect to successfully employ an Agile process if you aren’t writing Agile code.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Comments

Powered by BlogEngine.NET 1.4.5.0

Welcome!

My name is Fredrik Kalseth, and this is my blog - thanks for visiting! I am fortunate enough to work with what I love for a living, and this blog is essentially the biproduct of that.

I work as a senior consultant for Capgemini, and am also an active participant in the Norwegian .NET community, as an avid attendee but also as a speaker (most recently at NNUG and MSDN Live).

As a developer, I have a wide circle of interest. My primary passion is for agile, test-driven development, with focus on best practices and clean code. That said, I also love to work on the frontend, especially with web development.

On Twitter? My handle is fkalseth. On LinkedIn? I`m there too.

NDC 2010

The conference to attend this summer happens June 16th-18th in Oslo, Norway. Are you going? Be sure to catch my talk on AOP while you're there!

 

Disclaimer

This is a personal blog; any opinions expressed here are my own and do not necessarily reflect those of my employer. All content herein is my own original creation, and as such is protected by copyright law. Unless otherwise stated, all source code posted on this blog is freely usable under the Microsoft Permissive License.

What Readers Talk About

Comment RSS