Defining DevOps success: the 5 stages of DevOps evolution.
DevOps is changing the way organizations look at application and infrastructure solutions today.
By reducing redundancies and automating mundane processes, organizations are able to reap the benefits of adopting DevOps practices to increase agility, create a more collaborative work environment and enable IT to respond to business requirements faster
With the Asia Pacific DevOps market expected to grow at a CAGR of 20.2% between 2017 and 2023, and more organizations recognizing the opportunity to adopt DevOps, mapping out the journey and better defining those challenges are a key step in enabling that success. Here’s a pragmatic, prescriptive approach for organizations looking to get started with DevOps, replicate and scale existing pockets of success and make forward progress in their DevOps evolution.
The key thing to remember with DevOps is that achieving success is not a linear path. It is important to know the obstacles that one comes across with DevOps across the board to ensure success.
Stage 1: Normalize the technology stack
The first step towards DevOps transformation centers around reducing said complexities. The two key practices here are the use of version control by application development teams and the deployment of a standard set of operating systems.
Stage 2: Standardize and reduce variability
Organizations are always encountering variances stemming from different factors, such as the adoption of new technologies to replace many functions of older technologies and a proliferation of tools that overlap and have not been rationalized. Moving from normalizing the technology stack, standardizes and reduces variabilities in processes – this is a theme that is prevalent at every stage in the DevOps evolution for every organization.
By now, teams should have begun standardizing on a set of technologies, separating application configurations from data and placing them in version control as well as adopting a consistent process for infrastructure testing and a pattern of sharing source code. This application of consistent management and deployment across multiple platforms will contribute to a greater degree of success, as new applications and services can be deployed faster, and errors arising from inconsistency reduced further.
Stage 3: Expand DevOps practices
While the first two stages work towards reducing the overall complexity of the technology stacks, stage 3 is all about scaling the DevOps practices to the wider team in IT and services delivery.
As collaboration increases and organizations focus on improving service management and deployment– DevOps practices that first took root within the Dev and Ops teams will spill over to departments beyond the IT teams. Sharing of improved applications and knowledge with other functional areas of the business should be a priority to expand their DevOps success across the organization.
Stage 4: Automate infrastructure delivery
This stage is all about automating infrastructure delivery, or what many think of as the beginning of a DevOps initiative. These infrastructure automation practices appear later in the evolutionary journey than what one might expect because they are enabled by practices incorporated in the earlier stages: normalization, reduction of variables, and expansion of the DevOps evolution.
By establishing these factors in earlier stages, organizations can reap the benefits of automation much more easily in stage 4 of the evolution process. This automated system configuration will not only enable ops team to deliver systems to developers at a faster pace, but it also acts as a catalyst to create self-service throughout the business – a necessary step that comes to fruition in later stages by generating greater efficiency across the board.
Stage 5: Provide self-service capabilities
At this stage, it is imperative for multiple departments functioning within the company to be committed to providing IT capabilities as a service to the business as opposed to treating IT as a cost centre that supports these other functions. This is the point where resources should be made available to the wider team and incident response becomes an automated process. With the option of self-service, teams have more liberty to work at their own pace without worrying about bureaucratic red-tape, translating into success for the organization beyond just the IT functions.
With a clearer path laid out through the five distinct stages of DevOps success, I am optimistic that business leaders can better plan and execute their respective journeys.
This stage-by-stage guide will serve to direct organizations struggling to successfully deploy automation in making sense of and taking full advantage of DevOps practices.