The Three Phases of DevOps

DevOps is a methodology that involves a set of practices aimed at improving collaboration, automation, and communication between software developers and operations teams. As detailed in the DevOps Handbook - Devops is divided into three distinct phases:

First Phase

The first phase of DevOps involves refining the deployment pipeline process. This phase requires a lot of work to refine the build and deployment process to improve testing and quality assurance. The process begins with the business requirements, followed by small batch testing and QA stages. The software is then deployed to production, where the customer can see and use it.

Second Phase

The second phase of DevOps involves incorporating feedback loops, metrics, and monitoring into the process. This phase requires getting customer feedback through analytics to understand how they use the system and what impact that has on the underlying services. The metrics and monitoring detect bottlenecks and improve the underlying back-end systems.

Third Phase

The third phase of DevOps involves a more intuitive approach, where end-user experimentation and feedback are incorporated into small feature deployments. As a result, the system responds to these requests better, and the metrics and monitoring are used to improve the system's performance.

DevOps is all about reducing silos and accepting failure as a normal part of the process. It is essential to have a blameless postmortem culture where everyone is aligned in how they think the system works. This is achieved by building a complete picture of everything and ensuring everyone's mental image matches as much as possible.

It is crucial to have an SRE team involved in the process to keep track of the priorities and establish the correct SLAs and SLOs. The SRE team can also identify the metrics to put in place and help you think about the things you need to think about before you get to the third model, where you have an SRE team and the application team.

DevOps is a methodology involving practices to improve collaboration, automation, and communication between software developers and operations teams. It is divided into three phases, and each stage requires a different approach to refine the deployment pipeline process, incorporate feedback loops, and experiment with small feature deployments.

Reply

or to participate.