Plutora Blog - Release Management
What is a Release Train?Reading time 3 minutes
What does Release Train mean?
Over many client engagements we have came across a few companies who aren’t familiar with this term. While we recognise the term “release train” is not an official IT delivery term, it is a term often used and referenced in large enterprises who manage tightly integrated releases across complex interdependent systems.
Our Definition of Release Train is:
A release train is a pre-planned release cycle which has been stringently planned into phases of which individual Projects and/or BAU release teams must align to in order to deliver their release. The key reason release teams need to align to these trains is because they have changes which impact other parts of the organisation outside of their own system changes, which may require the use of shared SIT test environments. In most cases release trains are setup as a Quarterly delivery windows but span up to 10months due to planning and integration dependencies.
When release or delivery teams setup these trains they usually communicate to various system teams in advance (sometimes several months in advance) and publish them on a Enterprise Release Schedule. The reason why release trains are published months in advance is purely to allow various business and technology units to plan and book in their releases and changes so that dependency and impact assessments activities take place.
A release train is a very formal and structured process and requires meaningful data to ensure teams who join the release train can make a judgement around there suitability in formally joining. When the train is setup there is almost always some foundation data required. This include:
- Release details (rel id, name, deployment date, risk level, release type – Enterprise, Program or Portfolio etc)
- Release phases and scheduled dates per phase
- Activities and tasks to be completed for each phases
- Milestones and stage gates
- Key stakeholders responsible for managing the enterprise release train.
Common practise is to setup a release train with a phase called “Release Submission”, which is the cut-off for when individual system teams can submit their release information (changes/systems) to be considered for inclusion based on the dependencies and system impacts against other potential release train candidates. This process is very important in making sure that the release train can both be delivered on time and with minimal/zero regression risks.
We often get asked about release trains and how Plutora handles release trains. The common questions are:
- Do you have a enterprise release train process we can adopt?
- Can I see what systems are impacted by a release train?
The answer to those questions is Yes.
Plutora manages release trains using our Enterprise Release function. It allows users to setup releases, define the dates and define phases, add in activities per phase and assign stakeholders. Individual system teams who want to join the release then elect to join the enterprise release train by adding the dependency association to the enterprise release train. For the purposes of keeping this blog post simply I won’t touch on governance around acceptance and approval of how system releases join the release train. This would be a good blog post for the future, check back soon. Below is a screenshot of how easily it is to view which system/project releases are part of the release train.