There are many different approaches to creating something new or solving a problem
The "Traditional way" of doing things was:
Doing a lot of research
Trying to predict aaaall the potential challenges in advance
Trying to figure out all solutions to all challenges in advance
Reviewing and rethinking to ensure that you haven't missed anything
Finally start building it
There are 2 key problems with this approach.
It takes an awful lot of time in planning stages (1-4) and the reality might be very different when you start building. This is especially true in fast-paced environments like our team.
The first time you get real feedback, from the people that will be using what you are creating (the customers) is after you have completed step 5. This only works if your predictions on steps 1-4 were simply amazing - something that doesn't happen very often.
What usually happens is you create something that has flaws that you didn't think of, not because you are stupid, but because the world is quite complex. These flaws weren't easy to spot at all at the research and design phase but are obvious when the Customers first uses the product.
As a team we follow the Lean Methodology with the Build-Measure-Learn approach.
What that means is that we start by trying to understand the end users/customers need and then:
Build the Minimum Viable Product (MVP) which is the most basic version of the product that satisfies part of the customer's needs
Give it to the end user/customer and see how it goes (the Measure stage)
Learn from the Feedback we get and build the next iteration (version) of the product.
The Minimum Viable Product is something that is often misunderstood so we`ll try to define it more clearly.
The MVP must be a Minimum Lovable Product
Yes the MVP is the most basic version of a Product. That means that it's a product with a very narrow scope, but the solution provided by the product must be a damn good one - a lovable one.
The MVP must be a Minimum Testable Product
The key goal of the MVP is to build something as fast as possible, and give it to the customer to use. That's the only way we can get feedback and learn from it
Start by building a Scooter
The image below is perhaps the best explanation of the differences of the traditional approach , and the lean/agile approach our team follows.