MVP is a recent concept in software development that dovetails nicely with the agile development methodology. Simply put, MVP is the bare-minimum set of core functionality that must be included for the software to be at all useful. Think of it in terms of an automobile: The minimum features a car needs to make it useful are:
That’s it. If any one of these features are missing, the device is useless. Obviously, there are some assumptions wrapped up in these features, such as there being a way to store energy and convert it to motion. But from a user-interface standpoint, the above three features are all that’s required to get from A to B.
So what good is an MVP? The MVP is the first working version of the software, and it is typically used to validate the development team’s understanding of the client’s needs. It’s more than a prototype, but less than a finished product. It’s useful for getting client feedback to ensure the developers are on the right track at an early stage of the project, before expending time and money on other features.
To extend the car analogy, you could build a car with heated seats and power cup holders, but if you forget the brakes, you’re wasting your time.
As simple as the MVP concept is, it’s actually quite difficult to figure out what constitutes that core set of features. It requires a good deal of discussion and collaboration between the development team and the client to get it right. Three of the most common mistakes when building an MVP are:
Establishing the MVP feature set is tricky, and it takes a fair amount of experience to get it right. At AndPlus, we have the skills to identify the core features and build an MVP that reflects these features. An MVP based on a well-defined set of core features gives the client a clear idea of the otherwise hidden assumptions behind a project and course-correct the development effort at a stage when it is still inexpensive to do so. It’s an essential step in a robust development methodology…with no athletic ability required.