- Principle #1: Take an economic view
- Principle #2: Apply systems thinking
- Principle #3: Assume variability; preserve options
- Principle #4: Build incrementally with fast, integrated learning cycles
- Principle #5: Base milestones on objective evaluation of working systems
- Principle #6: Visualize and limit WIP, reduce batch sizes, and manage queue lengths
- Principle #7: Apply cadence, synchronize with cross-domain planning
- Principle #8: Unlock the intrinsic motivation of knowledge workers
- Principle #9: Decentralize decision-making
Principle #7: Apply cadence, synchronize with cross-domain planning
Cadence and synchronization limit the accumulation of variance.
—Don Reinertsen, Principles of Product Development Flow
Solution development is an inherently uncertain process. If it weren’t, the solutions would already exist, and there would be no room for the next generation of innovations. This risk conflicts with the need for businesses to manage investments, track progress, and have enough confidence in future outcomes to plan and commit to a reasonable course of action.
Lean-Agile teams function in a ‘safety zone,’ where enough uncertainty actually provides the freedom to pursue innovation, while sufficient confidence allows the business to operate. The primary means to achieve this balance is through the knowledge of the current state gained in cadence, synchronization, and cross-domain planning.
Cadence
Cadence provides a rhythmic pattern, the steady heartbeat of the process. It makes routine everything that can be routine, so knowledge workers can just focus on managing the variable part of solution development. By transforming unpredictable events into expected events, cadence offers many additional benefits:
Wait times become predictable. If the work you’re waiting for isn’t in this Program Increment (PI) timebox, it likely will be in the next one.
By facilitating planning, cadence enables more efficient use of people and resources.
It lowers the transaction costs of key events, including planning, integration, demos, feedback, and retrospectives.
Synchronization
Synchronization allows multiple perspectives to be understood, resolved, and integrated at the same time (Figure 1). As a result, it:
Pulls the different assets of a system together to assess solution viability
Aligns the development teams and business to a common mission
Integrates the customers into the development process
Figure 1. SAFe cadence and synchronization harmonics
Taken together, cadence and synchronization—and most importantly, the associated activities—help teams proceed confidently despite the risks described previously.
Synchronize with Cross-Domain Planning
Of all the events that occur, one is the most critical: Periodically, all stakeholders gather for cross-domain planning and synchronization. This event, known as PI Planning, is the fulcrum upon which all other events rest. It also gives the teams an opportunity to present and review their true knowledge of the current state.
The PI Planning event serves three primary purposes:
It assesses the current state of the solution. An integrated, solution-level demonstration and assessment determines the objective knowledge of the current state. This typically occurs just before the planning event.
It realigns all stakeholders to a common technical and business vision. Based on the current state, business and technology leaders reset the mission, with the minimum number of constraints (Principle #8 and Principle #9). This aligns all stakeholders to a common vision, in both the near term and the long term.
It facilitates planning and commits teams to the next program increment. Based on the new knowledge, the teams plan what they can accomplish in the upcoming timebox. Sharing the planning and control empowers teams to create the best possible plans to achieve the best possible solution within the given constraints.
Developing large-scale systems is fundamentally a social activity, and this planning event provides a continuous opportunity to build and improve the social network.
There’s no cure for the inherent uncertainty of solution development. If there were, it would surely be worse than the disease. However, applying cadence and synchronization, along with periodic cross-domain planning, provides the tools needed to operate in the safety zone.