In-Depth

App to Market: Your Startup Needs an MVP

An MVP is not some Microsoft award, but the acronym for a term, "minimum viable product," that loosely defines what you're trying to provide as far as features -- at a bare minimum -- to get your app to market. Let's look at the considerations for making sure your app achieves MVP status.

More on This Topic:

MVP isn't some Microsoft award, nor does it mean "Most Valuable Professional." Not even close. MVP, or minimum viable product, is one that is familiar in the startup/entrepreneurial world, and gets thrown around a lot without it really being defined. So, for you, the budding app developer with grand plans to grow a startup, what does MVP mean and why does your app need to achieve MVP status?

A good place to start reading about what defines an MVP is this Wikipedia article. But that's no fun. Let's take the MVP definition apart and look at it from what atttributes an MVP has:

  • An MVP has a minimum number of features, yet it's got enough that you can demonstrate and use the product.  Products have a large number of features. These features take time to build. By having a product with the minimum number of features necessary to demonstrate to customers/users, you can begin getting their feedback before building in more features.
  • An MVP minimizes risk. Because a product has as few features as possible, the cost to produce it should also be minimized. By minimizing the production cost, it has the least amount of risk.
  • An MVP allows for additional features. This is a product. This means it can be used by a customer.  It is more than just presentation material. Because it is a product, more features can be added as necessary.
  • An MVP is based on market analysis. This market analysis can be done by a subject matter expert, but market analysis must be done. It can also be started by a subject matter expert and then be done by talking to users, getting their feedback, and acting on it as well.
  • An MVP is not meant for everyone. The fact that this is a "minimum" viable product means that this is a product that is designed for a specific subset of potential customers. This is a product that is meant to solve some problems for some customers, to begin a conversation with these customers, and to be a platform to add new features to the product. These new features can be used to satisfy the problems of additional customers. Starting with an MVP means that product development becomes very iterative. From a development standpoint, this fits nicely into an agile development process.

The MVP concept is one that has been popularized in the startup world, one that has been pushed heavily by Steve Blank, an entrepreneur who originated the lean startup movemement. Along with the concept of an MVP, an associated concept is the lean startup.The lean startup method has also been popularized by Eric Ries, another successful entrepreneur who defined the MVP concept.

The MVP Concept Often Needs Further Explanation
The concept of the MVP has become fairly well established in the world of startups and product-focused organizations.  But not everyone is a fan of it. I have found pushback from both customers and salespeople regarding the usefulness of creating a minimum viable product.

Some customers want every potential problem solved immediately. These customers tend to be very high cost customers. From the start they demand every option be already built in. They tend to overvalue themselves.  While you do not want too many of these customers, as a startup wanting to introduce a product with potential to solve lots of your customer's problems, it can be hard to tell some customers to go away. It is not that these customers are bad. The problem is that these customers have a set of expectations that you are not able to fulfill with your app from the outset. 

Then there are the sales people, who are already thinking about selling your app soon after it's available. The ones who are ignorant of the MVP concept want to wait for a solid, shipping product, rather than engage customers to be pioneers or early adopters. A number of people do not quite understand the process of "pre selling" in the technology world. You can't spend 24 to 36 months and then begin the process of talking to customers. You want to get something built that you think customers will want and then get out and talk to customers. The quicker you can talk to talk to customers, the quicker you can course-correct product development as necessary to produce a product that better aligns with customer needs. 

I have been in a scenario where a sales person refused to sell anything without a finished product. We had already determined that the customer did not want what the manager thought, yet we were not allowed to go out to potential users to determine what customers wanted. Product development had seized up and was stuck. Look at the construction of a building, retail mall, or similar "product." Sales people who understand they need to sell a certain amount of square footage before the bulldozers start are exceedingly valuable. I am glad my current cofounder understands this issue.

To go forward with an MVP, it is important to have customers and sales people who understand the scope of selling an MVP and a lot of customer interaction. I have found it important that everyone understand the situation. As I was write this, I was talking to a customer, on a weekend, regarding a feature that we are adding for them. In the first conversation with them, we discussed the problems that would come up. They laughed at me when I talked about us having problems initially. I stated that we needed to start out slow, and we should expect issues initially. Thankfully, they understood the potential for problems.

What's Next?
I am a big fan of the MVP concept. This allows you to put some features together and test the concept before you spend too much time and money attempting to build a fuller set of features. It encourages getting started with a product and testing new features.  It promotes experimentation.  It grants the ability to get started with customers early.  An MVP allows for a product to be built based on an iterative approach to development.

Next time, we'll talk about the value of angels and investors.

About the Author

Wallace (Wally) B. McClure has authored books on iPhone programming with Mono/Monotouch, Android programming with Mono for Android, application architecture, ADO.NET, SQL Server and AJAX. He's a Microsoft MVP, an ASPInsider and a partner at Scalable Development Inc. He maintains a blog, and can be followed on Twitter.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube