What is an MVP in an Agile context?
Over the last 17 years, Boldare has developed 80+ minimum viable products in Agile for clients all over the globe. We’re committed to digital product development using agile principles and frameworks, usually scrum. In this article, we cover the minimum viable product (MVP) essentials – the what, the why, the benefits and what makes MVPs agile.
Table of contents
What is agile working about?
Agile working is about empowering people and teams to do their best work, make the best decisions, and achieve the best possible results. It’s working with flexibility, a readiness for change, and a lack of unnecessary restrictions. It’s about moving away from rigid organizational structures and roles (no more project managers!) to release the whole team’s capacity for innovation and smart working.
Agile software development
Applying agile principles to digital product development brings us closer to MVPs. These days, using an agile framework is increasingly common for software development; especially if that development is done under unpredictable or potentially changeable circumstances (VUCA world). An agile methodology is focused on both the needs of the end product’s users and the business goals of the product’s owners.
An agile approach depends on testing and research to ensure the right product is being developed. At a minimum, the original product concept and the key features are tested - often with representative users - and the feedback is analyzed. Then we use the outcome to fine-tune the process of development. Testing is often done using feature-light ‘partial products’, such as prototypes and MVPs.
Agile software development is based on the principles derived from the Agile Manifesto. The first three emphasize focusing on the customer/user, welcoming changes to requirements, and delivering software frequently (for a deeper dive into all 12 Agile principles, check out this article: Everything you should know about the Agile Manifesto).
Boldare’s favored agile approach is the scrum framework – a way of working in short ‘sprints’ of around two weeks. Each sprint is focused tightly on a specific objective or feature to be developed. Each sprint results in a workable feature or partial product. And each sprint contains the possibility of completely changing the direction of development, if the circumstances require it.
Working agile
Let’s look a little closer at good working practices in agile software development…
- Iterative development - the product is viewed as a series of separate parts, to be developed and tested in turn, in a series of short sprints. Each sprint is subject to its own planning and review process, allowing the development team to assess the process and, where necessary, pivot to focus on newer, more relevant priorities.
- Close collaboration - product iterations are tested with users and customers, feedback is gathered and collated, and then used to adjust the planned development.
- Self-organizing teams – without a formal project manager role, the product team agrees its own product vision and roadmap for development with the client’s product owner representative (initially, by means of a product discovery workshop). Facilitated by a scrum master, the team continues to manage its own progress, reviewing work and objectives, and planning each sprint’s priorities.
- Daily teamwork and communication - as you’d expect from the self-organizing aspect, excellent communication between team members (and with key stakeholders) is essential to success. At Boldare, this means a general policy of openness and radical transparency, and taking full advantage of modern comms channels and management tools, such as Slack and Jira.
It’s becoming clear that developing a minimum viable product (or products) is a smart and agile way of working. The idea of building a product version with just one or two working features, and then testing those features in order to determine the next development priority, fits perfectly with an agile approach.
What is an MVP?
An MVP is a way of testing the product vision, specific product features, and the development process itself during that process.
An MVP is a version of the digital product which has just enough functionality to be tested and gather feedback about the product and its future development. It’s one of the phases in full cycle product development.
An MVP is ‘functional’ but it is not a fully-functioning product. It’s an experiment – you may think you know what the results of that experiment will be (your hypothesis) but you build it and test it to be sure, so that the next stage of digital product design and development is based on a firm foundation. An MVP is about testing the assumptions you’ve made about: the product, the basic concept, the needs and wishes of users, and so on.
What isn’t an MVP?
An MVP is not a product with just a few features missing. An MVP is not a way of cutting corners to produce an early release of your product (though it may lead to one); that’s just an incomplete app. An MVP is not a prototype – though you may build a prototype first, as a very early, low-investment test of your product idea. MVPs are not for startups only. They’re a viable, and often sensible, stage of development regardless of the product details or the maturity of the company wishing to develop it.
To quote Eric Ries, author of “The Lean Startup”, an MVP is:
…a version of a new product which allows a team to collect the maximum amount of validated learning about customers with the least effort.
To put it another way, an MVP is all about getting the maximum return from a minimum investment. Most important of all, an MVP is a step in the process of development. What follows is a full product, with features that fit (and appeal to) the intended market.
The benefits of MVPs
At a basic level, an MVP answers the question: are we headed in the right direction? But that’s not all…
An MVP will also tell you whether the product you’re developing is a best-fit solution for the problem you’ve identified for users. As for those users, an MVP can help you determine whether they really are the best target audience for the product. An MVP can also serve as an indicator of whether your final product is likely to sell.
Other potential benefits of incorporating MVPs in your agile software development include:
- Competitive advantage – the more efficient and resource-savvy your development process, the sooner you’ll be ready to release a full product, and the less it will cost to create.
- Certainty – perhaps nothing in life is 100% sure, but using an MVP in your digital product development you can be much more sure that the full product meets the right needs, and has an audience waiting for it.
- Future development – no product version is ever really ‘final’ (unless you decide to switch to something completely different); with agile development, even after the MVP, the full product that fits its intended market is only another stepping stone. The next likely step is to scale that full product, perhaps adding new or enhanced functionality or gearing toward a new or expanded market. The information you gather from building and testing the MVP is the foundation for future product iterations.
An MVP enables you to:
- test your product concept with minimal resources,
- engage with users as quickly as possible,
- maximize the information available to the development team,
- reduce wasted time and resources,
- build a product that users really want.
The MVP team
A team working on an MVP has specific requirements. It’s responsible for testing the product concept efficiently, creating a basic product version, and gathering and analyzing feedback that then influences the next stage of development.
Given these responsibilities, who do you need in your MVP team? That depends on the product and the challenge being tackled. At Boldare, we’ve found that the following areas of competence and expertise are generally needed:
- Frontend and backend development
- Visual design
- UX and UI design
- Business Analysis
- DevOps
- Scrum Master
There are three criteria that help when assembling an MVP team. First, include at least some people on the team who have worked together on a previous project. This familiarity will help the team as a whole move through the early stages of forming and storming as a group and be able to perform and deliver sooner. Second, a combination of hard and soft skills is favorable to success. It’s not just what they know, but also how they use (and share) what they know. Third, experience is important but a fresh perspective can be equally valuable.
The ideal MVP team takes (calculated) risks, is comfortable changing the direction of development, is business-oriented, never losing sight of why the client wants to develop the product in the first place, and does not strive for perfection. MVPs are not meant to be perfect. They’re meant to take you in the right direction, even if you weren’t facing it to begin with.
MVPs are agile
The process of building an MVP is an excellent way of getting into an agile mindset as it requires the team to work in specific ways that value:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
(These four core values are taken from the Agile Manifesto.)
When developing an MVP, the focus is on what people (users, owners, stakeholders, etc.) are telling you, creating something that functions, working together, and ensuring that the development process follows where the needs lead.
For more on building MVPs, including finding the right partner to build them with, check out Boldare’s MVP development services page.
Share this article: