Change is the order of the day, and if anything, the pace of business and technology change is accelerating. The business and customers are looking to IT service providers to be more responsive, delivering more frequent service changes with higher quality-resulting in services that deliver more value to the business. In order to continue to be relevant and of high value, ITIL must continue to benefit from other complementary best-practices for IT. DevOps, an approach that encourages improved communication, collaboration, and teamwork across development and operations, can have a positive influence in improving ITIL processes across the service life-cycle.
Why All the Buzz about DevOps?
DevOps is more of a philosophy or way of working than it is a formal framework or standard. Nevertheless, the approach deserves merit, as it goes to the core of a tension in most IT organizations – the need to be responsive to business change, while maintaining a stable, highly available IT infrastructure, and delivering quality services that meet the needs of the business. What does DevOps have to do with ITIL®?
Let's start with ITIL. ITIL is the defacto global framework for delivering and managing technology as a service to the business. As a proven and well-adopted framework of IT best practices, ITIL includes the notion that a service is a means of delivering value to customers by facilitating the "outcomes" they want (achieving business results), without them having to deal with the cost and risk associated with that service. ITIL maintains that customers want outcomes – the result of carrying out the service – and they understand that a service provider is required to provide whatever IT services are necessary to help them achieve those outcomes, through the application of people, processes, and technology. ITIL is vendor neutral (doesn't require tools specific to a given vendor), not prescriptive (it must be adapted to the organization that wants to practice it), and a proven best practice for IT (it just works).
While DevOps emphasizes collaboration and communication, so does ITIL. In fact, there is no inherent conflict between the DevOPs movement and ITIL-upon examination, it becomes obvious that the two are very complementary. DevOps provides us with "new light" in which we can examine the ITIL framework in several key areas, improving core processes, functions, and principles within ITIL.
DevOps and ITIL-In Conflict or Complementary?
Key Elements of a DevOps Approach:
DevOps is not a product or technology, but rather an emerging "methodology" or way of working between two key groups within an IT service provider organization. DevOps:
- Should be holistic – involving people, process, and technology
- Can be thought of as an "extension" of Agile
- Is about breaking down "barriers" between application development groups within organizations, and their service and support function
- Is about ways to improve collaboration between development and operations teams
- Includes the concept of automated testing, as well as CI monitoring
More a philosophy or way of working than it is a formal standard or framework, DevOps is short for Collaboration between Development and Operations. "DevOps" arose as a movement within IT best-practices a few years ago when IT managers began to realize that something needed to be done to close the communications and collaboration gap between development groups and support operations staff, and to speed responsiveness to the business and the delivery of service updates and changes.
With the trend toward mobile devices, the "economy of apps" was born. Work began its transition to a mobile workforce, and applications – which had a larger footprint and used to reside on desktops – began their transformation to smaller, portable "apps." Office applications began to transition to the "cloud," and an ever-increasing amount of work began to be done on tablets, smartphones, and laptops. In conjunction with the trend toward mobile work, competition for customers and users continued to grow between enterprises. The balance of eCommerce shifted to mobile devices, and it became imperative for organizations to stay ahead of their competitors – with regular updates to "apps" that could empower their workforce, attract customers, and perhaps amount to a competitive differentiation.
Developer organizations began to feel the pressure to be more response to business demands for functionality improvements in apps. The notion of "Agile" development teams was born, and development groups began to develop and deploy new, updated releases of code on a more frequent basis. Agile, which is a philosophy of how to carry out the development and deployment of apps, is also supported by methodologies such as Scrum. It provides the framework within which development organizations can work more productively to design, code, and ship smaller increments of code more frequently to meet customer demand.