Discover DevOps

Completed

DevOps is the union of people, process, and products to enable continuous delivery of value to our end users.

Typically, the goal for Development is to deliver more features faster, and the goal of Operations is to achieve better system stability. DevOps aligns these disciplines by using a framework of best practices proven to increase speed to market while improving system stability.

For Microsoft, DevOps encompasses the entire software delivery lifecycle, from idea to applications running in production.

Diagram shows the DevOps cycle of Plan - Build - Continuous Integration - Deploy - Operate - Continuous Feedback

One holistic DevOps view for Microsoft Services

After considerable debate, collaboration, and refinement, we agreed on the following DevOps view for Microsoft Services:

  • First, we identified four pillars that support DevOps, derived from People/Process/Product: Culture, Lean Product, Architecture, and Technology.
  • Then we identified eight functions, or capabilities, which include various practices within each function or across functions:
    • Continuous Planning
    • Continuous Integration
    • Continuous Delivery
    • Continuous Operations
    • Continuous Quality
    • Continuous Security
    • Continuous Collaboration
    • Continuous Improvement

What is new? Continuous Everything. The process is a journey and requires a growth mindset to continually evolve and improve.

Note

Please note that each capability lists example practices; it is not an exhaustive list.

DevOps capabilities and practices

Here’s our DevOps taxonomy of capabilities and practices that go into a world-class DevOps practice.

Diagram lists example practices for Continuous Planning: Strategy & portfolio planning, Lean product planning, Release planning, Sprint planning, Agile requirement management, Security requirement, Architecture design, Capacity planning, UX architecture design, Threat modeling, and Value stream mapping.

Diagram lists example practices for Continuous Integration: Behavior-driven development, Test-driven development, Shift-left testing, Microservices & container development, SAST, Secrets scanning, Unit test/code coverage, GIT pull request, Gated check-in, Build pipeline - parallel/serial.

Diagram lists example practices for Continuous Delivery: Release pipeline, Secure infra deployment, IaaS deployment, PaaS deployment, SaaS deployment, Shared services, Infrastructure-as-code, Change management, Configuration management, Release management, On-premises or cloud deployment, Security/quality end-to-end check with automation.

Diagram lists example practices for Continuous Operations: Site Reliability Engineering (SRE), Telemetry/monitoring, Application performance monitoring, Auto failover & scaling & DR, Modern Service Management, Secure access/app/data, High availability/security/cost and performance advisory, Secure Dev/Ops ChatOps, Shift-right testing, Secrets management, Governance.

Diagram lists example practices for Continuous Quality: Quality Requirements, Shift-lest testing, Governance and standards, Test automation, Compliance and Audits, and Shift-right testing.

Diagram lists example practices for Continuous Security: Security architecture, Identity and access management, Application security, Secure infrastructure, Secure data and Secure Operations, Governance and Compliance.

Diagram lists example practices for Continuous Collaboration: Culture collaboration, alignment and autonomy, Kanban collaboration, Wiki and Teams collaboration, ChatOps collaboration, and Feature team and SRE.

Diagram lists example practices for Continuous Improvement: Lead time and cycle time, Deployment frequency, Mean time to restore, Change fail percentage, Continuous feedback, Value stream mapping.

Note

Please note that each capability lists example practices; it is not an exhaustive list.

DevOps benefits

The 2019 State of DevOps Report is based on research that provides the most comprehensive view of the growing DevOps industry.

According to this report, elite performers:

  • Deploy code 208 times more frequently than low performers
  • Have 106 times faster change lead time from commit to deploy than low performers
  • Change failure rates that are seven times better than low performers
  • Restore service 2,604 times faster than low performers

Diagram shows how elite performers compare to low performers.

These results show that by focusing on DevOps values, teams aren't trading speed to market for stability. They can achieve both at the same time.