Descobrir DevOps

Concluído

O DevOps é a união de pessoas, processos e produtos para habilitar a entrega contínua de valor para nossos usuários finais.

Normalmente, a meta do Desenvolvimento é entregar mais recursos com mais rapidez, e a meta de Operações é atingir uma melhor estabilidade do sistema. O DevOps alinha essas disciplinas usando uma estrutura de melhores práticas comprovadas para aumentar a velocidade para o mercado e, ao mesmo tempo, aprimorar a estabilidade do sistema.

Para a Microsoft, o DevOps abrange todo o ciclo de vida de entrega do software, desde a ideia até os aplicativos em execução em produção.

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

Uma visão holística de DevOps para Serviços Microsoft

Após um debate considerável, uma colaboração e um refinamento, concordamos com a seguinte visão de DevOps para os Serviços Microsoft:

  • Primeiro, identificamos quatro pilares que dão suporte a DevOps, derivados de pessoas/processo/produto: Cultura, Produto lean, Arquitetura e Tecnologia.
  • Em seguida, identificamos oito funções ou funcionalidades, que incluem várias práticas em cada função ou entre funções:
    • Planejamento contínuo
    • Integração contínua
    • Entrega contínua
    • Operações contínuas
    • Qualidade contínua
    • Segurança contínua
    • Colaboração contínua
    • Aprimoramento contínuo

O que há de novo? Tudo contínuo. O processo é um percurso e requer uma mentalidade de crescimento de evoluir e aprimorar continuamente.

Observação

Observe que cada funcionalidade lista as práticas de exemplo; não é uma lista exaustiva.

Funcionalidades e práticas de DevOps

Esta é a nossa taxonomia de funcionalidades e práticas de DevOps que entram em uma prática de DevOps de nível mundial.

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.

Observação

Observe que cada funcionalidade lista as práticas de exemplo; não é uma lista exaustiva.

Benefícios do DevOps

O Relatório do Estado de DevOps de 2019 é baseado em pesquisas que oferecem a visão mais abrangente do setor de DevOps em crescimento.

De acordo com esse relatório, as organizações com alto desempenho:

  • Implantam código com 208 vezes mais frequência do organizações de baixo desempenho
  • Têm um prazo de entrega de alterações 106 vezes mais rápido da confirmação até a implantação do que o as organizações de baixo desempenho
  • Têm taxas de falha de alterações sete vezes melhores do que organizações de baixo desempenho
  • Restauram o serviço com 2.604 vezes mais rapidez do que organizações de baixo desempenho

Diagram shows how elite performers compare to low performers.

Esses resultados mostram que, concentrando-se nos valores de DevOps, as equipes não estão trocando a velocidade para o mercado pela estabilidade. Elas podem atingir ambas ao mesmo tempo.