There are several frameworks for scaling Agile. Two of the leading options are Scaled Agile Framework (SAFe) and Nexus/Nexus+. These frameworks both build on scrum and provide new events and roles to handle the added complexities that are introduced when more resources are added to a project. Cross-team dependencies increase when scaling occurs, which causes communication to be more difficult and workflows harder to manage. Ken Schwaber identifies that successfully scaling agile occurs by reducing dependencies between teams. Frameworks like SAFe and Nexus work to reduce dependencies and improve productivity as groups scale.
In this article I will be discussing SAFe and is benefits. Next week I will dive into Nexus/Nexus+.
The Scaled Agile Framework or SAFe was created by Dean Leffingwell. SAFe is a freely available framework of patterns for Lean-Agile software and systems development and is designed for large organizations looking to scale their agile teams. SAFe v4.0, the current iteration, is implemented over four organizational levels: Portfolio, Value Stream, Program, and Team.
The foundation of SAFe is the Team Level. The teams are self-organizing/managing and are composed of a group of cross-functional resources. These teams use Scrum, Extreme Programming, or Lean/Kanban. Ideally, the Teams are composed of five to nine individuals that will deliver value in two week iterations. In a Scrum-based organization, at the team level, there are the typical roles of Product Owner, Scrum Master, UX designers, developers, and QA.
At the Program Level multiple teams work together to build a solution. They work to implement a Program Increment (PI). Best practices suggest that a PI is composed of four to six iterations (eight to twelve weeks). It starts with PI planning, followed by the iterations, and ends with one Innovation and planning iteration. These teams form an Agile Release Train (ART). The ART aligns the teams to reach a common goal and provides architectural oversight and domain expertise. Additionally, this level provides coordination between the teams. Note that a PI and release do not need to be synchronized because releases occur on-demand. The key roles of this level are the Release Train Engineer, System Architect/Engineer, and Product Managers.
- The Release Train Engineer (RTE) is responsible for steering the ARTs. The ARTs are mostly self-directed but they require some assistance. The RTE is the resource who supports program-level progress, manages risk, works to remove blockers, and helps to drive continuous improvement. They have background as program or development managers and work as servant-leaders. In addition, they know how to scale Lean and Agile and have experience with working on large programs.
- System Architects/Engineers are the resources who are responsible for the functional and technical architectural and engineering design of the solution. They play an active role in high-level requirements definition (functional and non-functional) by determining major components and the interfaces between them. In addition, they work with Product Management to help to align teams to the meet the roadmap.
- Product Managers are responsible for the overall Program Vision and Backlog. They work with the customer to understand their requirements and work to prioritize the backlog. They work closely with the Product Owner.
The Value Stream Level is new in SAFe v4.0. It is an optional level and is designed for those organizations building very large and complex solutions. These often require multiple ARTs and include the work of suppliers. It can be used by organizations building solutions that contain software, hardware, electronics, mechanics and more. This level builds on the Program Level while adding constructs such as an Economic Framework, Solution Intent, Solution Context, and Capabilities.
- The Economic Framework provides a set of decision rules that aligns the organization to the mission and the economic constraints of the solution.
- The Solution Intent is an information repository that stores what the system builders are creating and how they are going to build it. It is the single source of the truth and contains requirements, design, system architecture decisions, and the behavior of the system’s current and future state.
- Solution Context describes the way the solution will be used in its production environment. It defines key aspects of the production environment and its impact on usage, installation, operations, support, packaging and selling. Understanding this information helps the team set priorities and provide a valuable delivery.
- Capabilities describe the higher level behaviors of the solution. A Capability often takes multiple ARTs to complete and is a collection of features that were defined at the Program level. Capabilities are broken down into Features, which are split into Stories. They are then implemented in the iterations.
Key Roles for this level include the Value Stream Engineer, Solution Architect/Engineer, and Solution Manager.
- The Value Stream Engineer (VSE) is a similar role to the RTE but works at the Value Stream Level. They guide the work of all of the ARTs and Suppliers.
- The Solution Architect/Engineer role is the same as at the Program Level.
- The Solution Manager is responsible for guiding the solutions that compose the Value Stream. It is a similar role to the Product Manager.
The Portfolio Level is the highest level in the framework. It is similar to the Program Level/Value Stream Level but focuses on more strategic goals. This level provides the resources and processes required to build the solutions needed to meet these strategic goals. It is driven by Value Streams. Value Streams are SAFe’s method of providing a long term series of steps that provide a continuous flow of value to a customer. They are implemented through one or more Release Trains. These Value Streams provide the funding/budgeting for the resources to build the solution. This level provides the processes that are required to ensure that the investment meets the corporate strategic objectives.
The Portfolio Level has a bi-directional connection to the enterprise through providing strategic direction and receiving constant feedback. This feedback is received by measuring key performance indicators, reviewing the solution’s market fit, and reviewing SWOT analyses. Using this information, they work to redirect the team where necessary. The key roles at this level are Program Portfolio Manager, Epic Owner, and Enterprise Architect.
- The Program Portfolio Management (PPM) is responsible for the overall strategy, funding, program management and governance for a specific portfolio. In very large organizations there will be multiple SAFe Portfolios. Often PPM is assisted by a Project or Program Management Office.
- The Epic Owner has full responsibility for the Epic. It starts with definition & development of the business case, then it is worked through the Portfolio Kanban System. Once the Epic is approved, the owner works with the Value Streams to get it implemented. The Epics contain the organization’s large initiatives, which normally span across multiple Value Streams and ARTs.
- The Enterprise Architect works at the Portfolio Level and provides the strategic technical direction across all of the Portfolio’s Value Streams. They work with the business stakeholders and Solution & System Architects to ensure a common technical vision is shared across the Value Streams.
Below is the full diagram of SAFe V4.0:
Anexinet is a leading professional consulting and services company, providing a broad range of services and solutions around digital disruption, analytics (and big data), and hybrid and private cloud strategies. Anexinet brings insight into how technology will impact how business decisions will be made and how our clients interact with their customers in the future.
Mike Kushner, MKushner@anexinet.com