Not so long ago, the way digital products were built involved using a process known as ‘waterfall’. While the name sounds quite appealing and luxurious, the actual process was anything but. The waterfall technique would essentially mean that you build your product in a linear fashion, going from requirements, to design, to build then test. You’d then deliver that product to your client.
However, with the market being as saturated as it is for, well, everything, it’s now known that the most user-friendly product will draw the attention of the masses.
Spoiler alert: you can never know everything.
Enter: the iterative design process and ‘Agile’. These processes made it possible to go back to the drawing board and ideate something better if you found out your initial solution was rubbish, instead of just carrying on, ignoring the haters and releasing something that’s semi-useful.
The key to the iterative design process is user feedback and involvement. You are not your user - no matter how akin you are to their personas or the number of frappuccinos they ingest on a daily basis. You will always find out something useful just by sitting down and showing your creation to someone who has never seen it before but would likely be an end-user.
What is iterative design?
Much like the name suggests, iterative design is a process in which you regularly create a design and then refine it according to feedback - squashing any oddities or misalignments with your user’s mental model of how the product should work.
Also known as “rapid prototyping” or “spiral prototyping,” iterative design includes a number of steps, but it is important to remember that at any point during this process you can jump out and start again with new information. Iterative design is meant to keep improving the product as you work, so that it meets user needs in the best way possible.
People rarely get things perfect on the first try, and good design takes time to get right.
A breakdown of the iterative design process
1. Identify a problem through user research
Before we dive into creating potential solutions, we need to know what the problem is first. Spending time solving an issue which doesn't exist is a waste of time, money and effort for everyone involved.
So, how do you get a better understanding of the issues people face on a daily basis?
You talk to them.
Let's say we have a metaphorical food delivery app called Bites, and we want to know how we can make it easier for our customers to quickly find and buy their favourite meals.
There are a few ways we can take a peek into their daily experience and figure out what might be frustrating for them:
2. Ideate solutions
Once we have settled on a problem to solve, we begin to create potential solutions. This ideally is a fairly quick and rough process - many people get bogged down in the finer details but the faster you can scribble down some rough concepts the better.
The ideas should be good enough that you can communicate them to a client, colleague or stakeholder - but rough enough that you wouldn’t care about ripping up the page and starting again. There is no point in getting too attached to ideas at this stage.
Once you’ve been through a few rounds of scribbling, feedback and further doodles, you can choose one or two concepts which you want to take forward and begin to prototype.
3. Prototype the best option(s)
Prototyping is at the core of the iterative design process. At this point, we want to begin making our designs look and feel fairly realistic, so that we can test them and see if they work before moving into production. An important step in design thinking processes as well, prototyping is a cost-effective method to see if the design we have in mind will perform in the way we had hoped, and examine additional alternatives before it becomes too expensive.
The prototypes you create can be anything from simple pen and paper wireframes to high-fidelity mockups. For interactive prototypes, there are a number of sites like UsabilityHub,