How DevOps works
Tags: devops, beginners, development, operations
Published: 2022-07-05 10:32:49

The `DevOps lifecycle` is  within a larger, automated  iterative development lifecycle  to ensure high quality, rapid delivery. The name and number of workflows will vary depending on who you ask, but are usually summarized in the following six. 

## Plan

- In this workflow, the team will see new features  in the next release, leveraging prioritized end-user feedback and case studies, as well as input from all internal stakeholders. 
- The goal of the planning phase is to `maximize the business value` of the product by creating a backlog of features that  produce the desired value results during deployment. 

## Development

- This is a `programming step` for developers to test, code, and build new and improved features based on backlog user stories and work items. 
- A combination of practices such as `test-driven development` (TDD), pair programming, and peer code review is common. 
- Developers often use  local workstations to perform internal loops of code writing and testing  before sending code to a continuous delivery pipeline.  

## Integration 

- This workflow integrates new code  into an existing code base, tests it, and packages it into an executable for deployment will be done. 
- Common automation operations include merging code changes into a single master copy, pulling that code from the source code repositories, and automating compilation, unit testing, and packaging into a single executable.
- The best practice is to store the output of the CI stage in a binary repository, for the next stage.

## Deployment

- Here the runtime build output is deployed to a runtime environment - usually a development environment where `runtime tests` are executed for quality, compliance and security. 
- If bugs or defects are discovered, developers have the ability to prevent and fix problems before  end users see them. 
- There are usually `development, testing, and production environments`, and each environment requires increasingly strict quality gates. 
- A best practice for deploying to a production environment is typically to `deploy  to a subset of end users` first, and finally to all users once stability is established.


## Operations


- Monitoring feature performance, behavior, and availability ensures  features can deliver value  to end users. 
- Operation ensures that features work properly and  there are no service interruptions  - make sure  network, storage, platform, computing and security  are all up and running.

- In the event of an incident, operations ensure that the problem is identified, the appropriate personnel are alerted, the problem is identified, and remedial measures are applied.  

## Learning

- This is to collect feedback from end users and customers on features, functionality, performance, and business value to plan improvements and functionality for  the next release. 
- This will also include all learning and latency factors of operational operations, which can enable developers to proactively avoid any past problems that may recur in the future.
 
Gratitude for perusing my article till end. I hope you realized something unique today. If you enjoyed this article then please share to your buddies and if you have suggestions or thoughts to share with me then please write in the comment box.

Above blog is submitted as part of 'Devtron Blogathon 2022' - https://devtron.ai/
Check out Devtron's GitHub repo - https://github.com/devtron-labs/devtron/ and give a ⭐ to show your love & support.
Follow Devtron on LinkedIn - https://www.linkedin.com/company/devtron-labs/ and Twitter - https://twitter.com/DevtronL/, to keep yourself updated on this