Agile Methodology usually starts with small teams that are focused on contributing elements to the project. Typically, a need eventually arises for long-lasting, cross-functional teams who are focused on delivering value in a particular value stream or set of value streams. This is when an Agile Release Train is established. Agile Release Trains are teams are multiple Agile teams aligned with common goal.
The Agile Release Train incorporates people needed to implement, test, deploy and release the product. We will take a closer look into the principles and key roles within Release Train in this article.
The Principles of Agile Release Train
An Agile Release Train operates on a set of common principles which include the following:
The schedule is fixed
Agile Release Trains plan and deliver work on a fixed schedule which is determined by the program increment (PI) cadence. Program increments usually last for 8-12 weeks and if a project or feature is not planned into the current PI, it will not be started until the next one commences.
A new system increment every two weeks
Agile Release Trains operate in two-week cycles, called system increments.
Synchronisation is applied
All teams are synchronised to the same schedule and PI length (with common start dates, end dates and durations) to keep everything aligned.
The train has a known velocity
Each Agile Release Train can reliably estimate how much work can be delivered in a PI.
Agile teams
High-performing Agile teams that embrace the ‘Agile Manifesto’ are an important component of Agile Release Trains. Teams should be cross-functional, stable and autonomous (we will cover this in more detail later) while adopting the Manifesto and Agile methods.
Dedicated people
Most people included in the Train are dedicated to it full-time, regardless of their functional reporting structure, which helps to maintain stability.
Face-to-face PI Planning
Agile Release Trains plan work periodically and mostly face-to-face PI Planning events. It is during PI Planning that teams align strategic priorities for the coming PI.
Innovation and planning
IP Iterations occur at the end of every Program Increment. They provide a buffer between PIs in addition to dedicated time for PI planning, innovation, continued education and infrastructure work.
Inspect and Adapt (I&A)
Following each Program Increment is an Inspect and Adapt event. During the event, the current state of the solution is demonstrated and evaluated by the team. Teams and management use this time to identify improvement backlog items in a structured, problem-solving workshop.
Develop on Cadence, Release on Demand
Agile Release Trains apply cadence and synchronisation to help manage research and development. They can release a solution, or elements of a solution at any time (subject to release criteria).
Agile Release Train Roles
Agile Release Trains require high-performing Agile Teams. The following roles help to ensure successful execution:
- Scrum Master – Responsible for guiding the team through Scrum processes and best practices on an ongoing basis.
- Product Owner – In charge of the value the Agile team produces.
- Team Members (Developers) – The cross-functional, collaborative workers focused on incremental delivery.
In addition to the above core Agile roles, there are often other roles that are utilised by Agile Release Trains. These can include the following:
- Release Train Engineers – Responsible for managing program execution, eliminating any impediments to workflow, and risk and dependency management.
- Product Manager – In charge of the overall product vision and strategy. They are responsible for communicating with both internal and external stakeholders to define and fulfil customer requirements.
- System Architects / Engineers – Responsible for defining the overall architecture of the systems and making sure that major system elements and interfaces work together seamlessly.
- Business Owners – These are key internal stakeholders of the Agile Release Train and are responsible for delivering the intended business outcomes.
Not only are these roles crucial in delivering successfully in Agile, but ensuring certain qualities amongst the team is also important. Let’s take a look at this in the next section.
Agile Release Trains Require High-Performing Agile Teams
Cross-fucntional
A smooth collaboration across several departments is required for long-term success.
Stable
Teams that are dedicated and don’t change have the opportunity to grow, particularly when working with other team members outside their core areas of expertise.
Autonomous
Agile teams should have the autonomy to be self-managed in delivering the product or incremental value to the project.
Summary
In summary, organisations that manage teams into Agile Release Trains benefit from a greater value and better return on investment. It can provide benefits including reducing team costs by limiting the need to repeat work, helping to prioritise high-value work first and encouraging collaboration of teams. It is therefore a useful tool in Agile to implement to help drive success.