Featured Whitepapers
- Apples, Oranges, and Acorns - All Agile Development Tools Are Not the Same
- One's Enough for Agile Application Development Management
- Requirements Management 101 – 4 Basics Everyone Should Know
- Tips on Requirements Traceability – Learn How to Control Change and Improve Quality
- Scaling Continuous Integration to Large and Distributed Teams
|
Release trains are that middle ground. When you use release trains, you commit to yourself and your customers to release your product on a particular date every quarter. That’s the iteration.
What Are Release Trains Maintaining that heartbeat—that timebox—is key to the success of the release train. You can de-scope features from a particular train, but you can never allow a train to be late. That helps the project team focus on delivering value and helps your customer become accustomed to taking the product on a more frequent basis. Release trains decouple the releasing of the product from the projects—that is, release dates are set in stone in advance and often are tied to a specific date in the quarter, just like a train’s timetable. Then, the contents of the train are determined by what the team completes. When a feature is done, it is eligible to be released. Release trains never extend the timebox, just as trains never change the time they leave the station. (In the US, trains rarely run on time. I am told that trains run on time in Europe. I’m using the European model of trains running on time here.) Figure 1 is what a release train looks like.
Figure 1: Each train releases on the same relative day each quarter. For each iteration, you organize the project so that you build in chunks. Often, teams use a design to schedule or a staged delivery lifecycle because it fits the parameters of the release train so well. You could use a kanban system to limit work in progress and still make sure features get to done. And, yes, some teams that are ready for agile do choose an agile lifecycle for each iteration, just to ensure they make the train with completed features. The key is that the codebase only has finished features at the end of each iteration. A release train does not have the same focus and urgency a shorter timebox has. When your timebox is twelve weeks, other problems can arise and change the backlog for the timebox. If your management has trouble committing to a backlog, a release train can be tricky. Here’s what one project manager said: My management must have ADHD. They can’t commit to anything for longer than thirty minutes. But, that just means we use a kanban system, not a timebox, to organize our features inside our train. They can futz around all they want with the urgent queue or the backlog of work we haven’t started yet. They just can’t mess with anything we have started. And, they love seeing all the features and fixes piling up in the done queue. With release trains, we have at least a shot of getting releases out to our customers regularly.
When Should You Use Release Trains? Want to urge your customers to upgrade to your most recent release of your product more often? With release trains, it’s much easier. You build a reputation for releasing reliably—on time and with a quality release—and your customers will upgrade. In the agile community, we often think of software as a service as product that can be continuously released. But, there are some customers who don’t want to take new product all the time. Just because you can release all the time doesn’t mean you should. Release trains allow you to have that give and take with your customers—to prepare them for the product update that they will take.
Release Trains May Allow You to Start Your Agile Journey A note of caution: You may discover that an iteration of twelve weeks is too long and that you need to move to a much shorter, internal timebox for features of, say, two to three weeks to actually achieve working software. Don’t be afraid to use timeboxes inside your trains to achieve the results you need. What matters is that you are able to release working product on your release date so that your trains run on time.
This articles was originally published on TechWell
About the Author Johanna Rothman is a management consultant and a regular StickyMinds.com and Better Software magazine columnist. Johanna is the author of the recently published Manage Your Project Portfolio: Increase Your Capacity and Finish More Projects, Manage It! Your Guide to Modern, Pragmatic Project Management--winner of the 2008 Jolt Productivity Award, as well as the coauthor of Behind Closed Doors and author of Hiring the Best Knowledge Workers, Techies & Nerds. She is a host of the Amplifying Your Effectiveness Conference. Johanna has presented at STAREAST, STARWEST, the Better Software Conference & EXPO, and Applications of Software Measurement & Management conferences. You can reach her at jr@jrothman.com or by visiting www.jrothman.com.
Set as favorite
Bookmark
Email this
Hits: 2334 Trackback(0)Comments (5)
|
| Last Updated on Wednesday, 14 September 2011 10:20 |
Agile Marketplace - Announcements and Special Offers
The Business Case for ALM Transformation
Are legacy systems holding your company back? Breakthrough these technical constraints with an open and scalable environment that meets your unique business need to transform. There is no reason to be locked into an obsolete platform. The output of a number of recent transitions from legacy systems, this is practical white paper shares lessons learned and illustrates how guidance and enablement can pave the way for change.
Download this Whitepaper


A colleague was looking for a way to move toward agile but not really transition all the way. “I don’t think we’re ready for two- or three-week iterations,” he said. “We want to move a little more slowly than that. But, we do want to do something more agile than waterfall. And, we want to help our customers move toward taking more frequent releases. They aren’t ready to take a release every month, even if we were ready to release that often. Is there some sort of middle ground?”

