Scaled Agile Framework®, also known as
SAFe®, is an enterprise-scale development methodology, developed by Scaled Agile, Inc.
Agile principles within a templated framework. Proponents of
SAFe claim that it provides a significant increase in employee engagement, increased productivity, faster times to market, and overall higher quality.
In this article, we'll dive deeper into what, exactly,
SAFe is, how it is typically implemented, and both the advantages and disadvantages of using the scaled agile framework methodology throughout the software development life cycle. Let's get to it!
Some more specific takes on SDLC include:
What is Scaled Agile Framework?
For a visual overview of
SAFe, the flowchart on the
homepage is a great tool. Yet, to really understand how
SAFe works, we need to dig a bit more into some of the fundamental components.
SAFe heavily relies on the core principles of
Agile, which it adapts to form the nine
SAFe Lean-Agile Principles:
- Take an economic view: Delivering the best value and quality to people and society in the sustainably shortest lead time requires a fundamental understanding of the economics of the system builder’s mission.
- Apply systems thinking: In
SAFe, systems thinking is applied to the organization that builds the system, as well as the system under development, and further, how that system operates in its end user environment.
- Assume variability; preserve options: Lean systems developers maintain multiple requirements and design options for a longer period in the development cycle. Empirical data is then used to narrow focus, resulting in a design that creates better economic outcomes.
- Build incrementally with fast, integrated learning cycles: Increments provide the opportunity for fast customer feedback and risk mitigation, and also serve as minimum viable solutions or prototypes for market testing and validation.
- Base milestones on objective evaluation of working systems: In
Lean-Agiledevelopment, each integration point provides an objective milestone to evaluate the solution, frequently and throughout the development life cycle. This objective evaluation assures that a continuing investment will produce a commensurate return.
- Visualize and limit WIP, reduce batch sizes, and manage queue lengths: Three primary keys to implementing flow are to: 1) Visualize and limit the amount of work-in-process so as to limit demand to actual capacity, 2) Reduce the batch sizes of work items to facilitate reliable flow though the system, and 3) Manage queue lengths so as to reduce the wait times for new capabilities.
- Apply cadence, synchronize with cross-domain planning: Cadence transforms unpredictable events into predictable ones, and provides a rhythm for development. Synchronization causes multiple perspectives to be understood, resolved and integrated at the same time.
- Unlock the intrinsic motivation of knowledge workers: Providing autonomy, mission and purpose, and minimizing constraints, leads to higher levels of employee engagement, and results in better outcomes for customers and the enterprise.
- Decentralize decision-making: Decentralized decision-making reduces delays, improves product development flow and enables faster feedback and more innovative solutions. However, some decisions are strategic, global in nature, and have economies of scale sufficient enough to warrant centralized decision-making.
Scaled agile framework attempts to incorporate the various lessons from
Agile methodologies into the basic principles, which are then used to bring substantial improvements to time to market, employee engagement, quality, and productivity.
Agile Release Trains
Agile Release Train, or
ART, is a fundamental concept within the scaled agile framework. The
ART is the primary value delivery method of
Agile Teams are a small group of individuals focused on defining, building, and testing solutions within a short time frame. An
ART is a self-organizing, long-lived group of
Agile Teams (a team of teams, if you will), whose purpose is to plan, commit, and execute solutions together. Built around the organization's core
Value Streams, an
Agile Release Train exists solely to deliver on promised value by building beneficial solutions for the customer.
Using tools like a common
Program Backlog, and
ART aims to complete goals within a specific period of time, known in
Program Increments (e.g. a 10 week period).
Program Level is another key concept within
SAFe. Simply put, the
Program Level is where development teams and other resources are applied to an important, ongoing development mission. Most
Program Levels -- such as teams, roles, and activities -- revolve around a specific
ART, ensuring a constant flow of incremental, value-generating releases.
There are two other
SAFe, which we'll discuss in a later section.
SAFe focuses on four fundamental, core values:
- Alignment: Fundamentally, global focus is more valuable than local focus. Individuals on a
SAFeteam should value the team's goals above personal tasks and responsibilities. Extending off that, members of
Agile Release Trainsshould emphasize vision and program objectives over team goals.
ARTsshould focus on
Value Streamobjectives over
Value Streamsfocus on value contributions toward the business portfolio. Finally,
Managementshould focus on establishing a mission, but should do so with as few constraints as possible.
- Built-in Quality:
SAFecontains a number of built-in quality practices to help ensure that every element, within each incremental build, is up to the same high standard of quality.
- Transparency: Large-scale development is a challenge. Transparency establishes trust throughout the project by sharing facts and progress openly across all levels. This extra level of trust enables decentralized decision-making and additional employee empowerment.
- Program Execution: Each
Agile Release Trainshould predictably generate value. The
SAFeprovides responsibilities and guidance to various member roles within
ARTs, to assist with the generation of value.
Given the sheer size and scope of
SAFe, proper implementation can be rather daunting, especially starting out. Since a full explanation of
SAFe implementation would require tens of thousands of words -- and because more detailed information is available on the official website -- we'll cover a brief overview of implementation here:
- Train Implementers: Due to the sheer scope and challenge required in adopting
SAFe, most organizations will need a combination of internal and external mentors and coaches. These people should be capable of easily teaching and delivering
SAFetechniques to others throughout the organization.
- Train Executes, Managers, and Leaders: The initial batch of
Implementersshould first focus on training all executives, managers, and leaders. Once these fundamental team members understand the
SAFeprinciples, and implementation techniques, the process will become much smoother for the entire organization.
- Train Teams: Individuals should initially be organized into
Agile Teams, who can then all be trained on the various
Agile Release Trains: Finally, once the organization has been properly trained, it's time to group
Agile Teamstogether into
ARTs, and then generate models for objective planning, program execution, program increment planning, and all the other components required for a successful
Agile Release Train.
SAFe defines three levels within the organization:
Portfolio Level: Focuses on the
Portfolio Vision, creating
Investment Themeswith assigned funding, and makes use of
Epicsare also devised at this level, which contain significant initiatives to help guide value streams toward the larger portfolio goals.
Program Level: As we discussed earlier,
Program Levelfocuses on specific business value streams. One key aspect of
Program Levelis the process of breaking down
Epicsinto smaller features that form the
Team Level: At the
Team Level, features from the
Program Levelare broken down further into
Stories, forming the
Scrumis then utilized, over the course of typical iteration lengths (2 weeks), to complete the features of
Advantages of SAFe
Regardless of any possible downsides, there are clearly a number of positive benefits to using
Agilepractices into traditional corporate organizations: Since
Agileprinciples, this promotes a dramatic cultural shift for many organizations looking to adopt
SAFe. While it doesn't require actual restructuring within an organization,
SAFedoes require the creation of "virtual teams," who can then be assigned to
Agile Teams, and from there to
Agile Release Trains, in order to fulfill business goals.
- Emphasizes short term deliveries: Most traditional organizations may have projects with delivery goals that are months if not years in the future.
SAFefocuses on a default period of
10 weeksfor most
Agile Release Trains, which emphasizes regular feedback loops and adaptive planning.
- Free of charge: While
Scaled Agile, the company behind
SAFe, does offer numerous training courses to help individuals or organizations get up to speed on
SAFe, at the fundamental level, the use of
SAFeis free of charge.
- Advocates long-lived teams: In many organizations, teams are created only for the length of a single project, after which time they are disbanded.
SAFepromotes teams that remain together for long periods of time, scaling as necessary across numerous projects.
- Suited for large organizations:
SAFefocuses heavily on supporting very large organizations, through both the practices and implementation itself, and through the availability of training and courses from
- Emphasizes people over technology: Due to the reliance on
SAFeheavily focuses on the importance of people and their knowledge over technology. This recognition of the power and decision-making skills of individuals often leads to products which are better-suited for the customer.
Disadvantages of SAFe
SAFe will contend that the methodology suffers from a few flaws, and depending on the size and needs of your organization, would argue that other methodologies may better serve you throughout the software development life cycle:
- Pushes certification and training: The
SAFewebsite, which is basically the only real source of information on
SAFeand proper usage, places a heavy focus on pushing certification and training courses to organizations looking to implement
SAFe. Many critics maintain that this focus on revenue takes away from the potential growth and implementation of the methodology, compared to other, more open methods.
- Highly prescriptive:
SAFeheavily emphasizes the use of its particular practices and rules, without leaving much room for customization on the part of the organization. This strictness can be rather stifling, unless organizations are willing to swallow the whole
- "Manager-oriented" Agile: Many critics argue that
SAFefails to truly implement
Agileprinciples, but instead gives the illusion of true
Agileprinciples by layering
Agileon top of a pre-existing organizational hierarchy. In short, this allows managers and executives to make many of the fundamental decisions that trickle down through
ARTs, which must then be transformed into
Storiesthat are actually implemented by the developers and other team members who truly understand the issues first-hand.
SAFe and Scaled Agile Framework are registered trademarks of Scaled Agile, Inc.