September 15, 2006

...Learn TDD with Codemanship

Good Governance

An interesting variation on the basic Agile Governance game is to see what happens when we scale it up. In the basic game format, teams are made up of three roles: the planner (who decides the route around the game grid), the executer (who throws the dice), and the tracker (who keeps tabs on the dice throws and the score).

Each team has 100 dice throws to execute their plan. In a small variation, they are allowed to plan and execute the game 20 throws at a time. They are also allowed to change their dice for each iteration - choosing from 4, 6, 8, 10 and 12-sided dice.

I've suggested a new role: the Guv'nor. At the start of each iteration, the Guv'nor has a fixed number of dice throws which he can distribute among the teams, adding up to a total of number of teams * 20 throws. So if he had 3 teams, he would have 60 dice throws to allocate among them per iteration. The aim of the game for the Guv'nor is to maximise the return on his investment of allocated throws.

The teams must plan and execute each iteration, and at the end - and the Guv'nor decides how long to give them - they all report back their scores to him. The Guv'nor is not allowed to see the plans, or influence their choice of dice. The only control he has is over allocating dice throws.

Let's imagine the guv'nor has 3 teams; A, B and C. For iteration #1 he allocates them 20 dice throws each. He gives them 3 minutes to plan and execute their iteration. At the end, they report the following scores:

Team A - 13 points scored with 20 dice throws

Team B - 10 points scored with 18 dice throws (they ran out of time)

Team C - 19 points scored with 12 dice throws (they completed their iteration plan early)

How should the Guv'nor allocate the dice throws for the next iteration? Instinctively, I would give more resources to the better-performing teams. I might calculate the split of dice throws by looking at the relative productivity of each team.

Team A = 13/20 = 0.65 points/throw
Team B = 10/18 = 0.56 points/throw
Team C = 19/12 = 1.58 points/throw

We want to cut our pie of 60 dice throws into 3 slices, one for each team. How big should each slice be?

Team A = 23.3% * 60 = 14 throws
Team B = 20.1% * 60 = 12 throws
Team C = 56.6% * 60 = 34 throws

So, if it were me in charge, that's roughly the split of the available dice throws I would allocate to each team in the next iteration. I would peform a similar calculation after each iteration until the game's over.

But why would I do this? It's an instinctive strategy, but it appears to work. It raises the fascinating question: what distinguishes a good Guv'nor from a bad Guv'nor?. If the strategy works, why does it work?

I believe it has something to do with odds and with the concept of form. There's no doubt that some plans have a higher probability of success than others, depending on this property of sortedness and on the effectiveness of the thrower's estimates. And there's no doubt that the choice of dice makes a significant difference to the probability of completing a move with a fixed number of dice throws. Which means there are things a team can control that make a difference to their probability of success. So it is genuinely possible for one team to be better at the game than others. This would be evidenced by their scores. One good score might be beginner's luck, but five or ten (or twenty or a million) in a row takes more explaining - it's more probably a sign of higher capability. And if capability is the probability of performance, then who do you back?

A more capable archer has a higher chance of hitting the bullseye

Just as a higher estimate for a move indicates higher risk, a consistently higher score indicates higher capability and therefore lower risk. We invest our resources according to the probability of a return on that investment. We invest more in the best-performing teams because they're more likely to deliver.

So the skill of a good Guv'nor is in identifying the least risky teams based on their past performance. In betting terms, we study their form and choose which ones to back and how much to risk on them. So a good Guv'nor is an informed gambler, just like anybody who bets on the horses or on anything else where track record is an indicator of risk.
Posted 14 years, 10 months ago on September 15, 2006