MVP (Minimum Viable Product) is one of these IT buzzwords everyone working in mobile app development talks about. Do you really know not only what exactly it is but why it's a good idea for every digital project?
Let's start with discussing the more ‘old-fashioned' approach. You have a business idea for a web app, so you start designing it with many different features. In the end, you get a big system with a lot of interconnected pieces. Obviously, it would take many months to develop such software.
If all of your assumptions and ideas were correct then great, you've got a product loved by its active users which precisely answers their problems.
However, what happens if:
One of your assumptions about the market and users was wrong?
The sentiment of your target users has changed during the development?
New attractive technology/approach has entered the market?
Some external event changes the whole market?
In case any of these things happen during the software development, you're stuck with a big project which doesn't fit the market realities anymore. The time spent so far on planning and product development is wasted. Do you cut your losses and start again from scratch?
In the worst case scenario, you might even not know that these things had happened. Only when you deliver your product to customers, you might find out that the target audience is not really that interested in using it. All of this after a lengthy and costly process.
This situation doesn't affect only new products. The same thing can happen when developing a new feature for an already existing product.
Hailo case study: The example of how building a successful MVP app could prevent failure
Have you ever heard about the Hailo app? I guess not. That is because this mobile app has failed spectacularly in 2013.
Hailo was a taxi booking app (similar to Uber) from the UK. In the beginning, they were doing pretty well. With 30k drivers, they were present in over 33 cities. In 2013, they tried to enter New York's taxi market with a huge budget of $100M from investors. But few obstacles have appeared.
First of all, Hailo did not invest in comprehensive research. London's taxi drivers have to face complicated travel routes daily, and using a smartphone, in that case, is a regular thing. The situation looks totally different in NYC, where divers can smoothly navigate without any technical help. I imagine that persuading them to use a complex mobile app like Hailo was a challenge. Here comes my first thought. If they build a Minimum Viable Product, a simpler version of the Hailo app, suited to the target audience that is not technologically advanced, they could quickly find that NYC drivers have different preferences, which would allow Hailo team to adjust their product.
Secondly, technical issues interrupted the proper app functioning. The main crucial problem concerned payment integration. Hailo had considerable problems integrating its systems with a payment method from the USA. Again, I see MVP as a solution that quickly identifies the problem so developers can immediately resolve the app issue.
As you can see, having a successful product in one market doesn't mean that it will work as well on a different country market. We can not forget about research and target audience while building software and entering new markets. The development process should be based on the analysis and its quick verification.
My advice for you is to do everything to launch MVP as quickly as possible, verify how potential users react to the app idea, and then implement changes if needed.
What is the purpose of Minimum Viable Product (MVP)?
All of the issues with ‘traditional‘ approach seem to originate from a long development process founded on many initial assumptions, so before you can validate them, a lot can change.
That's when the concept of comes into play. Contrary to the previous approach, you'll be focusing on delivering a fairly simple product with basic functionality for your customers which can be reasonably quickly developed - instead of dozens of features and many months of development, we get a few basic functionalities with a quick development cycle.
"The lesson of the MVP is that any additional work beyond what was required to start learning is waste, no matter how important it might have seemed at the time."
An important thing to remember is that MVP is the minimally viable product, not the minimal product.
This means that it doesn't have to be incredibly basic, have less than X features, or be developed exactly under a month. The exact scope has to be specific for your case and market, which means that the exact amount can vary - for some projects, it can be a simple website done in a few weeks, for others, it could be a mobile app that could take 2-3 months.
But the overall idea should apply to all examples - make sure your MVP validates your market assumptions and gives you qualitative feedback without spending too many resources.
When looking at the projects I've worked on, I can clearly see the benefits of using MVP as a part of the overall agile development strategy. Data-driven approach and quick changes can sound intimidating, but in the end, it results in more informed decisions, which ensures that each bit of work precisely answers your customers' needs.
How to build a Minimum Viable Product? 5 main steps
Great, now we know the idea behind the MVP concept in the app development process. But how do you actually introduce it to your customers and figure it out? We could split the process into major points below:
01 Research the market needs and potential customers
Remember the mistakes Hailo made during their market expansion? Market research and knowledge of users are necessary to build a successful MVP. This point should be the most obvious one - we'll need to have a good understanding of the market and customers to plan any next steps. While the idea of the MVP is to gather the data and feedback by itself, it's good to make sure that the very basic idea is viable. At Railwaymen, we strongly focus on the research period that precedes the MVP development. That's why we offer a Discovery Phase service. You can read about it here.
Building an MVP (Minimum Viable Product) - Discovery Phase at Railwaymen
02 Define key problems and solutions
With necessary background information, we could start working on a more precise description of potential customers. The main question here is what is the main problem your users are encountering and how the product can help them solve it.
If you already have a business running, that would be the best source of information on your users - what are their most common complaints or requests, and how to solve them.
In case you're starting something brand new, websites like statista could help you gather initial background information.
As a result you're probably going to end up with a lot of potential ideas and solutions for your product or service. Now it would be a good idea to prioritize it to ensure your MVP has a clear goal - giving value to your customers while you research their usage of your product. Everything that doesn't meet that goal can be moved to the project backlog.
This process is obviously a challenging task, but there are many tools that could help you. One of the most popular tools for this is a MoSCoW method, in which you split all potential features into 4 main categories: must have, should have, could have, won't have.
How to build successful MVP app? MOSCOW method
In the end, a lot of good ideas will be put aside, and that's a good thing - it helps you keep a clear definition of the MVP and avoids feature-creep.
03 Plan and build an MVP version
Now it's time to transform solutions and features we just prepared into a real digital product. Tools like user flow or wireframes will help us prepare the vision for the application, which in turn will get more defined into user stories.
How to build an MVP (Minimum Viable Product)?
Another great idea at this stage is a working UI prototype. Using tools like Figma or UXPin, it is possible to create clickable prototypes, which can represent the use cases of your product. If you have users willing to review it, it is possible to get initial feedback even before the development phase.
Another point you cannot forget about is the proper analytics support, something which will come very useful in the next stages of app development.
Of course, to build an MVP, you will need a team of experts. To give you a software development scope, I will tell you more about how we developed a Minimum Viable Product for Jim Pawell, Co-Founder of Marketing Amplifier. To build a James Marketing Amplifier (marketing automation web application for the law industry), we ensured 7 people: Project Manager, UX/UI Designer, Quality Assurance Specialist, two Front-end Developers and two RoR Developers. We handled 100% of the design and web development, and the project is still ongoing.
How to create a Minimum Viable Product? JMA case study
04 Release the MVP and collect feedback
Now is the time to start listening closely to what your customers say about your MVP - either directly or through usage data. Is the number of users as high as you expected? What is the main source of new users? Which features are most popular?
Data gathered from the MVP version should allow you to answer questions like this, which in turn will give you more concrete information on what your next steps should look like. Keep in mind that negative user feedback is still valuable - it lets you know that you need to rethink some areas or try out a different approach. Thankfully since we kept the scope of the MVP small, it means that in that case, you didn't lose too much of your budget and time!
05 Further app development
Great, now, after learning from your MVP app, you should have a much better understanding of your users' needs. All of this should let you react precisely to the needs your customers shared with you in their feedback, which in the end means that you're investing in ideas that are based on data and can be easily verified.
Keep in mind that MVP doesn't have to be just for your first release - you can keep using this formula for updating your product with new functionalities. Remember to start out small and verify data before fully committing to a new feature.
MVP app development does not finish with the date of app launching. It is the first big step in your product life-cycle. Whether you want to run web or mobile software, you will have to maintain it to ensure a bug-free experience to the users, proper app functioning, or increase app safety. Regular app maintenance is necessary to implement innovations and new features.
Minimum viable product (Agile product development stage)
How much does it cost to build an MVP? How long should it take?
As stated before, it isn't easy to give one estimate for each case since each project will vary.
However, as a ballpark estimate, creating an MVP in most cases shouldn't take more than $20k- $30k and 2-3 months of work. Anything bigger than either is a really complex project or could use some trimming in terms of scope.
When working on an already established product, often MVP for new features can be done much faster, as there is already a lot of existing code and functionalities which can be reused. In that case, we could be talking about just a few weeks of work, depending on the specific case.
James Marketing Amplifier: MVP development example from our portfolio
During the design process for JMA, we've been able to review all potential areas of customer interaction with the current product and how it could translate into a digital application. The clickable prototype has proven to be extremely useful as it has allowed us to review the proposed solution with customers even before the development phase. This gave us valuable insight at an early MVP stage and helped us to decide on making some bigger changes in our initial plans.
Releasing the first version of MVP gave us a lot of data on how customers actually use the portal, which was the goal from the beginning. Thanks to this, we've been able to iterate new versions of the software with a better understanding of customers' main motivations, which led to features that more accurately answer their needs.
How to build an MVP (Minimum Viable Product)? Agile product development
In order to continue working within agile philosophy, we often created MVPs for new features. This allowed us to investigate customer interest in these new areas, before developing fully scoped versions.
Building an MVP (Conclusion)
To summarize, the Minimum Viable Product software approach is the key concept of agile product development. It is an excellent solution for the vast majority of projects - no matter if you're leading a small startup and want to release the first product or if you are trying to expand your already established business. This approach lets you be confident in your direction, thanks to quick user feedback and gathered data. At the same time, it minimizes any potential losses due to mismatched plans.
In my opinion, building an MVP is the safest way of software development. We all know that app development costs money. You will have to pay for every single feature implemented into your product. So consider, is it worth paying for unnecessary functions? I don't think so. MVP development gives you cost optimization and the possibility to plan smartly every stage of product building.
If you'd like to learn more about the MVP concept and agile development, I recommend reading The Lean Startup by Eric Ries. Another great source is our other articles available here on our blog. If you have any questions on this topic, feel free to reach me here firstname.lastname@example.org
As I mentioned previously, to create an MVP, you will need a development team of IT specialists who have experience developing apps from scratch. Download the presentation about our software development company and get to know us better.
Let's build a stunning MVP together.