One of the keys to successful mobile, web and cloud application development is understanding, managing, developing and deploying a minimum viable product or MVP. In the software industry we understand the importance of MVP. Getting a product in the hand of users is critical. We often say “There is nothing better than user feedback to make a better product!” However if your in the business of developing mobile and cloud applications you customer may not understand MVP. Your customer needs to understand MVP. It’s your job to not only educate them but also to guide them to MVP.
To ensure everyone is on the same page MVP is the absolute bare minimum application that you can develop that will have an immediate impact for your customer while breeding foundational success for future versions of the application.
Working with hundreds of customers over the years defining and adhering to MVP has been one of the biggest challenges I’ve encountered managing the development of mobile and cloud application solutions. The reason, the customer ultimately wants the big picture application – they want the app to be in the cloud, integrated with accounting and back-end databases, provide key business intelligence, empower field users, streamline the process for our customers, etc.. Separating the big picture app from MVP requires discipline on the part of the customer and the development team.
Yes, we need to understand the long term vision of the application. But your job is to work with your customer to identify, design and manage to MVP. When I work with customers I always ask them to outline the big picture – highlighting the business problems and customer use cases they are trying to solve. Once I have that understanding I then work with them to define MVP. Remember the customer is not buying software, use cases and agile methodology, they are buying the capability to do something or do it better. They may have thought through this but in my experience most have not. I always ask “What problem are you trying to solve? What are the set of core capabilities that have to be in the first version to solve this problem?”
This can be challenging. I like to illustrate it this way.
Ideally we all want the high speed, multi-user vehicle appealing to the broadest audience possible. However, starting with the skateboard version of the application provides capabilities that solve an immediate problem, fit an isolated market or address a problem within a company division. While not the dreamed of solution MVP provides core capabilities that solve an immediate problem and create a positive impact. The benefit of introducing the MVP is that once the application is the hand of the users you begin an invaluable feedback process that helps more finely tune versions 2, 3 and 4 of your application. Managing to MVP ensures a proper and natural evolution of the software. You will discover that each version of the application will have it’s own MVP criteria providing additional capabilities that will appeal to a broader group of users.
Continually reigning in customer and development team expectations to the core components of the MVP is key to your application deployment success. MVP has to be the focus of every discussion, every strategy session, every architecture design meeting and after every application testing scenario. If you don’t customer expectations tend to bleed into future versions and the project is delayed and customers get frustrated.
I’ve learned that documentation is critical to delivering MVP. Document the big picture application as well as the MVP. Think of it as your blueprint that focuses on the immediate build requirements, that can stand alone, but shows future build requirements that you need to consider. Your application blueprint will protect the short term goal of MVP while planning for the bigger solution.
This became very evident in a recent project our team completed for one of our automotive customers. Our customer had a vision for MVP but had difficulty mentally separating MVP from the enterprise solution that was the ultimate goal. Every time we met they would say “this is great but what about these features?” Totally disregarding what had been accomplished and moving towards the bigger picture. Fortunately we had not only documented MVP and the bigger picture application, we had prioritized the feature list of each. Because of our documentation we were able to demonstrate that we were on track and their requests were bleeding outside of the approved MVP capabilities they had helped defined and prioritize. Defining and documenting the customer MVP not only kept the project on track it also kept expectations in check.
Zenware Inc. is a Boise Idaho based company that specializes In custom mobile software development, custom iOS development, custom Android development, iPad software development, iPhone software development, custom web development, web hosting and SaaS based work order management software. We also have a powerful line up of off-the-shelf mobile cloud solutions; RoadFS™, Harvest Bin™ and ZWarehouse