So what is an agile release train?
The other day I thought to myself: “I just spent an hour making a doodle of a train which added almost no value to the actual story. So why not at least use it again and get some scale out of it”.
So here it is: a Whiteboard Walk about trains.
So what is an “agile release train”?
The first time I heard the term “agile release train”, I immediately equated it to the terms “pillar or imperative ” that would typically be used in waterfall strategic planning.
But after I worked more with agile teams, I realized that the name the concept was given is an important window into the methodology.
To help explain this perspective, let’s talk about trains.
If I had to simplify the idea of a train, this is how I would describe it:
It goes fast
It’s on tracks that control how it moves
It’s made up of small compartments that seem to go on forever
Now, let’s take each of those descriptors and see how they fit with the agile methodology.
Trains are Fast:
The whole idea of the train was to create an efficient transportation method, through reducing stops and maintaining momentum.
The intent of agile is to go fast. Consistently fast. This is done by reducing the number of ‘stops’ through limiting hand-offs, and ‘maintaining momentum’ by breaking what were historically large product releases, into many smaller releases.
Trains are on Tracks:
The way we reign in the power of a locomotive is by fixing it to a track that goes directly to its destination.
The way the seemingly chaotic agile decision-making process stays in check, is by having an extremely strong focus on accountability to specific metrics. These metrics are the destination, and constant measurement keep teams on track.
Trains are Made Up of Many Connected Compartments:
Trains were built by stringing together many smaller components. This allowed the trains to move a lot of people, while still providing the flexibility to bob and weave around big obstacles or dead-ends.
A fundamental principle of agile is to increase the frequency of releases, to limit risk and reduce time to value. By having many smaller releases, the entire system has more flexibility to adapt than it would if there was one massive release that everything depended on.
So the term ‘train’, while it may seem like just another synonym for ‘imperative’, is actually a perfect metaphor for how to think about the concept:
If you think the analogy can help someone in your network, share it below. If you’ve got an idea for how I can re-use the plane I drew in the last post, I’d love to hear it!