Alberto A. Flores

Alberto A. Flores

Sr. Software Engineer

© 2022

Dark Mode

Defining the MVP

The definition of a Minimum Viable Product (MVP) is an important part of product development. With the rise of a new generations of customers expecting more from software, the MVP definition has also morphed, however the core concept remains the same. The key to remember is to always respond to the question “What is the minimum acceptable set of behaviors that a product need to solve?”. This concept of viability continues to evolve, to include “smart capabilities”.

Here is a great definition of the MVP:

“A minimum viable product (MVP) helps entrepreneurs start the process of learning as quickly as possible. It is not necessarily the smallest product imaginable, though; it is simply the fastest way to start learning how to build a sustainable business with the minimum amount of effort.”1

MVP Journey

Not like This

It’s essential to remember that the point of the MVP is to always have a working product. In most cases (as described in the example above), it’s very easy to show progress towards the big bang delivery in the 4th iteration. Deliverying in this way, clearly shows no sign of Vertical Slicing. Furthermore, customers do not get to have joyful experiences in our software until the last iteration.

To understand a different approach, teams must understand context. This suggests teams need to given the opportunity to ask more questions and understand more about the value stream of the solution. This is where we look to learn quickly. Following the lean approach of Build, Measure, Learn, we must iterate through the lean cycle to discover quickly the real solution.

The MVP cycle

This lean cycle requires more than just building software, but the ability to transform how we capture (and test) software expectations (requirements) via User Stories or Mappings.

The Journey to MVP

Each layer of the lean cycle is not dormant. Let’s for a moment remove the word “Minimum” with the word “Earliest”. This should help us denote emphasis in our ability to deliver early as opposed to a “minimum functionality”. As we traverse the cycle, we start defining milestones of early functionality:

MVP Journey

  • Earliest Testable Product (ETP): This is the earliest product we can realistically put in production that will allow teams to learn. Remembering that the goal is to always deliver and when we do, we do it promptly.
  • Earliest Usable Product (EUP): This is the earliest product that customers can start using in production. Not optimal and it’s not feature complete, however it meets some of the initial desirable outcomes.
  • Earliest Lovable Product (ELP): This is the early version of a product where the customer starts to respond to the process with gladness. Communications between the team and customers are healthy and everyone continues to share insight in how to improve the product.

The journey is not over. The expectation is that the software continues to evolve based on the evolving needs of the users.

Defining Viability

In some organizations, the concept of MVP is misused or interprented as bing bang delivery. This of course comes with a number of cultural expectations and confusions. In some cases, MVP may be perceived as the large outcome of what can be perceived as the result of a waterfall based process.

As suggested above, let’s consider our definition of MVP as the earliest version of our software that is meant to change. This is why a good recommendation is to switch the terminology to Earliest Viable Product to reflect an early state of our software. Most customer would want an early preview, and few may want minimum functionality.

While replacing viable can be tricky, I propose that our definition to the “V” in MVP need to be focused on the following:

  • Keep users happy.
  • Give them enough that they see value.
  • Engage them so they don’t churn out.
  • Maximize the customer experience given the most current information.

Forecasting the MVP of the future

It’s important to mention that while this definition has held true for a long while, in the near future, users wil no longer accept apps that, while functional or informational, do not learn and adapt to the way they (users) do.

As we continue to see advance use of AI/ML into the software factory, we expect more information that will reshape the definition of MVP. I expect a new layer added at the top of the “delightful” experience, called “smart product”:

Evolving MVP

While there are many variations of this pyramid, the “V” still stands for “viable”. Viability means more than just being functional and error free. A product is viable when is includes all layers in the pyramid.

References

  1. Eric Ries, Lean Startup