September 21, 2006

...Learn TDD with Codemanship

Nonlinear Product Management

Why do some products succeed and others don't? Why do some software applications end up on thousands of desktops and other - equally usable - applications never get past the pilot stage? Why did the emu survive and the dodo die out?

A dodo and an emu

Much of our thinking about quality and productivity revolves around the assumption that we can isolate the good bits from the bad bits. But can we really know what part of a complex whole makes it more successful? Katie Holmes has a crooked nose, but if she got it straightened would we find her more attractive?

Katie Holmes and Tom Cruise

When we try to isolate components that need fixing or replacing, we risk throwing the baby out with the bathwater. Simple cause and effect doesn't apply to complex systems. When we change one variable, it's impossible to accurately predict what effect that might have on the other variables in the same system.

Ashton Kutcher pays the price for tinkering with a complex system in Butterfly Effect

This presents enormous problems for product managers, who have the critical task of deciding what features and qualities software needs to have to address market needs and meet company goals. How much is feature X worth? How much can we afford to spend on feature Y? What will be the benefit of achieving quality Z?

It's impossible to know for sure, because a software system is made up of infinite features and qualities, all of which interact and any of which could bring value to some degree or another. When we say that we believe that feature A will be twice as valuable as feature B, that's just a guess. In reality, it might not be. It might have no value at all. It might turn out to be 1000 times as valuable. But both of these extremes are less likely.

Determining what will add value (or, indeed, subtract it) is just another throw of the dice, like determining how long a task will take. And we'd do well to remember it's the value it adds (or subtracts) to (or from) the whole. It probably has no value in of itself. (I mean, would you like to go on a date with Nicole Kidman's legs, or Johnny Depp's eyes?)

This sheds some light for me on how a product management aspect could be incorporated into the Agile Governance game. In its current form we know what the value is going to be in advance. But what if we didn't? What if completing a move added or subtracted points in some mysterious and largely unpredictable way? What strategy might we apply then?

Curiouser and curiouser...
Posted 5 days, 19 hours ago on September 21, 2006