DevOps is the original concept or philosophy that is the basis for everything “Continuous”. When DevOps was initially incepted, the simple goal of the philosophy is to breakdown the silos and barriers between the development and operations teams and establish trust between the two organisations to achieve the business benefits of better time to market, agility to drive innovation and improve quality.
As evident from the description of the original concept, it has little to do with technology, tools or automation! it is about a culture change and process alignment and integration. Later, the automation tools came as a by-product of the execution of the concept. Automation of the lifecycle certainly helps with the speed, but most importantly it provides an objective perspective of what should move along the release cycle and what should not. Giving both competing organisation – development and operations – a common background to ideally trust and accept.
The barriers and silos DevOps was incepted to resolve come – yet again – from non-technical reasons: the conflicting objectives that drive the development and operations organisations. While development teams are incentivised to promote change of the status quo by producing new products and services and aligning with the business and commercial demand driven by CAPEX investments (Capital Expenditure); the operations teams are incentivised by the absolute opposite of that. The operations teams are driven by stability of production systems, lowering risk of change and the end customer experience with current live products and services. Accordingly, they push back on any changes in their domain until they are fully confident that it will not impact their SLAs of performance, up-time and will not increase priority incidents.
These dynamics are reflected on how the two organisations operate. Generally, development organisations are driven to adopt agile and lean methodologies as it helps them achieve their objectives of producing products, services and features frequently and quickly. On the other hand, the operations teams are heavy on process (e.g ITIL), checkpoints and tend to define internal activities to details. Not only that, what brings up walls is that these dynamics are reflected in the calibre and skills that are hired by each organisations. No wonder, conflict arises with opposite personalities.
Based on the above, it is a common mistake unfortunately that most organisations believe DevOps and continuous delivery practices are about automation. The fact of the matter, it actually is not. It is about the culture evolution manifested in changes to team structures, objectives, accountabilities and responsibilities; changes to KPIs, reports and how they map to commercial targets and objectives; process alignment across all IT functions involved in the release cycle and standardising handover points. Finally, it is also about how you leverage technology to create transparency across the end to end value stream. For the last point automation plays an important and crucial role.
How Does Automation Fit In?
Automation is how you execute on your DevOps Vision. When the DevOps philosophy came out with the harmonious vision, it required a set of capabilities to enable visibility and objective measurement of performance and KPIs across the end to end value stream to enable credibility and buy-in from the development and operations teams. Also for IT management to be able to have a clear and non-biased view of their end to end release cycle in the new DevOps world.
Automation allows for transparency to exist and acknowledged between all IT functions and thus contributing significantly to alleviating the barriers.
Automation also enables many of the DevOps benefits like pro-active governance and quality analysis. It removes many of the manual overhead in the release process – of course for automation to work, the full process has to be aligned between the different IT functions.
In addition to the above, automation plays an indirect role in the culture change an organisation is about to embark on to adopt Continuous Delivery. It removes part of the pressure that comes with change by making the new world more organised, predictable and self-sustaining.