Incremental delivery takes practice

I was talking once to a company director about the problems he was having with his company’s digital projects. He said that although they tracked their projects carefully, disastrous problems seemed to come out of nowhere: “They go green, green, green, green, bright red. There’s never a step in between.”

This is the kind of story I’ve heard many times before, but rarely told so vividly.

One of the most common reasons for this is the lack of plans that really deliver value incrementally. That is, structuring the project so that every single small step delivers something of value.

Lots of teams say they do this—and goverance bodies believe they see it—but too often they’re mistaken. Either those delivery steps are not at all small (many weeks instead of days or very few weeks), or the steps don’t really deliver genuine independent value. The real test of the latter is “walkawayability“—whether it’s possible to stop the project at that point and say, honestly, yes, we’ve got some value from the time we’ve put in and now we can change direction.

What most people don’t realise is that it can be really, really hard to imagine those small, geniunely-valuable steps. However, it gets much easier with a bit of practice. Here is one story about a team that learned to do that.

I once worked at publisher where the team was asked to add some advertising content to their web pages. They already had advertising space, but this request was a bit different. They needed to use a new page layout and the content should appear only under certain (new) conditions.

The team members were highly skilled people and knew their systems and technology very well. They estimated it would take six weeks, and provided an explanation of what was involved. I was not an expert on their system, but for the product manager and me it was a plan of one step which was far too big. We couldn’t use that plan. Of course, neither of us had a better plan–we weren’t the technical experts—but we needed to find one.

So six or seven of us—the technologists, the product manager and I—went into a small room, to think up another plan. We needed something with smaller steps, I said, and every step need to deliver something we could use. This would reduce our up-front commitment (which, at present, was six weeks) and give us potential options along the way.

So we started talking. We cut the problem this way and that, over and over and over again. We looked at it one way, then another. We floated ideas, listened to the each other’s ideas, asked questions, and so on. We didn’t know how long this would take, but I insisted we couldn’t leave the room until we had an acceptable plan.

After about three hours one or two of the team members made a proposal that went like this: As a first step we can put the advertising content onto our pages, but it will be hardcoded—that will take two weeks. If you want to change the content or remove it, they said, that would be additional development work. As a second step we can store the content and the associated rules in the database—that will be another two weeks. At that point, they said, if you want to change the content it will still be additional development work, but it will be database work, and that’s quicker. Finally, as a third step we can put a nice user interface on it—that will take another two weeks. Now you’ll be able to change it whenever you like, they said, and you won’t need to use any time from the tech team.

With this plan the total was still six weeks, but it was structured differently.

This did seem like genuine incremental value. It meant we could deliver the advertising content early (after two weeks) and we had flexibility in our plan if priorities changed. It was the team’s plan, and I liked it.

The product manager also liked it. As he thought about it he said something else. “Actually, right now we’ve only got the one advertiser for this package, and we’re not likely to get any more soon. So we can probably just do the first two weeks, undo it after the deal expires, and forget the rest.”

Maybe the product manager could have mentioned this before. Maybe he had done and no-one had paid attention. Probably it hadn’t been important before because the original plan didn’t have any real options, anyway. I don’t recall anyone being upset by this new information; I think it was received well.

But to me, what’s most remarkable about this story is that the team was really knowledgeable, highly experienced, and yet it took them a full three hours to come up with a relatively simple plan that really delivered genuine value in small increments.

And as time went on, further planning became easier. People knew what “incremental value” really meant, and learned to think creatively about how to deliver it.

I’ve seen similar things elsewhere. Usually the first plan is presented as “the only way to do it”, and the team is surprised when it’s suggested there might be other approaches. But I’ve always found there are other ways, and there are always some ideas to deliver real value incrementally. The very first time we do this it’s always hard work, but it does get much easier with practice.

Photo by pixishared

2 thoughts on “Incremental delivery takes practice

  1. Good post, I’ve seen similar patterns numerous times where key business information was omitted or hidden until the crunch of a trade-off looms. I’ve also noticed that functionally siloed organisations are much less likely to generate credible stepwise options as everything seems to depend on everything else, resulting in “everything and the kitchen sink” style planning.

  2. Yes, it’s surprising how often “everything is essential” turns into “well, I suppose we can drop this, this and this” when it becomes necessary.

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 )

Connecting to %s