This post originated from an RSS feed registered with Agile Buzz
by Greg Vaughn.
Original Post: XP or Agile
Feed Title: Potential Differences
Feed URL: http://gigavolt.net/blog/development/index.rss
Feed Description: Greg Vaughn on Agile methodologies, Java, OS X, whatever piques my interest!
Similarly, people attempt to discount XP by saying “XP is crucially dependent on the myth of the on-site acceptance-test-writing customer”
in a much more comprehensive blog entry, but I’m not ready to attempt to discuss the entire issue (my philosophy of science class was a long time ago). This particular point stood out to me, so I’m going to take things off in a bit of a tangent.
I’m one of those people Brian is talking about, but I wouldn’t put it quite as pejoratively. I was a regular reader of Ward Cunningham’s original c2 wiki from about ‘98 - ‘00 when much of how to explain XP was being hashed out. The goals of XP are very theoretically pure — to create high quality software as efficiently as possible, and it assumes a high level of control of the environment, both physically and politically. It really is critically dependent on an “on-site acceptance-test-writing customer”. That’s great for an initial theoretical model, but it is not practical in most development situations.
Additionally, the personalities of various founders of XP were such that they presented things in a very absolute sense and were unwilling to make compromises. If you’re not doing all the core XP practices, then you’re not doing XP.
I’m so glad that the Agile movement came along. It’s dependent on XP as an initial theoretical model, but Agility is where the reconciliation with those messy real world details happen in order to come up with practical practices in those cases where we don’t have complete control over the environment (i.e. most cases).
I see strong parallels to the uncompromising moral stance of the Free Software movement, and the Open Source movement created in response to it that has grown larger and subsumed Free Software to the extent that it can be considered a subcategory of Open Source precisely because Open Source focuses more on practicality.
Now that I’ve gone through the exercise of writing my thoughts down, I can actually tie it back into the larger point of Brian’s blog entry. The Agile world is where the reconciliation with things like Maxwell’s equations is happening, not under the XP umbrella. In my opinion XP is a shark that has stopped moving (to use Brian’s analogy). Please correct me if I’m wrong. After I first realized the problem of XP’s uncompromising purity, my attention has been focused on those associating themselves with the Agile movement.
I’ve emailed Brian a bit about how to persuade people to adopt an Agile testing stance before he made that blog entry. In this context, an uncompromising adherence to purity is a deterrence to getting the “old guard” to change their minds.