Scaling Continuous Delivery using UrbanCode Release
Reedy Feggins 120000A43D Visits (13408)
Scaling Agile practices in support of DevOps
A few weeks ago, I had the opportunity to participate in the "Release and Deploy workshop" at the 2014 Innovate conference. During the day long hands-on workshop, we learned about several new UrbanCode Release (UCR) capabilities. While there were several interesting capabilities, UCR's abilities to "visualize" the deployment pipeline and to track the delivery lifecycle for a particular set of "applications" being released together showed how effective it could be at supporting the Scaled Agile Framework (SAFe) recommendations for adopting DevOps.
For those of you that aren’t familiar with SAFe, here is a link to the “Introducing DevOps in SAFe” article on their website. However to summarize for those who are, SAFe recommends that an effective DevOps adoption strategy require that:
This helps these team track the value stream and provide transparency to the key stakeholders, from time the code is conceived until it gets deployed to production. For more details on Scaled Agile Framework, checkout the "Big Picture”
IBM UrbanCode Release is a release management tool used to coordinate and manage complex releases, often involving multiple applications.
Figure 1 UrbanCode Release Phases (“Deployment Pipeline”)
The figure above illustrates two releases, October and November, following the same lifecycle model. The phases are listed across the top and show the environments that the application must pass through on its way to production.
In the example below, the October Release uses the DEV-1 environment while the November Release uses DEV-2 environment during the DEV phase, that phase. The “green” bars indicate the number of successful releases to this phase.
With UC Release, release planning is streamlined. Developers and testers can quickly capture configuration and infrastructure tweaks that will need to be repeated in the production environment. Meanwhile, release managers can easily see which projects are trending towards completion and which might miss the release train.
It tracks operational releases containing related application, and infrastructure changes, while providing additional capabilities supporting release management and deployment operations teams' needs to perform impact analysis, and deployment day orchestration.
Figure 2 UrbanCode Release - Impact Analysis
Finally, UrbanCode Release is tightly integrated to UrbanCode Deploy, for application automation, and Rational Team Concert, to coordinate activities between the agile teams and deployment teams.
This combination of tools seems to go a long way in providing support for current recommendations for adopting DevOps principles by SAFe. For more information on UrbanCode Release, checkout the UrbanCode Release page.