After viewing this video, you should be able to list and describe at least one key thing you should know, and one key thing you should do, in adapting each of the DevOps values, principles, methods, practices, and tools to accommodate enterprise IT challenges of enterprise-level change and release gates.
- [Instructor] Now that we've covered how Cloud-native DevOps and ITIL-driven Enterprise Shops differ, let's have a look at how we can adapt DevOps values, principals, methods, practices, and tools, to meet Enterprise IT challenges and Enterprise IT challenges for DevOps. DevOps culture and practices are rooted in the possibilities presented to Cloud-native organizations. Enterprise IT shops are not Cloud-native and while they typically have a hybrid environment with a motion towards the Cloud, they have different challenges and starting points which must be honored for DevOps to be successful in an Enterprise setting.
These challenges include Enterprise-level change and release gates, a hybrid environment that includes legacy, non-automated environments and regulated environments, where compliance is not optional, disparate, siloed teams with differing objectives, mindsets, visibility, and tools requiring hand-offs and cross-team orchestration, and massive scale. So let's get started examining how to adapt DevOps for Enterprise IT challenges. We'll start with the intersection of DevOps values and Enterprise-level change control and release gates.
And focus on the A in CAMS, automation. One thing you should know about this intersection is that the effort needed for these gates is inversely proportional to the stability and consistency of the environment you manage. So here, apply the DevOps value of automation to reduce variation. Make it your goal to relentlessly root out variation, reducing or eliminating the need for external inspection, change control, and release gates. In the Enterprise Legacy environment, such variations may not have been rooted out.
The idea is to root them out, where it makes business sense to do so. Otherwise, until such systems are retired, the complexity, along with a higher compliance requirement, makes change control and release gates necessary and useful. They can, however, be lighter weight, as in visible Ops-style change control. At the intersection of DevOps principals and Enterprise change and release gates, the key thing you should know is that reducing change and release effort and cycle time starts with engendering a culture of seeking to increase flow across the system, the product or service and bill pipeline, as a whole.
So here we apply the first DevOps principal, systems thinking. Some things you can do to get that going include, working to ship your organizations posture towards change and release to one of trust, but verify. Starting small by automating your audit trail. Automation puts up guard rails that keeps you and others off the electric fence. Then building feedback loops around change and release effort and cycle time into your tooling and working to reduce it. Lastly, correlate failed changes to known defects being passed downstream and remediate.
At the intersection of DevOps methods and Enterprise change and release gates the effort needed for, and the success of change and release gates is a function of the skill sets of the people facilitating these processes and the number and degree of fragile artifacts in the environment. But what you can do here, is to make sure people with the right skills are responsible for change and release processes, and implement visible Ops-style change control. Which is a lightweight approach to change control that systematically reduces the number and degree of fragile artifacts in the environment.
Also, while you're not constrained by platform limitations, or regulatory or other constraints, pick a place to implement continuous integration, deployment, and then delivery, to reduce the level of effort required for change and release gates. At the intersection of DevOps practices and Enterprise-level change control and release gates, focus on the DevOps practices of dependency injection and blue/green deployment. Apply dependency injection to reduce the number of dependencies. Reducing the need for external inspection and also, where you can, automate your bill pipeline.
Building compliance with change and release policies into it then institute blue/green deployment to facilitate low transaction costs for release and for rollback. A tool chain made up of tools that can be interconnected via APIs can certainly help reduce the overhead involved in Enterprise-level change and release gates, because it enables ChatOps. ChatOps brings your tools into your conversations, using a chat bot modified to work with key plugins and scripts to automate tasks and collaborate, working better, cheaper, and faster.
ChatOps simultaneously enables team orchestration and reduces the need for it over time. So it's ideally suited for meeting Enterprise challenges. ChatOps shifts the center of gravity for change and release from the ticketing system to real-time collaboration. So one thing to do is to build awareness about ChatOps so people understand why they should care about it and to start teaching people the skills they need for it before they need them. And finally, find a showcase team and setting to try ChatOps.
- What DevOps and enterprise DevOps have in common
- DevOps and enterprise IT challenges
- Enterprise-level change control and release gates
- DevOps values, principles, and methods
- ITIL®-driven shops and DevOps
- Reviewing the service lifecycle
- Strategy, design, operations, and CSI processes
- Technology and architecture