one trip to the buffet

A few weeks ago, I wrote an entry which touched on a phenomenon I call the “Buffet Paradox“, which prompted a question from my old friend Alan:

Curious about your thoughts on avoiding the buffet approach to begin with.

Ive seen it for the last 10 years. The reason is always the same–IT is too busy to do any phase two work, and outside developers bill too high to keep around for the second phase.

What Alan is talking about is a recognition of two things that are real parts of projects:

  • Setup costs are a real part of projects, and
  • if you have limited resources, you can only do so much in a given time period.

So there’s definitely a temptation to say, “Well, while we have the body open on the table, we might as well do X as well, and Y, and Z…it’ll be cheaper in the long run.” Saying “IT is too busy..and outside developers bill too high” means “we have limited resources, and not being able to commit those resources to a Phase 2 is basically not being able to afford the setup costs of kicking off that project.”

There is absolutely a cost savings involved in doing it all at once; that’s just simple math at work, because you’re saving somewhat on some of your setup costs–your fixed costs. BUT, you’re definitely not getting two projects for the price of one, the reason being that “overhead” costs are usually a far more significant a percentage of the total cost of doing a project than most people account for.

Ok, I know I’m starting to lose people here, so let me explain.

You’re making dinner. When you think about making dinner, you’re usually focused on eating, so you think, “Ok, I just pop these burgers on the grill, and then we can sit down and eat.” You’re thinking about the outcome.

With burgers, superficially, you just think, “put patties of meat on grill, cook for 10 or 15 minutes or however long it takes, eat.” But, first, remember that you had plan out what you wanted to cook, which meant that, at some point, you had to drive to the store, you had to buy food, you had to find money in the budget to pay for it, you had to actually pay the vendor, you had to bring it home, you had to store it, you had to prep it. You needed to make sure the grill was clean and had gas. You needed to set the table, bring out the condiments, and check to make sure the buns were good. And even when you’re done eating, you need to clean up the dishes, put everything away again, and figure out what to do about any leftovers.

Your wife says, “Well, you know, we need a side dish. And how about a salad?”

Now if you’re just thinking about this dinner project as “cook burgers, eat,” you might just say, “well, sure, we’re already setting the table, so no big deal.” But if you really consider that you needed to prepare a lot of ingredients in advance, and that you need more dishes, and that you need to slice up vegetables and wash some baking potatoes and find the dressing and sour cream, it turns out that the “shared” portion of your setup costs is really a lot lower than you think it is.

So, simple question #1 is: do you really, really, really need that salad?

In other words, to go back to the Buffet Paradox, are you loading up your plate with those chicken wings and rolls and chickpeas because you really want those things and are fully committed to making them a part of a successful meal, or because you might want them and you figure it’s easier to just get them now? The problem with that line of thinking is that, in the project world, those things don’t just appear on the buffet: somebody had to shop for them. Somebody had to cook and prepare them. Somebody has to be responsible for making sure that the chicken isn’t undercooked, and have an emergency response plan for dealing with the fallout if it is. Somebody has to make sure there’s room on the buffet for those additional items, that your plate is large enough to accommodate them, and that the dishwashing staff can handle the extra dishes from the preparation, display and consumption of the extra food.

But what you may only think about from your perspective is, “But I might want some wings, so, put ’em on there.” What is important to remember is that, like our salad, or like any additional parts of a project, there is a lot more that goes in than just consumption.

Again, what I would focus on is what I’ve heard called the “Minimum Viable Product,” or MVP, which is your core product, the absolute essential features of your project. Build that out, use it for awhile, and, when you find that there are some things that you really, really need, be prepared to do the additional work to make a case for overcoming those setup costs in doing a Phase 2.

Simple question #2 is: can you live with an Agile development process in your organization?

True Agile is not for everyone, and both the people wanting the new product and the people building it need to be 100% on the same page. You’re not speccing a massive project from the get-go, you’re entering a collaborative relationship that recognizes that you don’t completely know what you want, and accepting that the results may not meet all your needs all at once. If you can make a project into an Agile project, you can build a feature at a time, slowly, until you reach a point where you both agree that you’ve got a true MVP feature set.

But if, as it turns out, you really, really do need those additional features in your project from the get-go, you need to be prepared to put as much time and effort into planning them as you put into the main parts of your project. If you don’t, you’ll end up with a lot of useless stuff. That frustrates the development staff, who do more work for no more benefit, it frustrates the users, who end up with extra buttons and boxes that don’t do much, and it makes everybody much more wary of each other when the next project comes along.

The solution to situations where you only get “one trip to the buffet” is to either a) spend more time up front planning projects so you avoid useless features and are sure to include everything you need, or, b) adopt an Agile approach where you substitute collaboration and lots of iterations for a massive spec.

By the way, the Buffet Paradox goes by another name that you may be much more familiar with: scope creep.

This entry was posted in Business, Life and tagged , , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *