The impression that ‘our problems are different’ is a common disease that afflicts management the world over. They are different, to be sure, but the principles that will help to improve the quality of product and service are universal in nature.
—W. Edwards Deming
SAFe is based on nine immutable, underlying Lean and Agile Principles. These tenets and economic concepts inspire and inform the roles and practices of SAFe.
Why the Focus on Principles?
Building enterprise-class software and cyber-physical systems is one of the most complex challenges our industry faces today:
- It requires millions of lines of software
- It combines complex hardware and software interactions
- It crosses multiple concurrent platforms
- It must satisfy demanding and unforgiving Nonfunctional Requirements (NFRs)
These are just a few of the challenges system builders face daily.
And, of course, the enterprises that build these systems are also increasingly sophisticated. They are bigger and more distributed than ever. Mergers and acquisitions, distributed multinational (and multilingual) development, offshoring, and rapid growth are all part of the solution. But they’re also part of the problem.
Fortunately, we have an amazing and growing body of knowledge that can help. It includes Agile principles and methods, Lean and systems thinking, product development flow practices, and Lean processes. Thought leaders have traveled this path before us and left a trail in hundreds of books and references to draw on.
The goal of SAFe is to synthesize this body of knowledge, along with the lessons learned from hundreds of deployments. This creates a system of integrated, proven practices that have improved employee engagement, time-to-market, solution quality, and team productivity. Given the complexities discussed earlier, however, there’s no off-the-shelf solution for the unique challenges each enterprise faces. Some tailoring and customization may be required, as not every SAFe recommended practice will apply equally in every circumstance. This is why we work hard to ensure that SAFe practices are grounded in fundamentally stable principles. That way we can be confident they’ll apply in most situations.
And when they don’t, the underlying principles will guide the teams to make sure that they are moving continuously on the path to the goal of the House of Lean: “shortest sustainable lead time, with best quality and value to people and society.” There is value in that, too.
SAFe practices are based on nine concepts that have evolved from Agile principles and methods, Lean product development, systems thinking, and observation of successful enterprises. Each is described in detail in an article by that principle’s name. In addition, the embodiment of the principles appears throughout the Framework. They are summarized below.
Delivering the best value and quality for people and society in the shortest sustainable lead time requires a fundamental understanding of the economics of the system builder’s mission. Lean system builders strive to make sure that everyday decisions are made in a proper economic context. The primary aspects include developing and communicating the strategy for incremental value delivery and creating the Value Stream Economic Framework. This defines the trade-offs between risk, Cost of Delay (CoD), and operational and development costs, while supporting decentralized decision-making.
W. Edwards Deming, one of the world’s foremost systems thinkers, constantly focused on the larger view of problems and challenges faced by people building and deploying systems of all types. This includes manufacturing, social, management, and even government systems. One of his central conclusions was that the problems faced in the workplace were the result of complex interactions that occurred within the systems the workers used. In other words, it’s a system problem, not a people problem, which requires systems thinking to solve it. This principle describes how systems thinking can be applied to the system you are building, the organization building it, and to the entire value stream producing it.
Traditional design and life cycle practices encourage picking a single requirements-and-design option early in the development process (ex., in the ‘cone of uncertainty’). If the starting point is wrong, however, then future adjustments may take too long and lead to a suboptimal long-term design. This is why Lean system developers maintain multiple requirements and design options for a longer period in the development cycle. Empirical data is then used to narrow the focus, resulting in a design that creates better economic outcomes.
Lean system builders develop solutions incrementally in a series of short Iterations. Each yields an integrated increment of a working system. Subsequent iterations build on the previous ones, allowing fast customer feedback and mitigating risk. They also serve as minimum viable solutions or prototypes for market testing and validation. Also, these early, fast-feedback points allow the system builder to pivot as needed to an alternate course of action.
System builders and customers have a shared responsibility to assure that investment in new solutions will deliver economic benefits. The sequential, phase-gate development model was designed to meet this challenge. But experience has shown that it does not reduce risk as intended. Conversely, in Lean-Agile development, each integration point provides an opportunity to evaluate the solution frequently and throughout the development life cycle. This objectivity provides the financial, technical, and fitness-for-purpose governance needed to assure that continuing investment will produce commensurate return.
Lean system builders strive to achieve a state of continuous flow, in which new capabilities move quickly and visibly from concept to cash. The three keys to implementing flow are:
- Visualize and limit the amount of work in process (WIP) to limit demand to actual capacity
- Reduce the batch sizes of work items to facilitate reliable flow through the system
- Manage queue lengths to reduce the wait times for new capabilities
Cadence creates predictability and establishes a rhythm for development. Synchronization causes multiple perspectives to be understood, resolved, and integrated simultaneously. In the presence of product development uncertainty, development cadence and synchronization—coupled with periodic cross-domain planning—provide Lean system builders with the tools they need to operate effectively.
Lean-Agile Leaders understand that incentive compensation cannot motivate ideation, innovation, and the engagement of knowledge workers. Individual management-by-objectives (MBO) practices cause internal competition and destroy the cooperation necessary to achieve the larger system aim. Providing autonomy, mission, and purpose, while minimizing constraints, leads to higher levels of employee engagement and results in better outcomes for customers and the enterprise.
Achieving fast value delivery requires fast, decentralized decision-making, as any decision escalated introduces delay. In addition, escalation can lead to lower-fidelity decisions due to the lack of local context; plus, changes in fact patterns may occur during the wait time. Decentralized decision-making reduces delays, improves product development flow, and enables faster feedback and more innovative solutions. However, some decisions are strategic and global, and have economies of scale that warrant centralized decision-making. Since both types of decisions occur, creating an effective decision-making framework is a critical step in ensuring fast value flow.
Learn More Leffingwell, Dean. Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise. Addison-Wesley, 2011.
Last update: 22 October, 2017