Scaled Agile Framework SAFe Tutorial:
In the last tutorial, we introduced you to the concept of the Three Amigo Principle which has proven to be very beneficial for delivering the right solution at a faster pace with strong feedback loops.
If you haven’t already gone through it, check out the tutorial as it is a must read for all in order to enter the Agile Space.
In today’s world of top-notch technologies and delivery mechanisms, it is very important to be able to adapt to the changing world. In order to succeed, the organization must be able to cope up with the rapid changes in the way in which they develop and deliver the value to their customers.
With most of the organization’s moving toward Agility, it has become very crucial to scale and uphold a competitive edge. This is when Scaled Agile Frameworks come into the impression.
In this SAFe tutorial, we are going to discuss the Scaled Agile Framework in detail. We are also going to lay emphasis on the need to bring in SAFe as in understanding the overall problem statement and finally we will see how to bring SAFe in motion.
Let us start with the ball rolling…
SAFe stands for Scaled Agile Frameworks. SAFe is provided by the company Scaled Agile. It was created in 2011, with Dean Leffingwell as the creator and co-founder.
It is made to help enterprises to scale lean and agile software development processes. Like LeSS, DAD, and Nexus, SAFe is also one of those who is trying to find a solution to the problems faced during scaling up the team.
What You Will Learn:
Earlier when we use to build large and complex systems the results of the outcome were that we were not able to deliver on time and the quality was not that great and as a result, the customer experience was also not great, which is really bad!
SAFe tries to address these issues and companies who have adopted these frameworks have shown amazing results.
What is SAFe?
The Scaled Agile Framework is a framework that provides four different layers of agile-lean adoptions.
The lowest level is called TEAM level where multiple teams are doing on the scrum, Kanban or any other agile methodology using the fundamentals of XP programming’s, delivering value at the team level.
Level two that is going from top to bottom is PROGRAM, it refers to the teams working together under the leadership of the program management team, and delivering value in the concept of Agile release train.
The new layer which is got added in SAFe 4.0 is VALUE STREAM, it is nothing but a combination of program teams and agile release trains that are responsible for providing a significant amount of value delivered to the customers.
And right at the top of it, we have our next level called Portfolio level which is responsible for aligning and seeing how value will be delivered by the three levels below portfolio.
Safe supports smaller-scale solutions employing 50 – 125 practitioners, as well as complex systems that require thousands of people.
It is freely revealed and is an online knowledge base with proven success records. It is used by many organization’s which are involved in complex software development. SAFe also talks about challenges faced in complex software development, it also talks about various roles, responsibilities, artifacts and various activities involved at each layer.
Why Scaled Agile Framework?
Nowadays, new software and systems are holding up the maximum of market attention everywhere. Bringing in the innovative ideas and new ways of working very frequently thereby are out casting the traditional and aged systems.
Having said that, the organizations who realize and fathom the exigency of moving ahead and adapting the change sooner are going to succeed.
For developing the software systems, we need to keep up the pace with complexities and dependencies that are arising within an interconnected environment. And the things become even more complex when technologies like Bigdata, social media, mobile etc. come in the picture.
The organizations are expected to keep up the pace with new technologies and systems coming in and also to maintain the legacy systems who have been there for years.
In a traditional world, organizations used the waterfall development model to develop the software.
This software was developed in a sequential mode i.e. the next phase could start only when the previous phase has been completed. This mode of working did work splendidly for the ancient times but it is no longer yielding the desired results for the environment where the innovation and development are at par.
Thus, the organizations working in sequential mode will battle to scale and grow.
Some of the common challenges that we face while developing a software in a waterfall model are illustrated in the image below:
Take a note that these problems arise the use of the poor system in which the employee works and because of the employee’s performance.
Therefore, in order to overcome and beat these roadblocks and to achieve greater goals, we should bring in the techniques to become leaner and more responsive to change. Thus adopting SAFe is highly recommended because of its values, principles, and practices.
Let's start our discussion on Scaled Agile Framework and its formation. By now, we have clearly articulated and understood the need to have a Scaled Agile Framework in an organization.
Now, conceptualize an environment where we have multiple teams working under similar conditions to achieve the same objective. It is time for us to move ahead and see how Agile Scaled Framework such as Scaled Scrum works in this space.
- All the stakeholders (Internal or External) and management come along together to create a very high-level Portfolio Vision Document which is also called as Portfolio Backlog. Portfolio Backlog is essentially consisting of multiple Business and architectural requirements which is also known as Epics. These business and architectural epics are aligned with priorities.
- Based on the priorities, these epics are picked up by the Product Managers/Delivery Managers. They create a well-defined Roadmap and a Vision Document. They do this activity by discussing the release plan with the Release Management Team to align the roadmap with the production releases.
- Once the Roadmap and Vision Document is created, the Product Manager’s next step is to create a backlog of Program Backlog. A Program Backlog consists of Release Items, Functional bits and a pool of Non-Functional Requirements (NFRs).
- The Release Management Team prepares a release plan to fit in the features in the release cycles.
- The Release Management Team now works on the feature bits to fulfill the Release Plan and objectives. They also work on preparing the architecture and infrastructure to enable smooth releases.
- From the Program Backlog, we move towards an individual Product Backlog which is also known as Team Backlog. Release/System Team have their own Product Backlog, similarly, all the Scrum Team working on the project will have their individual Product Backlog.
- Product Backlog consists of both functional and non-functional stories. These stories are prioritized by the Product Owner who is working on that Scrum Team.
- Typically there are 5-10 Scrum Teams that are working in a Scaled Agile Environment. Each of the Scrum Team has a Product Owner, Scrum Master, and a Development Team. The roles and responsibilities of each of the Scrum Team Member in Scaled Scrum are the same as that in the normal Scrum Environment.
- The Scrum Team performs all the Scrum Ceremonies and works on developing the Increment to be delivered at the end of each sprint.
Tips and Tricks
- For all the Scrum Teams, the Sprint start and end dates are kept same as the same duration. Hence, the Sprint for all the Scrum Teams is synchronized.
- Since, all the Scrum Teams are working on a single mission, the dependencies amongst them should be clearly defined, scheduled and assigned to minimize the disruption to product deliveries. Dependencies between the Scrum teams is one of the most routine problems in Scaled Scrum Environment.
- Each of the Scrum Team is expected to be delivering an Increment at the end of each Sprint. All these increments when combined form a potentially releasable software Increment.
- While working in Scaled Scrum, shifting of the team members from one team to another should be carefully done. Team Member shifting is not allowed during the Sprint and there is no exception to this rule.
- The overall progress of the program is measured by integrating the Increments developed by all the Scrum Teams.
- When working in Scaled Scrum, a ceremony called ‘Scrum of Scrum’ is conducted daily or weekly where a representative (usually Scrum Master) from each of the Scrum Team is called to participate. This meeting is the same as that of Daily Standup and the objective also remains the same: ‘To maintain the alignment and synchronization between multiple teams’.
- Always keep the core values of the Scaled Agile Framework (SAFe) intact throughout all levels.
Core Values: Alignment, Built-in Quality, Alignment and Transparency
- Communication and Collaboration between the Scrum Teams is the key to a successful Scaled Scrum in terms of productivity, quality and time to market.
A few tweaks here and there in a Scrum Framework can lead to incredible results in the form of Scaled Scrum.
Why should we use this Framework?
SAFe 4.0 has now proven track record for success, from many giant organizations who implemented this framework and improved the customer experience by delivering software products in a shortest sustainable lead time by following Lean-Agile way.
Basically, it works based on the agile development, System thinking, and lean development.
It helps in:
- Aligning business and technical goals for the company.
- Taking decisions to improve outcomes.
- Scheduling for on-time delivery.
- Improving the quality of solutions.
- Scaling the agile processes up to enterprise level.
- Utilizing the employee skills effectively.
- Defining effective organizational structures
- Measuring agile team performance
- And suggest the ways to motivate people for good work and for learning new things & taking risks.
Here are the data from enterprises who have implemented it successfully
SAFe supports the full range of development environments with four configurations,
1. Essential SAFe
- The Essential SAFe configuration is the heart of the Framework and is the simplest starting point for implementation.
- It’s the basic building block for all other SAFe configurations and describes the most critical elements that are required to realize the majority of the Framework’s benefits.
- The Team and Program Levels form an organizational structure called the Agile Release Train (ART), where Agile teams, key stakeholders, and other resources are dedicated to an important, ongoing solution mission.
2. Portfolio SAFe
- The Portfolio SAFe configuration helps to align portfolio execution to the enterprise strategy.
- Organized 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.
- Objective metrics support governance and improvement.
- Value delivery via Epics.
3. Large Solution SAFe
- Large Solution SAFe configuration is for developing the largest and most complex solutions that typically require multiple Agile release trains and Suppliers, but do not require portfolio-level considerations.
- This is common for industries like aerospace, defense, automotive etc.
- The Solution Train organizational construct of the Large Solution Level helps enterprises that face the biggest challenges—building large-scale, multidisciplinary software, hardware, and complex IT systems.
- Building these solutions requires additional roles, artifacts, events, and coordination.
4. Full SAFe
- The Full SAFe configuration is the most comprehensive version of the Framework.
- It supports enterprises that build and maintain large integrated solutions, that require hundreds of people or more, and includes all levels of SAFe: team, program, large solution, and portfolio.
- In largest enterprises, multiple instances of various SAFe configurations may be required.
The Foundation contains the supporting principles, values, mindset, implementation guidance, and leadership roles that are required to deliver the value successfully at scale.
1. Lean-Agile Leaders
Management has the ultimate responsibility for business outcomes. Leaders must be trained, and then become trainers of, these leaner ways of thinking and operating. To this end, SAFe describes a new style of leadership that is exhibited by the enterprise’s leaders.
Lean-Agile leaders lead his\her Organization in building better systems through iterative and incremental ways of learning, coaching, developing people and processes.
SAFe Lean-Agile Leaders are lifelong learners and teachers who help the teams to build better systems through understanding and exhibiting the Lean-Agile Mindset and SAFe Principles.
2. Core Values
Four core values define the belief system for SAFe:
- Program execution is the most important core values as it compares to other values without which the execution team cannot deliver any value to the customer.
- Mainly it focuses on working software and great customer experience.
- Complex software development is accomplished with the help of inspecting and adept at the end and performs better in every PI.
- Not only the teams but with the help of Agile leaders, the leadership team can also perform customer satisfaction
- At every level i.e. team, program, value stream, and portfolio level we have a whiteboard which displays information about project progress at any point of time.
- The team follows agile scrum, hence all the team members trust each other and are free to take decisions which foster innovations.
- Encourages open and honest communication with all stakeholders.
- Value productivity, quality, transparency, and openness over internal politics.
- Incrementally adopt the Built-in Quality practices for software, hardware, and firmware. Understand, teach, or sponsor technical skills development in support of high-quality code, components, systems, and solutions.
- Foster Communities of Practice.
- Understand, support, and apply Agile Architecture and Lean User Experience (UX).
3. Lean-Agile Mindset
Lean-Agile Leaders are lifelong learners and teachers. They understand and embrace Lean and Agile principles & practices.
Our Lean-Agile mindset is represented in two things:
(i) The House of Lean:
The House of Lean is the one which you see here.
It has a number of elements:
Value, as the goal of Lean is very simple, it has the shortest sustainable lead time. That's accomplished by the pillars of respect for people and culture, product development flow, innovation—critical to long-term sustainability—and relentless improvement. And it's supported by leadership.
That's the structure in which we tend to think about the Lean paradigm.
(ii) Agile Manifesto:
Secondly is the Agile Manifesto, which has been with us since 2001. It's a very well-written document, and what it says is still true until today. We need the Agile Manifesto because it's the key to unlock the motivations and the talents of the knowledge workers who develop our solutions and software.
- The highest priority is to satisfy the customer through the continuous and early delivery of valuable software.
- Embrace the changing requirements, even if late in development. Agile processes harness change for the customer's benefit.
- Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
- Developers and business people must work together daily throughout the project.
- Build projects around motivated individuals. Give them support and the environment they need, and trust them to get the job done.
- The most efficient method of communication with the development team is a face-to-face conversation.
- Working software is the primary measure of progress.
- Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
- Continuous attention to technical excellence and good design enhances agility.
- Simplicity–the art of maximizing the amount of work not done and is much essential.
- The best architectures, requirements, and designs emerge from self-organizing teams.
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
4. SAFe Principles
SAFe practices are grounded in nine principles that synthesize Agile methods, Lean product development, systems thinking, and decades of field experience.
- Take an economic view
- Apply systems thinking
- Assume variability, preserve options
- Build incrementally with fast, integrated learning cycles.
- Base milestones on an objective evaluation of working systems
- Visualize and limit WIP, reduce batch sizes, and manage queue lengths
- Apply cadence, synchronize with cross-domain planning
- Unlock the intrinsic motivation of knowledge workers
- Decentralize decision-making
5. Implementation Roadmap
Implementing the changes that are necessary to become a Lean-Agile technology enterprise is a substantial change for most companies. SAFe provides an implementation roadmap to help or guide organizations on this journey.
Finally, let's discuss implementation. We'll describe that using our Implementing SAFe 1-2-3 model.
Number 1 is to train the Lean-Agile change agents. We call those SAFe Program Consultants. With a sufficient staff of Lean-Agile change agents onsite, and working with your partners, you'll have the ability to train the executives and leaders and managers who are the people responsible for managing the people who deliver value.
They'll then be in a position to support the launch of the Agile Release Trains. And with one train at a time, you'll build that Agile portfolio.
6. SAFe Program Consultants (SPCs)
SPCs are change agents who combine their technical knowledge of SAFe with an intrinsic motivation to improve their company’s software and system development processes.
SAFe is a framework which gives us alignment not only with the team(lower level) and program level but also helps us align to with organization strategy(top level) and how a team’s works in adding value to customers right from the top level.
It is available in different configurations, and companies can take advantage of it
It can be used by a big organization, and it has got a good feedback from companies implemented in it, it has got it of rules, values and principle’s if used correctly, the organization can make customer delighted and produce software in a shortest sustainable lead time which adds value.
With this tutorial, we have come to the end of our Agile Scrum series. We hope that you had a good time and enjoyed reading our articles on Agile.
Also, let us know if you think we might have forgotten any topic in the Agile Series. We will be happy to go an extra mile and cover the topic for you. Next is an interesting Agile quiz for you with the answers. Don't forget to give it a try!!