#agile road trip

As I was driving home last night from work, I thought of another analogy on why the Agile process works so well.

Trip to California

I thought back to my trip to California and how I went about planning and taking the trip. I planned the trip really at four levels:

1) Starting and Ending Points – Where was I starting from and where was I trying to get to?

2) Route – What major roads would I take?

3) Stops – Where would I stop along the way for rest, meals and recharging?

4) Detailed Directions – How to I get to routes, stops, and the end point.

Thoughts

When I thought about how I planned and took the trip, I confirmed the end point first. I chose the end point based upon what I wanted from a relaxing trip. Next I reviewed the possible routes and confirmed the routes very early on. These routes were chosen based upon some different criteria or requirements; speed, scenery, landmarks, and others. When it came to the stops, I did something interesting. I planned out the potential stops based on the distance travelled but only reserved the stops for the next day. (and I really only reserved meal stops two hours in advance) I figured that things may change on the trip and I may make better or worse time. No sense booking hotel rooms too early. Last responsible moment right? And then finally for the detailed directions, I again planned the potential directions at a high level, but only confirmed detailed directions for the next day. No sense about worrying when to turn left in Palm Desert when I am in Idaho right?

Looking back, I see that the road trip models an Agile project very well:

1) Starting and Ending Points – Business Value – what am I trying to achieve?

2) Route – Solution Architecture

3) Stops – Iterations/Features

4) Detailed Directions – User Stories

Conclusion

I can’t think of taking a trip any other way? Why would I spend time detailing and confirming the directions to a pancake house in Boise when I’m at my front door? It also saved a huge amount of rework as I consulted local highway authorities at the start of each day and avoided roads I had planned to take. Since I was travelling in iterations, there were no hotels rooms and reservations to cancel.

And then I made one really neat observation. At the end of every day I reviewed the map and route I travelled as compared to what I planned. I guess these were my first retrospectives. Once this was complete I planned my next day’s travel.

I really like this analogy and I think I’ll continue using it. ๐Ÿ™‚

One thought on “#agile road trip

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