If you have a great idea brewing in your head for a new piece of software, an app or a service, one of the best ways to start developing it is with a Minimum Viable Product or MVP. You can think of an MVP as an initial version of your new software that is built with only the core features you have in mind so that it can be properly tested by a small group of users.
When creating an MVP, you don't need to come up with all the solutions in one go. Since not all startups and even established businesses have unlimited resources to throw at every idea, an MVP allows you to focus on the most important things first so that you can have a working product in the shortest amount of time.
Once your MVP is up and running, you can have a small group of users or early adopters to test it out so you can get feedback on how to further improve it. An MVP allows you to learn what your audience or target market really wants, which then lets you fine tune your final product into something that will truly add value to people's lives.
You'll likely go through several iterations after your building out your first MVP before having a final product that's ready to release to the general public. You'll also have to be ready to scrap features and create new solutions as you continue to test the MVP and figure out what your customers want. An MVP is merely a tool and part of a process that will allow you to test what works and what doesn't.
An MVP is not a mockup
Even though the term MVP is thrown around a lot, it's important to remember that just because it's a very early version all the features you include should still be fully functional. Once you release it for testing, every button should work. Don't include buttons that only act as a placeholder for a feature you didn't have the time or capacity to implement. A lot of times, people tend to get too focused on the 'minimum' aspect of the MVP and forget that it also has to be 'viable' for it to be truly effective.
First steps to building an MVP
Before you go out and tell your team to build the next Facebook or Twitter, you'll need to establish some ground rules and define parameters for the features that you want to include in your MVP.
The first thing you want to figure out is who your target audience is. If you can streamline your MVP to make sure it provides value to your ideal customer, you'll have a much better chance of success since you can focus on making the experience as close to perfect for that one person.
Along with identifying your audience, your MVP should be designed around user stories. This means identifying what the user wants to accomplish and why. User stories allow you to define feature requirements in non-technical terms from the perspective of your customer, which in turn gives better context to the system that you are creating.
It's also important to establish a budget and timeframe for your MVP. Since the goal of the MVP is to determine the viability of your idea and learn from user feedback, it will be a more effective tool if you can launch it as quickly as possible. You don't want to waste time and money developing features and functionality only to find out that users will barely use it during the testing phase.
During the development phase, you should also have a clear goal for your MVP. Is your end goal to make money from its use? Is it a demo so you can raise additional funding? Are you trying to grow a user base? Or do you simply want to test a hypothesis?
Finally, before moving forward with your MVP, you may want to consider if a Riskiest Assumption Test or RAT is more useful for your situation. Ever since the concept of the MVP was introduced a lot of people seem to think that it is the only way to prove their idea will work. Many people have gone through the process of building and testing their MVP only to find out that it's not the solution people are looking for.
When building an MVP, you're usually working with untested assumptions. A Riskiest Assumption Test (RAT) will let you know beforehand if that assumption is even valid and if customers are interested in using your product or service using simpler testing and research methods.
Which features should I include in my MVP?
During the design phase of an MVP, it's important to determine a feature set or list of features you want to include in your MVP so you can establish the scope of the project. A feature set gives you a clearer vision of what you want to accomplish with your MVP which is helpful for your team, your developers, your investors and your target audience.
Prioritising the features to include in your MVP is a crucial step that requires a lot of thought and deliberation. It's a collaborative process that requires input from all interested parties such as your development team, your stakeholders and your target audience.
Just because you have a clear vision of what your MVP should look like doesn't necessarily mean that it's the only option to go with. You have to consider if your team can implement these features properly, as well as the time and resources to make it work upon release.
To make prioritisation easier, make a list of all the features you want to include then organise them into feature buckets.
Your feature buckets can be as simple as:
- Must have features
- Nice to have features
- Unnecessary features
In addition to these feature buckets, you can categorise features based on impact and cost, or its effort vs. value ratio. For example, a must have feature that offers a high impact on the customer experience and comes with a low cost to implement should easily get the green light. But a must have feature that has a high impact but is prohibitively expensive to implement can be dropped into the 'nice to have' bucket instead. Likewise, a low impact and high cost feature should definitively go into the 'unnecessary' feature bucket.
What happens next?
Once you've agreed on your MVP's feature set, you can proceed with the development phase and make it ready to go live as soon as possible. A lot of startups get really excited once their MVP is ready but don't really know what to do with it once it's done.
It's important to remember that an MVP is not a product and not a process. The faster it goes live and is released to your customers, the faster you can validate your assumptions. The user feedback generated after releasing your MVP is even more valuable that the MVP itself.
Use as much time and effort as you did in creating the MVP to study and analyse the user feedback so you can further refine your next MVP release. This creates a feedback loop of 'build-measure-learn' that has proven to be a game changing approach that helps businesses design products that customers cannot live without. Using MVPs as a learning tool lets you incorporate incremental improvements into your product using real knowledge validated by actual data and not just assumptions.
It's been proven time and again that an MVP is an effective tool that can turn a simple idea into something truly amazing. It is especially useful in the early stages of product development and provides you with invaluable data that you simply cannot get anywhere else. An MVP will help your business save valuable time and resources that can easily be wasted on a fully-fledged product that nobody wants to use.
However, when dealing with an MVP you should set your expectations appropriately and be prepared to make radical changes or completely pivot away from your original concept into an entirely new direction to create something of real value. Bad news and failures and are part of the process, so you should be fully committed to the feedback loop and have the flexibility to learn and grow from your misconceptions and mistakes.
Want to learn more? We go into much greater detail in our Startup Series articles.