Small is beautiful

March 23, 2022

Without mentioning agile as much as possible, I wanted to share a simple way of looking at how to split up your design and development iterations.

If you're approaching your production as an iterative process, it can become very messy if you haven't planned those iterations effectively.

The most common temptation in my experience is to take the proposed user journey and build the first step of the journey first, then the second etc etc, and finally building the last bit.

This just means that you'll only be able to test it properly with users (or anyone) once you've completely finished it, and if you find problems, it could mean a significant re-work.

So to help you uncover as many of those problems as possible, each iteration should be an end-to-end journey that you can ideally user test, or at the very least, review as a team.

In practice

Once you've got your first version of the solution agreed and roughly wireframed or prototyped etc, imagine the user journey as a tube map:

Take the example of enhancing an eCommerce product page...

Iteration 1

Your first iteration should be a start to finish journey, including at least the first and last steps of the new journey. In this example, you might only build the new layout for the product page, and add the new Add to Basket button.

Building and testing this will be relatively simple, and it should be easy to measure the effect that the new additions had on the user experience.

Iteration 2

After testing and/or reviewing the results of each version, make any necessary changes to the design or build and move onto the next iteration by building in some more of the new attributes. Testing in stages like this means it's much easier to see where an impact came from, it's a bit like A/B testing.

Iteration 3

And so on...

Final iteration

Add the remaining features in further iterations. The final testing will only be as big as the last iteration.

A huge benefit of working like this is that if you're suddenly required to release the feature asap,  everything you have is already working and tested, it's just missing a few bits, but then this is what Agile is about.

Damn, I said Agile.