Over the past several years, many organizations launched automation journeys, while others matured their initiatives to achieve the benefits of high-level automation. Yet many others remain in the state where they started.
There are many reasons organizations struggle to adopt and mature their automation. Some suffer from a lack of strategy. Others become complacent to the improvements they would attain from replacing manual activities or they implement an automation approach using different tools but don't adequately plan for growth.
While each automation tool has pros and cons, having disparate implementations creates silos and overhead. To help minimize this problem, I created an approach to help organizations attain the value of automation maturity. It encourages using existing automation tooling where it makes sense and "glue" all your automation tooling together with another automation tool, Ansible.
By unifying your automation tools, you can help improve visibility and audibility while enabling wider collaboration.
What to consider first
Before embarking on an automation maturity journey, you need a clear strategy as well as leadership and sponsorship from the involved parties. Your organizational culture and outlook may need to change and you need to clearly define the desired outcomes. Often, the first reaction to change is to fight it, so you need to create a secure environment where everybody contributes and feels valued.
Consider the following best practices:
Identify a leader:
The leader is the person who drives the automation strategy and becomes the automation architect. The leader must be a trusted person with a history of successful project implementation. I suggest you select your leader from within the team, as introducing an outside person may create uncertainty because gaining trust takes time. The leader is at the helm of the adoption journey and has a clear vision of what the organization's success looks like upon automation adoption.
[ Learn more about the different types of enterprise architects by reading What type of IT architect are you? ]
Create a pilot team:
Build your pilot team from different groups within the organization. Selecting this team is as important as choosing the leader. Because these people are the advocates for automation across your wider team, choose them based on their skills and the team's culture. Skills alone aren't enough; they should also adapt well to change and think out of the box to introduce innovations and improvements.
Select the right use case (or cases):
It is important to select the right initial use cases because they will be the enabler of the high-level automation you introduce. Ask the team to think of use cases that can leverage your complete initial automation and your various automation tools. It's important to create an environment where everyone feels free to contribute ideas and all ideas are considered. Selecting the right use cases firms up the adoption of DevOps, DevSecOps, and infrastructure as code.
You need to capture metrics to show the automation adoption's success and drive further improvements. Some of the metrics to measure include:
- Time to fulfill environment-provisioning requests
- Percentage of capacity available
- Frequency of deployments
- Average deployment time
[ Learn more about creating your automation strategy by downloading the free eBook The automated enterprise: Unify people and processes. ]
Ansible: the automation tooling glue
It's common for organizations to use multiple automation tools, which are often selected based on siloes or personal preferences. In many cases, the initial automation strategy focuses on addressing a team's specific and urgent needs, with the plan to do more automation later.
This lack of strategy, governance, and planning at the start usually prevents the organization from enhancing and maturing their automation. When they start planning ways to improve and widen their automation use, leaders are often faced with the dilemma of how to reuse their existing investments to avoid wasting time and effort already spent.
[ You might also be interested in reading An IT executive's guide to automation. ]
One answer is using Ansible as a glue to connect existing and new automation tooling. Ansible Automation Platform 2.0 allows you to reuse existing automation investments where it makes sense and to improve them when possible. Using Ansible Automation Controller can increase end users' consumption of automation, improve the visibility and audibility of the automation platform, and enable wider collaboration with better control using native Role-Based Access Controls (RBAC).
Possible implementation patterns
The diagram below shows some patterns you can use with Ansible to mature your automation adoption.
- Automation end users can make requests through IT service management (ITSM) tools or execute a workflow directly to Ansible Automation Controller, which supports early implementation of automation standards and addresses security.
- Predefining actions through catalogs helps minimize human mistakes and increase efficiency and security.
- Using Ansible Dev Tools, automation developers can continue developing more use cases without disturbing the tools used in production.
- You can do the same with other automation tooling you have established.
Ansible Automation Platform can help you increase your organization's automation adoption because it can act as a glue to connect other automation tools. This enables you to maintain existing tooling without throwing away previous investments, efforts, and knowledge.
If you are serious about benefiting from automation maturity, consider removing any siloed automation implementations. The first step is to accept the need for change and start with a proper strategy before diving in.