Agile Release Train

From apppm
Revision as of 23:16, 28 February 2021 by S203409 (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

Abtract

In order to align the different teams on an equal mission, as a part of the Agile Methodology, they are organized in an Agile Release Train (ART). The ART team organization is based on a long-lived combination of Agile Teams, formed to develop and deliver one or more solutions as part of a value stream. ARTs operate based on a set of common principles of SaFe such as fixed schedules, programmed incremented schedules, and agile dedicated teams. Opposite to functional organization, ARTs focus on value forming cross-functional teams. Each team has everything it needs to define, deliver, and operate solutions and every team has well-defined responsibilities that are based on the team type. To simplify the team design it is possible to apply SaFe four fundamental team topologies, where each of them is organized around a specific set of responsibilities. The challenges that arise at the time of forming an ART are related to defining and structuring the organization around value streams, handling cross-team dependencies between ARTs, and integrating teams with fewer dependencies into ARTs.

The Agile Release Train (ART)

In the Scaled Agile Framework (SAFe®), the Agile Release Train (ART) is a long-lived team of Agile teams, which, along with other stakeholders, incrementally develops and delivers one or more solutions in a value stream.[1] They organize around value streams and exist to achieve a promised value by building solutions that deliver an expected benefit. Their final purpose is to deliver a continuous flow of value.

Fig1:Agile Release Trains[1]

ARTs solve one of the most common problems with traditional Agile development, this is teams working on the same solution, operating independently and unaligned, which makes it extremely difficult to integrate full systems. This way, the risk of bypassing problems and late discoveries increases, and in these cases the risk management turns to be difficult and ineffective. Instead, applying cadence and synchronization, ARTs ensure that the system is iterating as a whole organism, focusing on the evolution and assessment of the full system rather than its separate elements.


Agile Release Train and Project, Programs and Portfolios

Organizations address the need for change by creating strategic business initiatives to produce results or change the organization, its products, or its services. Portfolios of programs and projects are the vehicles for delivering these initiatives[2]. Organizations seek to improve their abilities to deliver benefits and usually these are delivered in the form of business value. Portfolio management allows organizations to define how they will pursue their strategic goals through programs and projects, optimizing the pursuit of business value. Program management seeks to enhance the management of related component projects and programs to improve the generation of business value. Project management seeks to optimize the delivery of business value by improving the efficiency of organizations as they deliver new products, services, or results.

In the 3-Level Safe structure, divided into Teams, Programs, and Portfolios, the ARTs are located at the Program level and are defined as a conjunction of Agile teams, synchronized and focused on a specific goal. In the SAFe methodology, a portfolio is considered a sum of value streams, business value goals, called Business Epics are discussed at this level. These epics and visions are then passed to the program level where they are broken down and scheduled on the appropriate ARTs. Each ART is associated with a specific value stream. [1]

Structured ARTs

ARTs operate based on a number of principles which are engraved in the SAFe methodology and align with the Agile manifesto. The key to understanding ARTs is envision them as trains, with a fixed scheduled, tempo and coordinated parts that function as a single organism. The principles, listed below, align to this analogy:[1]

  • Dedicated Agile Teams: The ARTs are formed by agile teams which embrace the SAFe values and principles. Human resources that form the ART teams are dedicated full time to the train independently of their functional reporting structure.
  • Fixed schedule and increments: True to its name, ARTs function as a train by using a release cycle. The cycles are ruled by increments that are delivered in a specific time, two weeks. The train departs the station on a known and controlled schedule which is determined using the Program Increment (PI) beat or cadence.
  • Synchronized teams and known velocity: The teams are the core of the ARTs, they are synchronized to a specific Program Increment length and have coordinated start and end dates and duration. Each ART estimates accurately how many tasks can be delivered in a single Program Increment.
  • Program Increment Planning: To organize the work load needed in each Program Increment is necessary to schedule periodic and face to face sessions. At the end of each Program Increment it is necessary to perform Innovation and Planning iterations to keep the focus on delivering the defined goals and identify potential issues.
  • Inspect and Adapt (I&A): It is organized at the end of every Program Increment. In these sessions the state of the solution is evaluated and the teams involved work on identifying possible improvements through problem-solving workshops.
  • Develop on Cadence and Release on Demand: ARTs apply a specific rhythm and synchronization to help manage the variability of the projects. However, releasing the final product is usually independent from the development cadence, as ARTs can release a solution at any time as long as it meets the release criteria.

Differences from traditional structures

The way ARTs are organized differs from traditional functional units, while there are advantages to these functional units, the value doesn’t flow quickly as it has to cross through the different units and levels. Therefore, it is necessary to have close control from the managers to move the work across and as a result, progress is slow. Instead, ART applies systems thinking and it organizes around value to build a cross-functional organization. This structure helps the flow of value from ideation through deployment, release, and into operations.[1]

The ART, as a cross-functional organization, has all the people required to define, deliver, and operate the solution. This creates a far leaner structure, where daily task controls and project management are not necessarily required. This improves the flow of value with a minimum of control.


Solution Train

When a needed solution becomes too big and too complex it needs a conjunction of ARTs to achieve it. A Solution Train organizes and coordinates multiple ARTs into one, coordinating hundreds of individuals towards accomplishing a common mission. According to the SAFe methodology, Solution Trains are “organizational constructs used to build large and complex solutions that require the coordination of multiple Agile Release Trains (ARTs)” [3]. In terms of the 3 Level Structure mentioned before, Solution Trains are an amalgamation of programmes with a shared strategic goal, in other words a portfolio. They are useful to focus ARTs with a shared mission and synchronise and align the objectives, allowing adaptable changes even when large solutions are being built.


ART process

Fig2: Continoous Value Delivery [1]

As mentioned before, ARTs are formed to continuously deliver value to customers. This is achieved using a Continuous Delivery Pipeline, which contains the workflows and activities needed to support the release of new products. Each ART builds and maintains a pipeline with the assets needed to deliver solution value as independently as possible.

As shown in the picture, the first three elements of the pipeline work together to support the deployment of small batches of new functionality, which are released to meet market demands. Continuous Exploration is the process of exploring the user needs and defining the set of hypotheses to address those needs. It is followed by Continuous Integration which is the process of taking features from the program backlog and developing, testing, integrating, and validating them in a staging environment where they are ready for deployment and release. Then continues to Continuous Deployment where the teams take validated features and deploy them into the production environment, where they’re tested and ready for release. The final element, Release on Demand which is the process of making the value available to the end-user, measuring and learning from the results of the hypotheses, and operating the solutions.


How to apply ARTs?

Defining the ART is one of the steps in the SAFe implementation plan. In the planning stage, ARTs are identified and outlined with scarce details, this stage is useful to identify potential ARTs. The parameters and boundaries of these potential ARTs, their stakeholders, and their relationship to the value streams can be captured and summarized in the ‘ART canvas’ (figure 3).

Fig 3: ARTs Canvas [1]


A key benefit of the canvas is to help identify the principal roles since ARTs only work when the right people are assigned the correct tasks. All the necessary responsibilities have to be accomplished for the system to function properly. Using the canvas and registering the key roles easies these discussions and highlights new responsibilities.


Implementation process

As Agile Release Trains are part of the Scaled Agile Framework (SAFe®). The instructions for the implementation of ARTs are part of the same path of the SAFe implementation process.

Fig 4: SAFe Implementation Roadmap [4]

During this implementation process, initial design and planning are the activities that should be focused on. To identify Value Streams and ARTs it requires a deep understanding of the organizational model which needs to be optimized to facilitate the flow of value across functional units. Therefore, it is advised to make use of the ART canvas in order to avoid missing important factors or misplaced roles and responsibilities.

The implementation phases follow a series of steps described below:

  • First, it is necessary to identify the Operational Value Streams. A value stream is the primary construct block for understanding, organizing, and delivering value. Value streams can be Operational or Development. Operational value streams contain the steps and the people who deliver a product or service to the customer.[5]
  • Once the operational value stream steps are identified, the next step is to identify the solutions that are developed to support it. It’s important to map the connections from the solutions to the various steps in the value stream.[5]
  • After identifying the solutions that support the operational value stream, the next activity is to estimate the number and locations of the people that build and maintain those solutions. This is the first approach to form the teams, i.e. the first level structure. It is important to mention that, as well as organizing the ARTs around development value streams, the Agile teams part of the ARTs also need to be organized around value. Otherwise, the potential benefits of creating ARTs that deliver a continuous flow of value will be lost, as the teams struggle to manage the various dependencies and interconnections between them.
  • The next step is to identify the Development Value Streams. These are the steps needed to develop the solutions as well as the people necessary to work on them. The solutions support and enable better operation within the operational value streams and as such the value is new or amended features in the solutions. In order to identify these Development value streams, it is used Triggers, these are requirements and ideas which drive solution’s features.[5]
  • Development value streams strive to deliver innovative business solutions and as such require the contributions of more than just Agile teams. With this in mind, the next step is to identify these additional individuals and teams who are part of the development value streams identified in the previous step.
  • The next step is to develop value streams across boundaries. Once the development value streams are identified, it is needed to organize the formation of the Agile Release Trains.
  • The final step is to define the ARTs that possess value. The most effective ARTs have between 50 – 125 people and it is important that they minimize dependencies with other ARTs and they can act with a certain degree of freedom. This is equivalent to delimit the second level structure, the programs.

When forming the ARTs, there are two main patterns of design regarding the size constraints:

  • Smaller value streams can be implemented by a single ART
  • A larger value stream must be supported by multiple ARTs

Designing ARTs

When designing the ARTs is important to keep in mind that several roles need to be present to ensure a successful execution. These roles are listed below: [1]

  • Release Train Engineer (RTE): is the leader and coach for the ART. It is the person who facilitates program execution and continuous improvement. The RTE’s major responsibilities are to facilitate the ART events and processes and assist the teams in delivering value. [6]
  • Product Management: is responsible for the final product or service being developed as defined by the Vision, Roadmap, and new features in the Program Backlog. They work with customers and Product Owners to understand and communicate their needs, and also participate in solution validation.
  • System Architect/Engineer: is an individual or team that defines the overall architecture of the system.
  • Business Owners: are key stakeholders of the ART and have ultimate responsibility for the business outcomes of the train.
  • Customers: the ultimate buyers of the solution.

When designing ARTs and the teams that are part of them, it can also be useful to visualize these teams in terms of the topologies. To simplify the job of team design, SAFe applies four fundamental team topologies. Each of these topologies provide a clearer and better model for organizing Agile teams in SAFe.

  • Stream-aligned team: it is organized around the flow of work and has the ability to deliver value directly to the customer or end-user.
  • Complicated subsystem team: organized around specific subsystems that require deep specialty skills and expertise.
  • Platform team: organized around the development and support of platforms that provide services to other teams.
  • Enabling team: is organized to assist other teams with specialized capabilities and help them become proficient in new technologies.

ART Limitations and challenges

As part of the SAFe methodology, ARTs share some of the same limitations. For instance, defining concepts and terms, the bibliography available explains the basic concepts correctly, but while applying them outside their specific framework organizations soon run out of guidance. It is also important to mention that balancing the organizational structure with the SAFe framework can become challenging when dealing with industry changes and trying to maintain competitiveness.[7] ART limitations can be related to the complexity of the structures or the amount of workload needed to start and define the trains. Secondly, the fact that SAFe emphasizes the big picture can often lead to longer planning cycles and more fixed roles within development cycles which opposes the continuous value flow dogma. Furthermore, challenges related to defining and structuring the organization around value streams have been reported as well as struggles with handling cross-team dependencies between ARTs and integrating teams with less dependencies into ARTs.[8]

Bibliography

SAFe® 4.5 Reference Guide, Scaled Agile, Inc., August 2016

The SAFe website is a comprehensive guide that contains guidance for the various roles, responsibilities, activities, and artifacts that constitute SAFe methodology, along with the foundational elements of values, Lean-Agile mindset, principles, and practices. The Reference Guide is intended to provide a hard-copy or e-copy companion to help the user understand and apply SAFe, with the goal of helping accomplish the mission of building better systems. This book is written by a group of specialists in SAFe methodology and it's based on both scientific research and practical experience.

How Are Agile Release Trains Formed in Practice? A Case Study in a Large Financial Corporation - Abheeshta Putta, Maria Paasivaara, and Casper Lassenius

The Scaled Agile Framework (SAFe) is currently the most widely adopted framework for scaling agile in the software-intensive industry. Despite this, there exists very little scientific research on the transformation process, as well as on the challenges and success factors of using SAFe in large-scale organizations. To start filling in this gap, this research conducted a case study by investigating the formation of agile release trains and the related challenges in a large financial organization adopting SAFe.

Implementing Large-Scale Agile Frameworks: Challenges and Recommendations, Kieran Conboy & Noel Carroll Lero – the Irish Software Research Centre National University of Ireland Galway, Galway, Ireland

Based on 13 agile transformation cases over 15 years, this article identifies nine challenges associated with implementing SAFe, Scrum-at-Scale, Spotify, LeSS, Nexus, and other mixed or customized large-scale agile frameworks. These challenges should be considered by organizations aspiring to pursue a large-scale agile strategy. This article also provides recommendations for practitioners and agile researchers.

References

  1. 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 "Agile Release Trains" , https://www.scaledagileframework.com/agile-release-train:.
  2. "THE STANDARD FOR PROGRAM MANAGEMENT, Fourth Edition, Project Management Institute":.
  3. "Solution Train" , https://www.scaledagileframework.com/solution-train:.
  4. "Safe Implementation Roadmap" , https://www.scaledagileframework.com/guidance-an-hr-playbook-for-a-successful-safe-implementation:.
  5. 5.0 5.1 5.2 "Value Streams and ARTs" , https://www.scaledagileframework.com/identify-value-streams-and-arts:.
  6. "Release Train Engineer" , https://www.scaledagileframework.com/release-train-engineer-and-solution-train-engineer:.
  7. "Implementing Large-Scale Agile Frameworks: Challenges and Recommendations, Kieran Conboy & Noel Carroll Lero – the Irish Software Research Centre National University of Ireland Galway, Galway, Ireland":.
  8. "How Are Agile Release Trains Formed in Practice? A Case Study in a Large Financial Corporation - Abheeshta Putta, Maria Paasivaara, and Casper Lassenius":.
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox