Rolling wave planning (also called just-in-time planning) is the practice of delaying product decisions until you are in the best position to make them. This doesn’t mean you don’t plan in advance; rather, you make more informed, actionable decisions as the product evolves and more knowledge becomes available. Essentially, when you use rolling wave planning, plan until you have visibility, implement, and then re-plan.
Here are the reasons why rolling wave planning is essential in mobile app development:
Rolling wave planning gives you the ability to gain a better understanding of the direction of the product; this puts you in the best position to analyze, understand, and act upon knowledge that wasn’t available at project kick-off.
As development progresses, you have a tangible, demonstrable version of the product rather than a high-level requirements document. This allows you to make better product decisions because you have a clearer idea of your mobile app’s functionality and appearance.
When you plan each sprint, you take your progress and learnings – knowledge you didn’t have in the initial conception phase – into consideration to drive the next steps in the development of the product.
The issue with time-intensive, detailed upfront planning is that these plans often change as the product is developed. Early in product development, you make assumptions which are often disproved as more information becomes available. You realize certain features may not be right for the product; objectives or goals may shift, or you may need to pivot.
This results in budgetary risk. Time and resources are spent conceiving a detailed plan that needs to be reworked, and it’s more difficult for teams to adapt to changing needs. With rolling wave planning, you are able to adjust your deliverables on the go as the product evolves, without costly change requests. Your team and the plan for the product remain flexible throughout product development.
DOWNTIME is an acronym that is used to describe the different kinds of waste in product development.
When you have downtime, you’re essentially wasting product development. Rolling wave planning allows teams to minimize this waste, particularly overproduction, waiting, non-utilized talent, and excess processing.
Since it encourages delaying product decisions until you’re in the best position to make them, you don’t build features or functionality that are unnecessary; you can reduce waiting and non-utilized talent because you plan sprints based on the progress of the product and team capacity; and you better understand what is necessary to achieve your desired outcome.
As the project progresses, the risks, assumptions, and milestones originally identified become more defined and reliable. Perhaps most importantly, rolling wave planning provides you the flexibility to pivot if necessary. If you need to adjust criteria for minimum marketable features or a minimum viable product, it can be done as the project progresses without time and resources wasted on re-planning. You are able to review and assess each increment, allowing you to identify if you need to change the direction of the product. If you need to pivot, you plan the steps toward doing so for the next sprint, avoiding costly change requests and the time/resources required having to plan over again.
Rolling wave planning is an integral part of product development because it allows flexibility, reduces risk, increases efficiency, and ultimately results in better products. That’s why it’s built into our agile development process, and why any product development team that uses agile principles needs to practice it.