Recently I was part of a discussion with colleagues what actually MVP, Prototype and Proof of Concept are and how they are related to our product delivery process. Almost everybody had a different view of how and when they should be used. What we agreed on was that they all were used for some kind of testing. That made me dig a little bit deeper and check what stands behind each of them, how they are used and in which situations they could be beneficial.
What is a Proof of Concept (PoC)?
“Proof of concept (PoC) is a realization of a certain method or idea in order to demonstrate its feasibility or a demonstration in principle with the aim of verifying that some concept or theory has practical potential.”
Wikipedia
Proof of concept is the process of testing the feasibility or showing the potential of a specific idea (e.g. business, functionality, design or technical). The proof of concept has to be realistic and prove that the idea is possible.
Usually the PoC is an implementation of a small portion of the actual product and is included in the final product. Since it is an actual implementation on a smaller scale, the Proof of Concept could shows flaws, bugs and errors very early in the process.
PoC is very often used due to its lower cost and less time for a validation of an idea compared to full implementation of the idea and could provide you with a clear “yes” or “no”.
What is a Prototype?
“A prototype is an early sample, model, or release of a product built to test a concept or process or to act as a thing to be replicated or learned from.”
Wikipedia
The prototype is a simulation of the real product which aims at collecting early feedback before the actual production of the product. It could help us with identifying mistakes in the design and development phases. The prototype costs us less money and is fast to build compared to the actual product. It could be used to simplify very complex ideas so the user can get a glance at them and understand them. The prototype can be used for validation of an assumption, system or application by business users.
The prototype should look like or simulate the real product and outcome but it is not intended to be used by clients as real product (production system). There are many types of prototypes and selecting the right one depends on the assumptions you want to test and validate. Some of them are:
Paper prototype – very cheap and less time consuming way of validating your product or functionalities on an early stage of development. Once the feedback is collected, we can proceed with a more detailed and a little bit more time consuming type of prototype.
Visual prototype – this type of prototype shows how the product will look like. It emphasizes on the design, not on the functionalities. It can be built on by adding more fidelity like colors, logos, etc.
Functional prototype – it represents a nearly finished version of the product which has all the basic functionalities and almost the same design. Compared to the final version, there is a technical or visual difference. With the functional prototype we aim at testing that exact difference.
Working prototype – it is the version of the product which needs some final small finishes. It is very often used for a pre-release testing to collect user feedback on whether the product can be released.
Again depending on the assumptions you want to test and validate, prototypes could vary also on the details they show – could be generic (low fidelity) or very specific (high fidelity).
What is a MVP?
“MVP is that version of a new product which allows a team to collect the maximum amount of validated learning about customers with the least effort.”
Eric Ries
“The minimum viable PROTOTYPE.”
Marty Cagan
“A minimum viable product (MVP) is a product with just enough features to satisfy early customers and to provide feedback for future product development.”
Wikipedia
From the above quotes we can say that people have very different understanding of what a Minimum Viable Product (MVP) is. They slightly vary on what has to be tested or experimented with and when – should it be testing the need, the proposed solution before the actual development or the actual solution as soon as developed. There are fans of each approach and we should be aware of the fact that we could talk about different things when saying MVP.
Even with those variations, what they all have in common is the experimentation and learning loop. All of them emphasize on the ability to build, measure and learn and do it continuously (iterate). In order to be sure that you are heading towards something that matters (solves a need and brings value) you have to do it on iterations.
On top of that “iteration loop” all of the mentioned approaches are taking the time and effort into consideration. You have to validate your assumptions as early as possible with the least amount of effort. Having that in mind we can better define what “Minimum” means in the context of the Minimum Viable Product.
- It is the least amount of work or effort that could help us validate our riskiest assumptions;
- It is only the needed functionalities which will help us test and validate our assumptions;
- It is simple but still not giving a headache for the user in order to use it;
- It is a base for the future evolution of the product and building on top of it;
- It is delivering value to the user.
So we can say that MVP is learning as quickly as possible about your customers and product by testing your riskiest assumptions before deciding to continue with the investment of time, money and effort. It is also important to notice that this learning, unlike learning from prototypes, has to deliver value to the customer and is not just a clumsy test for you validating your assumptions.
Conclusion and takeaways
PoC is a partial implementation of an idea, which helps us validate whether we want to proceed or not with the full implementation. If the implementation proceeds, we consider the initial implementation as value-delivering.
Prototyping is way of collecting initial feedback on a product or a solution before its actual production. This helps us identify mistakes in the design and development phases. We can differentiate it from PoC and MVP since it simulates the actual outcome of the product or solution but cannot deliver value for the user.
MVP is about quick learning by doing the minimum and delivering value at the same time. It helps us with the decision to continue with putting more time, money and effort. We can say that the MVP is combining principles from both PoC and Prototypes. A good representation of this quick learning loop is the Cupcake Model.
What all three (PoC, Prototype and MVP) have in common is that they:
- Are fast to build compared to the final product;
- Cost us less money compared to the final product ;
- Should be used only when needed – to check High Value / High risk assumptions.
Read More:
Empowered Product Teams by Marty Cagan
https://www.mindtheproduct.com/empowered-product-teams-by-marty-cagan/
What is a Minimum Viable Product (MVP)
https://blog.leanstack.com/minimum-viable-product-mvp-7e280b0b9418
UX STRAT 2013: Josh Seiden, Lean UX + UX STRAT
https://www.slideshare.net/UXSTRAT/ux-strat-2013-josh-seiden-lean-ux-ux-strat
Eric Ries, The lean startup, 2011
Marc Abraham, My Product Management Toolkit, 2018
Minimum Viable Product (MVP)
https://en.wikipedia.org/wiki/Minimum_viable_product
Proof of Concept
https://en.wikipedia.org/wiki/Proof_of_concept
Prototype
https://en.wikipedia.org/wiki/Prototype