ScholarGate
Assistente

DevOps e Entrega Contínua

DevOps e entrega contínua são práticas que unificam o desenvolvimento e as operações de software através da automação, feedback rápido e um pipeline de implantação que mantém o software em um estado continuamente liberável.

Encontrar tema com PaperMindEm breveFind papers & topics
Tools & resources
Baixar slides
Learn & explore
VídeoEm breve

Definition

DevOps é um conjunto de práticas culturais e técnicas que integram o desenvolvimento de software e as operações de TI para encurtar o ciclo de entrega, enquanto a entrega contínua é a disciplina de engenharia de automatizar a construção, teste e implantação para que o software possa ser lançado de forma confiável a qualquer momento.

Scope

Este tópico abrange pipelines de integração contínua e entrega/implantação contínua; automação de construção, teste e lançamento; infraestrutura como código; gerenciamento de configuração; monitoramento e observabilidade; a colaboração cultural entre desenvolvimento e operações; e métricas como frequência de implantação, tempo de espera, taxa de falha de mudança e tempo médio para recuperação.

Core questions

  • Como um pipeline de implantação automatiza o caminho do commit à produção?
  • Que práticas mantêm o software continuamente liberável, preservando a qualidade?
  • Como a integração contínua, entrega e implantação diferem?
  • Quais métricas indicam de forma confiável o desempenho da entrega de software?

Key theories

Pipeline de implantação
Cada mudança flui através de um pipeline automatizado de construção, testes automatizados e implantação em estágios, fornecendo feedback rápido e garantindo que qualquer versão que passe seja candidata a lançamento.
As Três Maneiras do DevOps
Os princípios de Kim descrevem a otimização do fluxo do desenvolvimento para as operações, a amplificação dos ciclos de feedback e o fomento de uma cultura de experimentação e aprendizado contínuos como base de organizações de tecnologia de alto desempenho.
Métricas de desempenho de entrega DORA
A pesquisa identifica quatro métricas-chave — frequência de implantação, tempo de espera para mudanças, taxa de falha de mudança e tempo para restaurar o serviço — que distinguem estatisticamente organizações de entrega de software de alto e baixo desempenho.

Clinical relevance

DevOps e entrega contínua encurtam os ciclos de lançamento de meses para horas, reduzem o risco de implantação através da automação e de pequenos lotes, e melhoram tanto a estabilidade quanto o rendimento; estudos empíricos ligam essas práticas a um melhor desempenho organizacional.

Evidence & guidelines

Os relatórios anuais do State of DevOps e o programa de pesquisa Accelerate fornecem evidências empíricas de que as práticas de entrega contínua se correlacionam com a entrega de software e o desempenho organizacional.

History

O termo DevOps surgiu por volta de 2009 a partir dos movimentos de administração de sistemas ágeis e infraestrutura como código, buscando quebrar a barreira entre desenvolvimento e operações. Humble e Farley codificaram a entrega contínua em 2010, e pesquisas empíricas subsequentes formalizaram as métricas que distinguem equipes de alto desempenho.

Debates

Implantação contínua versus entrega contínua
É debatido se cada mudança aprovada deve ser implantada automaticamente em produção (implantação contínua) ou aguardar uma decisão manual de lançamento (entrega contínua); a resposta depende da tolerância ao risco, do contexto regulatório e da maturidade da verificação automatizada.

Key figures

  • Jez Humble
  • David Farley
  • Gene Kim
  • Nicole Forsgren
  • Patrick Debois

Related topics

Seminal works

  • humble2010
  • kim2016
  • forsgren2018

Frequently asked questions

Qual é a diferença entre entrega contínua e implantação contínua?
Na entrega contínua, toda mudança que passa pelo pipeline é liberável, mas a decisão de implantar em produção é uma ação humana deliberada; na implantação contínua, essa etapa final também é automatizada, de modo que cada mudança aprovada é lançada automaticamente.
DevOps é um papel ou uma prática?
DevOps é principalmente um conjunto de práticas culturais e técnicas que abrangem desenvolvimento e operações, não um único cargo; tratá-lo como meramente um papel de operações renomeado perde sua ênfase na propriedade compartilhada e na automação.

Methods for this concept

Related concepts