A lot of organizations are making a transition from traditional waterfall methodology to agile practices. Yet, a common complaint is that agile development doesn’t scale well. There are a number of agile frameworks that are now available for large-scale enterprise projects. This article focuses on one of the most popular large-scale agile frameworks: Scaled Agile Framework (SAFe). Let’s dive deeper into what exactly Scaled Agile Framework is and how it is typically implemented.
Transition to Agile
Currently, Agile is a well-known development concept and the approach of choice for many development teams, especially those trying to create an environment of continuous delivery. Though everyone is going agile these days, a common complaint is that it doesn’t show satisfactory results at the enterprise level. It poses a lot of issues like:
- Difficulty in coordinating multiple teams working on a large-scale project
- Coping with longer planning horizons
- Too many team members to collaborate and manage
- Increased effort in keeping track of multiple sources of requirements
- Un-mapped dependencies creating unexpected issues and obstacles
There is a lot of scaling agile frameworks that look to solve the problems associated with agility at scale. The three leading frameworks are Large-Scale Scrum (LeSS), Scaled Agile Framework (SAFe) and Disciplined Agile (DAD). In this article, our main focus is on the Scaled Agile Framework.
What is the Scaled Agile Framework?
Scaled Agile Framework, also known as SAFe, is an enterprise-scale development framework, developed by methodologist Dean Leffingwell. It uses a combination of existing lean and agile principles and combines them into a templated framework for large-scale projects.
SAFe was developed in the year 2011 to help software development teams bring better quality products to market at a faster pace. It focuses on four fundamental values, which are:
Alignment
It is necessary to keep up with rapid change, disruptive competitive forces, and geographically distributed teams. More importance should be given to enterprise business objectives over team goals.
Built-in Quality
It ensures that every element and every increment of the build are up to the same high standard of quality throughout the development lifecycle. Quality is very important, without it, the organization will likely operate with large batches of unverified, unvalidated work.
Transparency
Developing products in large scale is not an easy task. To achieve best results transparency within the organization is really important. Transparency & trust ensure that the business and development can confidently rely on another to act with integrity, particularly in times of difficulty.
Program Execution
Naturally, nothing matters if teams can’t execute and continuously deliver the best results. That is why SAFe places an intense focus on working systems and business outcomes. Though the transition to agile is common, often teams struggle to deliver more substantial amounts of solution value, reliably and efficiently.
The Scaled Agile Framework attempts to incorporate all these core values to bring substantial improvements to delivery time, employee engagement, work productivity and mainly, quality of the product. Now that you have an idea of what SAFe is, let’s dig a little deeper to know more.
Levels of Scaled Agile Frameworks
SAFe is a template to scale agile to large organizations. It has four levels, which are:
Let’s learn more about each of these levels.
Note: Key SAFe Terms
- Agile Teams – They are a small group of individuals focused on defining, building and testing solutions within a short time frame.
- Agile Release Train (ART) – It is a self-organizing, long-lived group of agile teams whose purpose is to plan, commit, and execute solutions together. They exist solely to deliver on promised value by building beneficial solutions for the customer.
Team Level
At the team level, the techniques outlined are those used in the Scrum, delivering product increment (working software) every two-week sprint cycle. However, teams can also work in Kanban or Scrumban. The Team Level contains the roles, artifacts, events, and processes which agile teams build and deliver.
- The ART roles and functions, including Release Train Engineer (RTE), Product Management, System Architect, etc support all the teams on the train
- Agile teams are fully capable of defining, building, testing and deploying stories from their product backlog
- Teams use ScrumXP or Kanban to deliver high-quality products, routinely producing a System Demo (integrated view of new features) for the most recent iteration
- Each team has five to nine members & includes all the roles necessary to build a quality increment
- Roles involved are, an Agile team (a cross-functional ScrumXP or Kanban), Development Team, Scrum Master & Product Owner
- Identifying, prioritizing, scheduling, implementing, testing, and accepting the stories are the primary requirements of management work at the team level
- The team applies best practices like Built-in Quality, to ensure that the product meets appropriate quality standards throughout the development
The SAFe team level is a vital part of the Program Level. But, what exactly is the program level?
Program Level
At the program level, SAFe works the same as at team level, except at large scale. As in, it refers to multiple teams working together under the leadership of the program management team, and delivering value in the concept of Agile Release Train. It has program level teams, roles, and activities that deliver a continuous flow of value.
- Each ART has 5 to 12 Agile teams and they work in a time boxed approach where the product increments are 8 to 12 weeks long
- Product increment has four development iterations, followed by one innovation and planning iteration
Here’s how a typical program level works.
Step1: Product Manager determines the content of a potentially shippable increment by means of a Program Backlog
Step2: The product increment starts with Product Increment Planning (PI Planning), a cadence based, face-to-face planning, aligning all the teams on the ART to the mission.
Step3: Then the teams break up to discuss what they can do within their group while aligning with other teams. They basically plan and discuss a number of sprints ahead on the feature level, unlike scrum does (Scrum only plans one Sprint ahead).
Step4: The commitments of the teams and dependencies between teams are mapped on a program board.
Step5: Scrum Masters and Release Train Engineer, who is the chief Scrum Master for the train, facilitate programs through various mechanisms like program kanban, inspect & adapt workshops, etc. to discuss the progress of the mission. This completes four development iterations.
Step5: Next up is 5th iteration. It is for hardening, innovation, and planning. Hardening involves final verification and testing. Innovation is all about exploring new ideas. Planning entails maintenance on the release train and the planning for the next cycle of 10 weeks.
This level also has an architecture runway that consists of existing code, components, and technical infrastructure to support product features. Next up we have an optional level called Value Stream Level.
Value Stream Level
The Value Stream Level is an optional level intended for builders of large and complex solutions, that typically require multiple ARTs as well as the contribution of suppliers. It offers a number of features that are new in SAFe 4.0.
Note: Each value stream is a long-lived series of system definition, development, and deployment steps used to build and deploy systems that provide a continuous flow of value to the business or Customer.
- The main purpose is to describe Lean-Agile approaches to define, build, and deploy large, mission-critical solutions
- Those approaches help to deal with the challenge of defining, building, and deploying large, mission-critical solutions at scale. Doing so requires additional constructs, artifacts, and coordination
- Usually, failure of the solution, or even a subsystem, has unacceptable economic and societal consequences
- This level contains
- An Economic Framework which provides financial boundaries for Value Stream decision-making
- A Solution Intent as a repository to keep track of intended and actual solution behavior
- A Solution Context, which describes the way the solution fits in the deployment environment
- Capabilities that describe the larger behaviors of the solution
- This level is organized around Program Increments, which are synchronized across all the Agile Release Trains in the value stream
- To discuss the progress and plan things, this level also has Pre– and Post-PI Planning meetings and the Solution Demo
- Also provides additional roles like Solution Management, Solution Architect/Engineering, and the Value Stream Engineer
Lastly, we have a portfolio level.
Portfolio Level
The Portfolio is the highest level of concern in SAFe. It provides the principles, practices, and roles needed to initiate, organize and govern a set of development value streams. Defines strategy and investment funding for the value streams and their solutions.
- It provides Agile portfolio operations & Lean governance for the people and resources needed to deliver solutions
- Provides basic constructs needed for organizing the Lean-Agile Enterprise around the flow of value via one or more value streams
- Each of these values streams develop the systems and solutions necessary to meet the strategic intent
- Delivers the basic budget and necessary governance mechanisms, including Lean Budget Guardrails
- Ensure value streams and its trains focus on building the right things with the appropriate level of investments
Each SAFe portfolio has a two-way connection to the enterprise.
- The first way is to provide the strategic themes that guide the portfolio to the larger, and ever-changing business objectives. These strategic themes connect the portfolio to the evolving enterprise business strategy, provide business context for decision-making within the portfolio and affect investments in value streams and serve as inputs to the portfolio, solution, and program backlogs. Strategic themes are not created by the business in isolation, rather, key portfolio stakeholders participate in that process.
- The second direction provides a constant flow of feedback from the portfolio back to enterprise stakeholders. This includes value stream key performance indicators, qualitative assessments of the current state of the portfolio’s solutions for market purpose, along with any strengths, weaknesses, opportunities, and threats that are present at the portfolio level.
This way Scaled Agile Framework acts as an interactive knowledge base for implementing agile practices at enterprise scale. It offers four flavors of SAFe configurations.
SAFe Configurations
SAFe supports the full range of development environments with four various configurations,
Essential SAFe
The Essential SAFe configuration is at the heart of the framework and is the simplest starting point for implementing SAFe. It is the basic building block for all other SAFe configurations and describes the most critical elements that are required to make use of the majority of the framework’s benefit. Consists of Team level and Program Level of SAFe.
Large Solution SAFe
This configuration is for developing the largest and most complex solutions that typically require multiple Agile Release Trains (ART) and suppliers, but do not require portfolio-level considerations. Commonly used in industries like aerospace, defense, automotive, etc. Consists of Team level, Program level, and Large Solution Level. Solution level helps enterprises that face the biggest challenges—building large-scale, multidisciplinary software, hardware, and complex IT systems.
Portfolio SAFe
Portfolio configuration helps to align portfolio execution to enterprise strategy and provides the basic constructs for organizing the Lean-Agile Enterprise around the flow of value. Lean-Agile budgeting empowers decision-makers, kanban system provides portfolio visibility and WIP limits, enterprise architecture guides larger technology decisions. And objective metrics support governance and improvement. The flow of value is delivered via Epics. It consists of Team level, Program level, and Portfolio Level.
Full SAFe
It is the most comprehensive version of the framework and consists of all the four levels of SAFe – Team level, Program level, Portfolio Level, and Value Stream Level. Full SAFe supports enterprises that build and maintain large integrated solutions, that require hundreds of people or more, and includes all levels of SAFe. At times, in largest enterprises, multiple instances of various SAFe configurations may be required to function and deliver the product.
In simple terms, the Scaled Agile Framework is designed not so much as a single framework, but as a broad knowledge base of proven best practices that teams have used to deliver successful software products. It has its own plus points and negative points.
Advantages of Scaled Agile Framework
- Offers the opportunity to tap into a relatively lightweight framework that creates efficiency in software development while maintaining the centralized decision-making necessary at the enterprise level
- Helps teams maintain alignment with business goals and achieve greater transparency
- Helps cross-functional teams collaborate more effectively
- Highly suitable for large organizations
- Puts more emphasis on people over technology
Although SAFe brings many benefits to the table, it also comes with its own drawbacks.
Disadvantages of Scaled Agile Framework
- SAFe takes too much of a top-down approach, rather than a team-based approach
- Heavily emphasizes the use of its particular practices and rules, without leaving much room for customization on the part of the organization
- Additional layers of oversight, administration, and coordination of SAFe make it resemble the waterfall approach that many teams are trying to leave behind
Bottom line, SAFe is created to cater to large organizations with large solutions, particularly by making it possible for organizations of a certain size to take a more agile approach to software development. However, it’s clear that SAFe has several drawbacks, of which teams should be aware of and plan accordingly.
That’s it, folks!. With this, we have reached the end of the article. You might feel overwhelmed with the number of key terms used here. If yes, you can refer to this Scaled Agile Framework Glossary.
Make sure you are well versed with the Scrum terminology before you start using it.
Got a question for us? Please mention it in the comments section of this “What is Scrum?” article and we will get back to you as soon as possible.