RSS

Tasty little cupcakes

This is a sketch of a slide I took during Peter Merholz’s product strategy workshop at UX London. During his workshop, Peter made a point about planning software iterations using cakes as a metaphor. The above drawing shows two ways to plan out baking a cake. You can deliver the base first, then the filling, and finally the icing. At the end of the last phase you have a consumable cake. Alternatively you can make a cupcake, then step up to a normal cake, and eventually a wedding cake. The difference here is that people enjoy cupcakes.

Every iteration in a project must deliver value, both to the customer and to the business. There is no value in icing, or a cake base as a standalone product. They can’t be consumed, tested, or improved upon independently. They’re useless as deliverables.

If each iteration delivers something useful, you get to test your product a lot earlier. Customer feedback can influence product development, and when it’s a client project they are far happier to see a working applications as opposed to lengthy PDFs or Basecamp messages explaining the state of the project.

Peter’s cake metaphor ties in nicely with Galls Law

A complex system that works is invariably found to have evolved from a simple system that worked. The inverse proposition also appears to be true: A complex system designed from scratch never works and cannot be made to work. You have to start over, beginning with a working simple system.

I’ve learned this the hard way, by getting super excited in during the discovery phase, forgetting that we can’t deliver everything at once, and most importantly not realising that people will happily nibble on a cup cake while waiting for something more.