Tuesday, November 27, 2007

What is Agile Development?

I'm often asked "what is Agile Development?" I've never really been sure how to answer that. Some people say "well, it is the 4 values defined by the Agile Manifesto." To me, that's too vague. The four values are fairly philosophical in nature and pretty far from business benefits or in the trenches implementation. I tend to start any discussion of Agile by talking about the benefits. It seems to me that these benefits are fairly widely agreed upon as the following.

In comparison to "traditional development", Agile provides the benefits of:

- More flexibility/options
- Higher ROI
- Faster realization of that ROI
- Higher quality
- Higher visibility

Recently it occurred to me that this also serves as a good definition for Agile. That is, Agile development is that which provides the above benefits. I like this definition because it doesn't require a discussion of specific practices, yet it is also straightforward and concrete.

1 comment:

Anonymous said...

I like this definition of Agile Development. ;-p

Recently it occurred to me that this also serves as a good definition for Agile. That is, Agile development is that which provides the above benefits.

C'mon Damon.. with that level of specificity one could equally claim those as the benefits of waterfall development.

I'm still searching for a non-mystical description of Agile development. I've worked in a number of shops which have claimed to be agile. The common definition seems to be "no need for specs" and "use cruisecontrol."

Agile has got to mean more than that.

... still waiting to drink the cool-aid.