Kurt's Blog

November 16, 2008

Circling the drain?

Filed under: Software Development — Tags: , , , — Kurt Häusler @ 9:29 pm

I was just reading the XP mailing list and followed a link to a debate in the Agile blogosphere that seems to be a sort of XP vs Scrum type thing. Basically the popularity of Scrum means that people are adopting Scrum and considering themselves Agile without engaging in the appropriate development practices that XP provides. Some claim the direction of Agile needs to change, to put more emphasis on development practices and less on Scrum, or its the end of Agile.

I don’t intend to join in this debate, as I think both sides are wrong, but I will take the opportunity to write how I see it.

The word “direction” is interesting. As if there is something in the distance called Agile thats pulling us towards it. I guess thats how most business processes work. Someone has an idea, and prescribes it in the form of a concrete model that is supposed to be emulated. In such cases this concrete model looks indeed like an endpoint, towards which one finds the direction to be followed.

Agile is, to me at least, a bit different. Its more of a decidedly non-concrete set of principles and values. They don’t define an end point at all, hence no fixed, single direction. They define a starting point, from which more concrete practices and process are pushed out, or emerged. Once a team or an individual develops those principles and values as part of their culture, they exhibit certain behaviors that are influenced by those principles and values. They may or may not end up looking more or less like XP or Scrum. Different interpretations of those Agile principles and values, as well as principles and values outside of Agile, as well as subjective circumstances will mean that whatever emerges, is likely to emerge in as many different directions as individuals and teams that start from those principles and values. XP and Scrum are just head-starts along pretty good directions. I would suggest that a team that adopts Agile practices and processes only for planning while neglecting the development aspects or vice versa has made the mistake of neglecting the principles and values and seeing (some particular sellable concrete package of) Agile practices as a destination to move towards rather than a set of principles and values to guide the emerging of behavior. Hey at least they are a step above those who think Agile and Scrum are TFS templates though!

So rather than watching Agile circle the drains of concrete Scrum (and XP) practices, let it pour out from the values tap of the manifesto and the principles.

Forget about selling Scrum practices (or XP practices) as “directions” for Agile. Sell the principles and values and let the practices emerge, in all sorts of directions!


1 Comment »

  1. I found your point of view interesting because it quickly pointed out where my perception of agile differs from yours (and maybe most other people’s). I can tell from your entry that you view “Agile” as being the starting point of the process.

    I actually see “Agile” as the end point. And while you say that “Agile” doesn’t define such an end point, I actually disagree. I use the principles as the *test* for my processes. They show me if I am “Agile”. Sure, many practices and processes may pass the tests, so I agree that there is no set direction.

    But I think it’s an important distinction because there is a difference between “agreeing in principle” and actually doing something. For instance, do you actually welcome requirement changes? If not, then you must change your processes until requirement changes are desirable.

    Too often we see people using the principles as starting points, only to fail to arrive. “We agree in principle to the principles” they say, but “it’s not feasible right now”. Those people would say they are “Agile”, but I would disagree. That’s why I think the principles are an end point.

    Something like XP is a starting point. If you say, “I want to be ‘Agile'”, then how are you going to do it? Well, you can start with XP. Then test yourself. If you don’t pass the agile principles, change stuff. You could also start with Scrum. It depends on your team, I think. But neither of these is the end point, IMHO. They just get you started.

    Comment by Mike Charlton — November 17, 2008 @ 2:37 pm

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Blog at WordPress.com.

%d bloggers like this: