When I first started exploring and experimenting with Agile methodology, I was doubtful about the perceived benefits and wondered whether it was just a fad that would die down in time. Only after I saw how useful it was did I embrace it more and more. Yet I’m not a zealot for or against; I simply think that agile, design patterns, xp, oop, etc are all tools and processes that are available to programmers. It is up to the programmer to analyze the situation and the problem, apply the right practice and technique in order to get the job done on time, with high quality, meeting expectations.
Lately, I’ve been thinking a lot about software processes and techniques, and I finally realized why it took me a while to appreciate agile methodologies. Agile processes sound funny.
Let me give you an example. Let’s say that you were sick and went to your doctor, and the doctor says to you, “well, since I’m not sure that I will be able to do the diagnostic of your illness myself, I will do some pair diagnosis with my colleague here. Ignore the charts; they are to monitor our scrum process to make sure that we don’t miss anything.”
Or let’s say that you went to an architect John because you wanted to build a house. Let’s say that you were reviewing the architecture design with John and a few of his architects, and one of them says, “hmm, I’m not sure John, it looks like there are design smells that should be removed. Look at the entry way: it smells like DoorWayIsNotBigEnoughForClientNeeds. Did you try the pattern ApplyFrenchDoorsWhenClientHasMoney instead?”
Or let’s say that you went to a mechanic, and he says “hmm, I can’t tell exactly what is wrong with your car, but I’m doing to do red-green-reapply to see if I can fix your brakes. But first, I need to do some story-driven-analysis, so please describe to me in short stories how you use your car on a daily basis.”
Maybe I’m being a bit facetious, but after talking to a couple of other folks, I think I’m not alone in thinking this. I think the Agile process is valuable, but I wouldn’t mind at all if they ditched the names and went with something more … appropriate.