The benefits of using an Agile approach for delivering IT products and software are now well-established. The majority of organisations use the Scrum Agile approach, which is optimised for team-level working, but how do we take Scrum to the next level and scale it company-wide?
The Scaled Agile Framework® (SAFe™) is an approach for doing just that!
What is SAFe: Scaled Agile Framework?
The Scaled Agile Framework (SAFe) is designed to provide a structure for building and enhancing IT systems (software and architecture) in a continuous, predictable and Agile way. SAFe takes advantage of the working practices of Agile teams, embedding these into a framework which scales to enterprise level. It encompasses roles, practices and guidance for adoption and operation of the framework.
The goal of SAFe is to enable multiple Agile development teams to provide a continuous flow of new and enhanced software, and supporting infrastructure, with a focus on providing strategically-defined and targeted value. In other words, it delivers what the business needs, when it needs it, with regular and frequent releases into live use. SAFe is typically aimed at a development group of 50 people or more (including all development and testing roles, and appropriate business customer representatives). Many Scaled Agile Framework success stories have been reported: a large Australian telecom company implemented SAFe for a software development capability of 70 software professionals working as eight Agile teams. You can read more stories of the successful adoption of SAFe at www.scaledagile.org.
The Structure of the Scaled Agile Framework
The Scaled Agile Framework (SAFe) is presented as an interactive “Big Picture” graphic (www.scaledagileframework.com) which defines roles, teams, activities, techniques and artifacts necessary to scale Agile from team to program to enterprise level. It provides a framework for the organisational structuring of an on-going IT development capability. It combines elements of Kaizen (continual improvement), Lean thinking, Agile development techniques, Kanban and Product Development Flow.
SAFe defines three levels: Team, Program and Portfolio.
The team level is based on Scrum and Extreme Programming (XP) practices. SAFe expands these to cater for the scenario where multiple Scrum / XP teams are delivering business software concurrently and interdependently.
SAFe provides a structure to co-ordinate the work of multiple small teams to allow them to deliver maximum return on investment, in line with an overall Portfolio-level Vision and Roadmap. This goes far beyond the Scrum concept of “Scrum-of-Scrums”, providing role definitions and guidance for achieving this co-ordination. SAFe also adopts the technical practices of eXtreme Programming (such as test-first development and continuous integration) to enable the production of high-quality software.
How does SAFe work in practice at team level?
The Agile development capability is divided into small, cross-functional teams. Each team works in synchronised Sprints, of typically two weeks, to deliver both new business functionality and related technical architecture. Time-synchronised sprints give a regular “cadence” (i.e. rhythm) to their work and allow for easier co-ordination of their efforts. These Agile teams collaborate to plan their releases and explore their dependencies at the Program level.
The Program level provides the vehicle for scheduling regular and frequent output of business functionality, which the Scaled Agile Framework calls the “Agile Release Train“. It also provides structure for the Agile development teams to co-ordinate their planning, related to both business features and architecture, thus ensuring that the teams are aligned. It promotes the prioritisation of the most valuable features based on delivering the “weighted shortest job first“. Finally, it provides the Portfolio level with a mechanism for predictable and visible delivery of their Vision and Roadmap. The Program level receives vision and strategic guidance from the Portfolio level.
The Agile Release Train
Releases are planned jointly by development teams, typically every 2-3 months, with the mantra “develop on cadence, deliver on demand”. The evolving architecture necessary to support new business functionality is planned and developed just ahead of the related business functionality as an “Architectural Runway” that can successfully land the new business functionality.
The Portfolio level provides the Vision and Roadmap to which the development teams work and prioritise. SAFe Portfolio Management views the organisation’s strategy as a set of investment themes. Management roles agree a percentage allocation of budget and resource for each theme, proportional to strategy and predicted return on investment. A Portfolio Backlog is compiled, listing the large scale development items to be initiated; these may span multiple releases. A Kanban-style approach is used to keep control of the amount of work in progress and to manage the flow of work, to optimise the use of the development capability of the organisation.
Should I Implement the Scaled Agile Framework?
Where an organisation has already mastered Agile at a team level, but now needs a way to scale this into a predictable delivery function on a continuous and large scale, the Scaled Agile Framework has the potential to be a great fit. The techniques and ways of working learned for Scrum and XP will be directly transferable to the SAFe approach. Even if the Agile approach used at team level was not Scrum, the adoption of SAFe teams should still be straightforward, as there is much overlap in Agile practices and culture. SAFe gives the structure and guidance to carry these practices to a wider, enterprise level.
For some organisations, SAFe will require changes to the way development work is initiated and funded, to support regular releases. It will often promote cultural changes and will need a style of leadership which is facilitative and empowering. SAFe may not be appropriate for all situations, but where there is a substantial, continuous IT development capability and a need to provide new software in an Agile way, to satisfy business demands on a frequent, on-going basis, the Scaled Agile Framework is worthy of serious consideration.
Ready to take the next step? Scaled Agile Framework: SAFe Agilist training may be just what you’re looking for. It covers both the underlying principles of the Scaled Agile Framework and the knowledge necessary to lead an enterprise Agile transformation.