Last Updated May 01, 2017 — DevOps Expert
Who Needs Release Orchestration and Why?
IT organizations are relying more and more on using release orchestration tools instead of tracking their software releases using programs like Excel, Google Docs, and PowerPoint. Much of the popularity of release orchestrators can be attributed to their versatility—they’re extremely useful to different people doing a variety of work across the delivery pipeline. Today we’re going to explore a few of the different technology roles that can benefit the most from release orchestration.
As the primary users of release orchestrators, Release Managers
get a number of benefits. Taking releases out of Excel and putting them in a unified place lessens some of the burdens of providing visibility and status updates, freeing release managers to focus on tracking risks, dependencies, and the overall planning and execution of the release. It also provides a more effective way to collaborate with other release managers: rather than relying on personal knowledge transfer, everyone works in a consistent way and in a consistent place. Backing each other up becomes a lot easier, and senior release managers get a clear and consistent overview of all the releases in their domain.
Having everything in one place also allows releases that are in trouble to quickly bubble up to the top, giving critical visibility to areas that need immediate focus. If your orchestration tool provides predictive risk analysis, you can even see releases that are about to go red. In a world where a few hours saved on resolving a crisis in pre-production can make the difference between an on-time release or not, once you experience this kind of feature you’ll never want to go back.
Because orchestration products implement delivery pipelines based on templates, you can always feel confident that a consistent, repeatable process is being followed every time you run your release—whether daily, weekly, or even quarterly. Feedback and lessons learned from previous releases can be easily reintegrated into future releases, ensuring that each release runs a bit better and is a bit more reliable than the previous ones. For example, in a large release management team, it can be a nightmare to ensure everyone is following the same final compliance checks across every release. Once you’ve implemented templatized gate criteria replicated across your releases, you won’t ever have to worry about this again.
Metrics dashboards provide an additional source of data for insights, allowing you to see where different release process changes impacted the outcome of the release. You can compare teams and even entire organizations with each other, allowing you to safely run experiments on release process improvements that result in measured learning. Did adding test coverage, increasing release frequency or switching to DevOps actually result in a measurable impact on your release quality? Use your orchestration tool to compare performance before and after the change, or compare teams that have and have not yet implemented the change to measure and predict outcomes.
Related Reading: Winning at Culture - The Keys to the Successful DevOps Organization
Development, Quality and Operations Teams
Anyone trying to get changes out to production can benefit from release orchestration. The biggest challenge development teams often face is knowing when to engage with an upcoming release to get their changes into production in the most efficient way—this is only becoming more and more complicated as organizations decouple their releases and move away from regularly scheduled and predictable dates. Release orchestration tools can provide visibility into the release roadmap and indicate where in their life cycle each of these releases is. Knowing when the key milestones and due dates are for a release (such as testing, code freeze and so on) makes it easy to figure out which release branch makes the most sense to commit to, or where QA teams should be focusing their attention.
Once your changes are accepted into the release, it becomes very easy to see what’s going on and where you are in the process. Instead of relying on manual status emails, everything is visible in one place and in a consistent way. If a release is stuck or at risk, you know it immediately—not whenever the next status report goes out. This is a key benefit for operations managers as well; with development teams
constantly making small changes to production and without a centralized view into what recently changed in production, it can be a monumental task to determine what may be causing an ongoing incident. Release orchestration provides this single timeline based view into what just happened and what’s coming. This allows you to staff your support teams appropriately ahead of time based on actual need.
These kinds of platforms are also starting to offer more and more external integration and API features. Imagine a world where your build system can submit change requests or production changes can trigger automated smoke testing of integrated systems in an intelligent way—these are game changers if you’re planning on doing something like Continuous Delivery
. Automation can expose and access your blackout periods and other release metadata allowing for the implementation of incredibly sophisticated behaviors in your support, build, testing and deployment systems. These sorts of features are just starting to be introduced, but it’s an incredibly exciting area to watch.
As a manager of a large IT organization, it can be difficult to get a sense of what exactly is happening and how efficiently your teams are performing. You may be rolling out a DevOps transition, but separately from seeing the number of releases going up and the individual sizes becoming smaller, how do you know what benefit you’re getting and if the investment has been worth it?
As one of the most critical moments in the software development lifecycle, understanding your releases is a great way to begin gathering intelligence about how well things are working throughout your organization. Everything from planning to delivery is connected in the moment of release. Measuring your success here by modeling your release workflow offers the best window from which to measure.
Aside from understanding what’s happening, it’s also important for business leaders to ensure that quality and compliance requirements are being performed. Gates and phases supporting things like security scanning, penetration testing, performance testing and more can be modeled as required components of your releases. By doing so, you can be confident that speed of delivery is being balanced against these requirements appropriately.Have we missed any key benefits that release orchestration is providing to people in your organization? Share with us in the comments!