When major companies start getting into the nitty gritty of updating their software delivery processes, governance always pokes its head into the mix. The ability to control and secure a software release has traditionally been a hands-on experience due to its many complexities. But at what costs?
As more software delivery processes become automated, the traditional manual processes used for corporate governance are creating bottlenecks that slow down software releases and promote inefficiency. Forrester recently released a new report on this subject: "Use DevOps And Supply Chain Principles To Automate Application Delivery Governance Processes: The Modern Application Delivery Playbook." The report aims to give companies insight into state of governance processes in the software release process today, and understand how they need to evolve in order to meet the needs of tomorrow.
"(DevOps) practices including continuous delivery are replacing manual application delivery governance processes." - Forrester
Manual Governance Is Slow, Costly, And Error-Prone
I doubt this is a revelation to anyone who works with the software delivery process at your organization. Traditional application delivery governance fails to account for the role and growth of automation in the application delivery process. With the rise of Agile
and Continuous Delivery
, we are finding these 19th century governance practices can't keep up as businesses charge forward with automation. The Forrester report explores the following points about traditional governance processes:
› Misguided separation of duties and concerns prevents automation.
› Manual processes can only catch so much.
› Traditional approaches arbitrarily measure activity, not results.
› Manually prepared scorecards provide ceremony with little substance.
› Real feedback comes too late to be effective.
FREE EBOOKWhen many people think about DevOps transformations within an enterprise the first thing that comes to mind is a technology overhaul. It turns out one of the most challenging aspects of a successful DevOps transformation is changing how people work together within the organization. It’s about culture.
Agile Practices Are Important And Necessary, But Not Sufficient
The implementation of agile workflows and teams has created visibility and transparency that simplifies the governance processes. Agile practices are giving teams the ability to increase the control they have over their release pipelines and are allowing them the capabilities to not only measure progress more accurately but also measure unplanned work. Therefore increasing overall visibility into the process. While these are all good things, agile practices do not improve every step of the release process.Forrester explains why with the following points:
› Stakeholder reviews don’t substitute for real customer and user feedback.
› Quality assurance struggles to keep pace with Agile velocity improvements.
› Agile largely ignores operations, and operations largely ignores Agile.
In addition to involving actual users, companies need to extend Agile practices and automation into the Ops side of the pipeline. If enterprises do not start extending agile practices to quality assurance and the feedback loop, they will continue to create larger bottlenecks as the release process matures. True maturity encompasses the entire release pipeline with agile practices, not just the first half.
Automate Governance To Increase Speed And Control
DevOps does scale Agile and improve governance, but when it comes to Forrester's recommendations on improving governance, automation reins king. Over-reliance on manual controls and inconsistent processes are the biggest threats to governance. Automating these processes snuffs out these threats and improve the speed at which your organization release its software. Forrester recommends the following actions to improve responsiveness and control:
› Put everything under version control and manage access to repositories.
› Automate the delivery pipeline to improve speed, flexibility, visibility, and control.
› Simplify and automate the software supply chain.
› Continuously evaluate application quality.
› Correlate app, ops, and business metrics to improve customer experience.
To compete successfully in today's market, organizations need both speed and quality. Agile methodologies have helped teams increase the speed at which software is released, but the governance processes often unchanged. Automation and the implementation of DevOps will both accelerate releases and ensure quality and security throughout the entire software release process.