Since the 1980’s, organizations have chosen ITIL best practices to improve the quality of services offered to their customers. But in the meantime, the IT landscape has changed. Businesses demand faster and better responses. This led to a new philosophy: DevOps.
DevOps finds its roots as a counter response to the rigid beast ITIL had become in organisations that deal with IT Service Management. While a lot of businesses have strict, long and bureaucratic ITIL processes in place, DevOps promotes an increase in speed. They do that by eliminating silos, enabling the collaboration between developers and operators and automating a lot of tasks. So, on first sight, we are dealing with two contradicting philosophies. However, it’s not because the business demands the faster and better execution of IT service requests (DevOps) that they don’t need a process to manage it (ITIL). The challenge is to strengthen the organization’s service delivery by integrating ITIL and DevOps.
Best of both worlds
“To me, ITIL is a way to structure our managed services”, says Kristof Satory, managing partner at BRYXX. “ITIL is not a rule of law. It’s a framework that you extend and adjust according to the organization’s needs.” The main ITIL processes are change management, incident management and problem management. Let’s take the installation of a new server, requested through the ITIL change management process, as an example. “The customer requests a change through a ticketing tool. The operations team picks it up and executes it through manual labour. DevOps comes in to help automate the installation of the new server. It’s a win-win situation: we get to resolve service requests better and faster and the customer achieves better business results.”
“It’s important to integrate ITIL and DevOps”, says Dries Dams, DevOps architect at BRYXX. “The incident management process defines an incident as an unplanned service failure or interruption. The added value of DevOps is the ability to fully automate the logging and solution of an incident.” This starts with the implementation of a monitoring tool, such as Splunk. The tool detects the incident and automatically creates a request in the ticketing tool, which in turn ensures that the customer is notified. Furthermore, the developer will create a script to automatically solve the incident, now and in the future. When the incident is resolved, the monitoring tool ensures that the necessary info is logged into the ticketing tool, which – again – notifies the customer and closes the incident request. “Of course, you still have an incident management process, yet it’s automated and better serves the engineers, as well as the customer.”
There are already many inspiring examples of ITIL and DevOps integration. But at the same time – unfortunately enough – there’s still a lot of tension between ITIL and DevOps engineers. They have different work attitudes which are not always easy to integrate. ITIL engineers work according to response times documented in service level agreements. For example, if they receive a customer request that is labelled priority 4 (low priority), they have one week to solve it. However, a developer having a problem with an installation can become frustrated when he logs a ticket that labels this as a priority 4. He doesn’t want to be stuck for a week, so he restarts the installation himself without logging a ticket. The best solution to this problem is to automate the installation, keeping everybody satisfied: the ITIL and DevOps engineers, as well as the customer.
Adapting ITIL to work well with the DevOps philosophy requires a change in the way of working, both on a cultural and technological level and, most importantly, on a manager level. Teams, both engineers and developers, have to be educated. What problems do they experience? How do they perceive this from the ITIL and DevOps perspective? What can they do about it? What do the teams need from each other to move forward? In the end, the common goal is to provide an IT service management solution that works well for the customer.