Master the art of product iteration. Learn how it differs from traditional and incremental approaches, and how to effectively define problems, craft solutions and build, test, and evaluate iterations for better products.
Most people are familiar with the concept of product iteration, even if they don’t consciously realize it. Perhaps the handiest example is the smartphone. When Apple first launched the iPhone in 2007, the product seemed wildly different and new from what had come before in its category.
But that launch model iPhone would seem primitive without the features that today seem essential to its function. The original model lacked GPS navigation, for example; voice-operated assistants first appeared in 2011; every year a larger and better screen makes previous models seem dinky. Additionally, novel applications from real users prompted the development of new features, like the way the front-facing camera, intended for video-calling, was optimized for selfies.
While the smartphone evolved quickly over several years in the public eye, less dramatic product iteration occurs all the time. The framework is widely applicable across not just physical goods but also software and services, too. Netflix’s algorithmic recommendations have evolved countless times. Each time SpaceX sends a rocket to space – or watches as one explodes on the launchpad – is an example of product iteration. For many companies, iteration is an essential way of structuring team dynamics, marketing releases, and managing projects. It can also save money and lead to more user-centered products.
Let’s dig into its benefits and best practices below.
Understanding product iteration
A product iteration refers to a new version of a product that incorporates modifications or enhancements with the aim of improving its overall user experience. Iterative product development, meanwhile, is the overarching process that guides the conception, design, and evaluation of each new iteration. It’s a cyclical approach to creating and refining products through repeated cycles of designing, prototyping, testing, and incorporating feedback.
You might think of it as trial and error, although it’s a little more purposeful than that. The focus is on releasing a minimum viable product (or a minimum marketable product) quickly. This allows for it to be tested by real users, either at scale or in a trial run. Users give feedback and raise issues about the product, leading to the development of a new iteration, which either solves those issues or attempts to add new features. This new design is then released, feedback is collected, and the cycle continues.
Iterative product development vs traditional product development
One easy way to understand iterative product development is to compare it to the traditional product development process.
Traditional product development is linear in nature: a product is ideated, designed, developed, tested, and then sent to market. The product requirements are defined at the beginning of the project and need to remain fixed throughout development. Because changes after the product is in development can be costly, more time is spent developing it, delaying market entry.
This is sometimes called the “waterfall” development process, where each step is clearly delineated and must be completed before the next one begins.
Iterative product development, meanwhile, is cyclical, which allows for continuous improvement throughout the development process and even after release. The requirements for success can evolve based on user feedback, which occurs regularly with each iteration.
From a project management perspective, iterative development is associated with the Agile software development methodology, in which core features are prioritized and built out in succession rather than as one large, all-in project.
Iterative product development vs incremental product development
While “iterative product development” and “incremental product development” are often used interchangeably, and in many development environments go hand in hand, they actually signify slightly different principles.
Both processes are cyclical and aim to build a better product with each successful iteration. However, iterative product development refers to the process of responding to user feedback and lessons learned, allowing for flexibility in the way the product responds to changes in user needs, market conditions, and technological trends.
Incremental product development, meanwhile, refers to the process of gradually building out a product’s feature set and functionalities. An incrementally developed product may begin with one core function and slowly add on additional functionalities that increase its usability and applications.
Facebook was built incrementally, starting as a way to view pictures of friends and acquaintances but eventually turning into a shopping platform, streaming service, instant messaging service, and much more. The video game Fortnite, on the other hand, may be looked at as an example of successful iterative product development, beginning as a game about building bases before pivoting to focus more on large-scale multiplayer combat and eventually user-generated content.
Benefits of iterative product design
Some projects don’t lend themselves to iterative product design. The construction of a skyscraper typically follows a waterfall methodology. While writing a novel may be iterative – in that the author may go through many revisions – the actual publication process is more of a waterfall process, in which finished copy is delivered to the printer who then prints the books and sends stock to stores.
However, for many other projects, an iterative approach provides a wealth of benefits. Let’s explore some of those benefits now.
Iterative approaches are well-suited for industries with rapidly changing technologies or shifting market trends, enabling the product to stay relevant and competitive throughout its development.
There’s less risk
Regular feedback loops and continuous testing help identify and address issues early, reducing the risk of major failures or costly fixes late in the development process.
Faster to market
By releasing functional versions of the product early and incrementally adding features, companies can get to market sooner and start generating revenue while continuing to develop additional features.
The iterative approach allows for flexible changes in requirements and design as new information or challenges arise during development.
Easier to manage scope
Iterative development makes it easier to manage the scope of a project by breaking it down into smaller, manageable portions that can be addressed in separate iterations.
It’s more collaborative
Iterative development fosters collaboration among team members, stakeholders, and users, as each cycle prompts a regroup and another round of evaluation.
It’s more appealing to users
Frequent user involvement ensures that the product aligns with user expectations, resulting in a more user-friendly and satisfying experience.
It encourages innovation
Frequent iterations provide opportunities for creativity and innovation, leading to the discovery of new features, solutions, or approaches that might not have been envisioned initially.
What is the product iteration process?
The product iteration process typically involves five steps: defining the problem, crafting a solution, building a product, testing the product, and then evaluating the test. Let’s explore each in more detail.
1. Define the problem
If you’re just launching your product or service, defining the problem may involve wide-scale market research and ideation. On the other hand, if you’re embarking on the latest of many iterations, this step could be smaller scale, involving the collection of targeted user feedback, stakeholder input, and data analysis. This helps isolate a specific goal of future iterations.
Either way, you should attempt to solve a problem for a specific user or type of user, and that goal should be measurable by a specific KPI. If you’re launching a dog food delivery app from scratch, for example, the problem you’ve identified may be that young urban-dwelling customers have a hard time sourcing high-quality dog food and being able to carry it to their apartments. So your KPI may be sign-ups for a beta test of your app.
On the other hand, if you’re working on the latest iteration of a website that connects people with therapists, perhaps the problem is that users have trouble understanding the search screen. The KPI there may be increasing conversions from the search screen. Setting specific goals and objectives that align with user needs, business objectives, and market trends ensures that the iteration has a clear and measurable goal.
It’s also important to keep in mind feasibility: what sort of changes can be accomplished with the given team and budget? This helps ensure the ultimate solution will be able to make it to market.
2. Craft the solution
Generate possible solutions to this problem by brainstorming a range of ideas that will either improve the product or solve the target audience’s problem as quickly as possible. Collecting input and ideas from cross-functional teams, real or representative users, and other stakeholders helps ensure that different perspectives are being considered in these solutions. It may be worth considering both incremental changes (rolling out slight UI changes to copy and layout, for example) as well as more substantial updates (like a new feature set) if the problem warrants it.
If brainstorming like this yields a variety of different avenues of development, prioritize them based on impact, feasibility, alignment with goals, and resources required.
3. Build the iteration
Develop a prototype or mockups of the proposed changes. This could include wireframes, mock interfaces, or interactive prototypes.
In some instances, this may be a functional app with manual operation on the back end. For example, for our dog-food delivery app, the prototype might be little more than a glorified form, after which the owner of the company buys the dog food and personally delivers it. This prototype would allow the owner to assess the popularity of the product before building out the infrastructure to execute it at scale via more automated means.
In other situations – like the search results redesign for the therapy website – the mockup could be Figma prototypes that show different user interfaces. This is the phase when you can test your prototype with real users.
4. Test the new iteration
Now it’s time to roll out the product to users. This may include testing the product with the developers who made it – a process called “dogfooding” – as well as with other internal stakeholders.
But it should also likely include real or representative users. Iterations can be evaluated with an A/B test, in which some users receive the new variant but others receive an unmodified control version. This allows for objective assessment against key criteria (like conversion rates).
Representative users can also be sourced using a research panel, like the one from UsabilityHub, which allows you to select users based on a variety of demographic criteria. You can ask your participants to test the product and provide detailed feedback of the iteration.
Read more about how UsabilityHub helped budgeting app YNAB source supercharge their usability tests.
5. Evaluate the test
Evaluate the results of the test against the original objective. If the objective was to test the viability of a product’s appeal in the marketplace, as in our dog food delivery app example, the key objective may have been daily users. For a more mature product, like the website that connects people with therapists, you may focus on more granular analytics, like how many users employed filtering in their search results. Did the proposed design changes impact the target metrics? Were there any unexpected changes as a result of the new designs?
Incorporate the feedback from the test into the next iteration. From there, the next steps could be a full product launch, another prelaunch iteration, or a post-launch update, based on the maturity and type of product you’re iterating.
Remember to document all of the changes clearly, and continue to be methodical about the objective of each iteration and its outcome. This acts as a hedge against scope creep, ensuring each iteration is pointed and productive. Even if a given user test doesn’t positively impact the desired metrics, it does create usable intelligence about a pathway that didn’t work, spurring innovation for the next iteration.
Ready to enhance your product iteration process?
Look no further than UsabilityHub. Whether you’re fine-tuning existing features or innovating new ones, our suite of usability testing tools empowers you to gather real user insights for informed decision-making.
Bring your product closer to perfection by signing up to Lyssna and experience the power of user-centered product development.