Agile Methodologies Aren’t Calvinball…

There are a lot of people who seem to think that agile project management means there aren’t any rules, and you simply do whatever you feel like to get software deployed. My best guess is that attitude comes from reading the agile manifesto and the twelve principles of agile without actually understanding what they’re saying.

It seems that people are over-focusing on phrases like “maximizing the amount of work not done” and “working software is the primary measure of progress.”  By cherry picking phrases and taking them completely out of context, agile can be twisted into something dark and evil.

I’ve listened to people justify horrible software practices by saying that they’re “more agile” because it helps them deploy software more quickly.  Never mind that what they’re delivering is riddled with bugs and not remotely what the users needed.  “No, I couldn’t actually test the software.  It had to be ready for the sprint review!”

When I hear things like that, I’m reminded of my favorite comic strip growing up: Calvin and Hobbes by Bill Watterson.  From time to time Calvin and his best friend, and stuffed tiger, Hobbes would play a game of their own creation called Calvinball.  In Calvinball there are two rules.

A) The rules are made up as you play, and new rules can be decreed at any time.
2) Calvinball cannot be played the same way twice.
(There also seems to be a rule that you have to wear a mask, but that should just be obvious)

So from now on, when I hear people describing their agile implementations and explaining why testing is a waste of time, customer interaction is stupid because they know what the customers need better than the customers do themselves, or that iterations are for wussies, I’m going to refer to them as Calvinball agile implementations.

Now we just need to get them to wear the masks.

2 thoughts on “Agile Methodologies Aren’t Calvinball…

    1. I agree that the idea that there is no documentation is pretty prevalent. Unfortunately, I’ve seen groups around here who believe that “being agile” means doing whatever you want to in order to push as much software out as quickly as possible. That includes not talking to the customer, not testing, not documenting, etc. In less severe forms, I’ve talked to people about implementing things like TDD, code reviews or stand ups. The response was “no, we can’t do that stuff, it’ll make us less agile.”

      Like

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