What is DevOps
DevOps, a combination of development (Dev) and operations (Ops).
it is the union of people, processes and technology to continuously deliver value to customers.
Benefits of DevOps for teams
DevOps allows previously isolated roles, including development, IT operations, Quality Qssurance, and security, to coordinate and collaborate to deliver better, more reliable products.
By adopting a DevOps culture along with DevOps practices and procedures, teams can better respond to customer needs, improve the trustworthiness of the applications they build, and achieve business goals faster.
DevOps influences the application lifecycle in the planning, development, deployment and operations phases.
Each phase is based on the others and no phase is assigned a specific role. In an effective DevOps culture every role is involved to some way at every phase.
During the planning phase, DevOps teams conceive, define, and describe the capabilities of the applications and systems to be created. They track progress at low and high levels of granularity, from single product activities to portfolio or cross-product activities. Creating backlogs, tracking bugs, managing Agile Software Development with Scrum, using Kanban boards, and viewing status with dashboards are some of the ways DevOps teams plan with flexibility and visibility.
The development phase includes all aspects of coding, including writing, testing, reviewing, and integrating the code by team members, as well as putting the code into build artifacts that can be deployed across multiple environments. DevOps teams strive to innovate rapidly without sacrificing quality, stability, and productivity. They do this by using productivity-intensive tools, automating manual and repetitive steps, and iterating in small increments through automated testing and continuous integration.
Delivery is the process of deploying applications to production environments consistently and reliably. The delivery phase also includes the deployment and configuration of the fully underlying infrastructure that makes up these environments.
During the delivery phase, the teams define a release management process with clear manual approval steps. Teams also set up automated control tasks that move applications from one stage to another until they are available to customers. Automating these processes makes them scalable, repeatable and controlled. This allows teams adopting DevOps to deploy frequently with ease and confidence.
The operation phase involves maintaining, monitoring, and troubleshooting operations in production environments. When adopting DevOps practices, teams strive to ensure system reliability and high availability, and seek to reduce downtime to zero while strengthening security and governance.
DevOps teams try to identify issues before they impact customer experience and quickly mitigate issues when they occur. This level of vigilance requires advanced telemetry, actionable alerting, and complete visibility into applications and the underlying system.
Teams of multiple types (Dev, analyst, operations, …) must collaborate and share their visibility .
People are involved also with in new fields of work.
Cycle are short, and it implies
React and adapt to new user needs