This post is from the CollabNet VersionOne blog and has not been updated since the original publish date.
The Chickens and the Pigskin
Ah, October… autumn is here. It’s that beautiful time of year when the air is crisp, the leaves turn and of course College Football is in full swing. For my family, it begins a series of pilgrimages back to my alma mater. We go back every home game to watch the boys beat up some other team unworthy of being on the same field as us.
On a recent trip back, my wife and I were discussing our team and how we were looking forward to watching some of the new recruits come in and contribute. I was particularly excited about a new freshman Running Back who was supposed to be the best we’ve seen in 20 years. She wisely pointed out that most incoming freshman would be used sparingly on offense or defense in their skill position. Mostly, they would contribute on special teams like kickoff returns.
And that’s when it hit me. The special teams unit is the ultimate cross-functional agile team! Yes, it has its specialists – the kicker, long-snapper, etc. – but when they need to get the work done, they bring in people from other units to help fill those roles. So while our outside Linebacker may be used to crushing Running Backs while on defense, he can step in and help with kickoff coverage as well.
Well, this certainly got me going. And I took it further and tried to apply more agile development rules to the college football world. It was at this time that my wife conveniently picked up her book and began to read again.
Here is what I came up with:
A football team’s playbook is its backlog. As they game-plan for the next opponent, the plays with the highest chance of success (value) get moved up to the top so they can practice them.
I initially had some trouble coming up with how iterations would be represented. But then I realized that each play could function as one. The offense commits to a play that was decided on in the Iteration Planning meeting (huddle), and begins to execute. If the play is successful, they get their Story Points (yardage) and begin the planning again.
Here’s where the beauty of agile sets in. If the Quarterback or the Coach sees something from the competition that might prevent a play from being successful, they can call an audible or a timeout to use a more successful play (higher valued item). They’ve essentially just re-prioritized their backlog as the needs fit. Another way of saying this is that the scope of their project changed because of what the competition was doing. Agile allows for this by letting the Coach choose a new play.
As the team completes iterations and more Story Points are earned (yardage gained), you get closer and closer to the end zone for a chance at a touchdown or field goal (a successful release!) The customers (crowd) are extremely happy when this happens.
Of course football games, as with software development, don’t always go as planned. You get impediments that prevent successful iterations. Injuries, weather, turnovers and even flag-happy referees all contribute to things that could derail the team. It’s then up to the team to identify these issues and overcome them.
At this point, my mind was going a mile a minute and I couldn’t wait to keep going with my agile analogy. I had ideas about half-time speeches being Retrospectives and of course, cheerleaders! I was sure the cheerleaders could fit in somewhere. However, we eventually reached our destination and sadly I had to stop.
So, I’m eager to hear your comments and see how we can fit more agile development processes into football. Or any sport for that matter. Have fun with it.
Happy October and Go Team!!