Subscribe / Unsubscribe Enewsletters | Login | Register

Pencil Banner

Avoiding the 'Sorcerer's Apprentice' problem of software releases

Anders Wallgren | May 2, 2016
Managing the multitude of software releases the enterprise needs to support can feel a lot like drowning in release pipelines

Keep in mind, too, that while we all know the basic four stages path of the pipeline --  CI build, testing, deployment, and release -- for some organizations, each of these stages can be comprised of hundreds of different processes, encompassing thousands of tasks, and sometimes millions of jobs being executed. Sure, we want to keep it simple, but the real-world complexities of legacy code, regulatory requirements, and others often make enterprise processes difficult. Furthermore, software delivery pipelines become more complex as organizations find they need to support both the applications of yesterday and those of tomorrow.

As pipelines multiply, release managers are left struggling to stay afloat and bring some order, visibility, and predictability to the multitudes of tracks that they need to coordinate and make sense of.

Reining it in

While IT struggles to keep up, the ROI of devops, along with the continued advancements in devops adoption in the enterprise, are leading organizations to look for ways to scale devops practices throughout the organization. As a next phase to this evolution, enterprises are looking to address this "Sorcerer's Apprentice" challenge of software releases.

How can you gain shared visibility, centralized management, and governance over all your "brooms" across your entire software delivery processes? How can you ensure that you don't end up battling to take back control over an ever-growing number of separate automation tracks running amok that are not aware of each other, and are not coordinated as part of a larger effort?

As in Fantasia, so in devops: As it matures, in comes the "Sorcerer" to rein-in your sprawl of automation gone wild. Enterprises realize the need for a seasoned "Conductor" to command and orchestrate all their disparate devops tools, processes, pipelines, and multitudes of islands of automation to bring order, predictability, and scale.

It's not magic

But it does take a lot of work and planning.

To improve developer productivity, product quality, and resource utilization -- as well as to enable enterprise-scale and cross-project visibility and management -- organizations need to automate and orchestrate their entire end-to-end software delivery pipeline. "Automate All the Things" is a key tenant to any devops or continuous delivery initiative, and it's a requirement to achieve quality, compliance, speed and efficiency at scale.

This end-to-end orchestration enables standardization and consolidation of all tools and processes under a centralized, shared, platform. This allows for re-use across teams, shortening of cycle times, cost reduction, and more. Mainly, it reduces the risk of software releases by having predictable processes, security checks, consistent monitoring and one pane of glass for the entire organization.

End-to-end orchestration and standardization are required for scaling devops effectively for today's large enterprises. To get it right, you need to map all of your pipelines across all teams and applications and design your devops solution from the get-go in a way that will allow you to scale while avoiding the "Sorcerer's Apprentice" trap.

 

Previous Page  1  2  3  Next Page 

Sign up for CIO Asia eNewsletters.