Princípios de design de Excelência Operacional

No núcleo do pilar excelência operacional estão as práticas de DevOps que garantem a qualidade da carga de trabalho por meio de fluxos de trabalho padronizados e coesão da equipe. Esse pilar define procedimentos operacionais para práticas de desenvolvimento, observabilidade e gerenciamento de versão. O objetivo é minimizar a variação do processo, as chances de erro humano e a interrupção dos clientes. Para avaliar sua integridade operacional, comece com estas perguntas:

  • Você executa operações com disciplina?
  • Os clientes estão usando a carga de trabalho com previsibilidade máxima?
  • Como você aprende com a experiência e os dados coletados para impulsionar o aprimoramento contínuo?

As operações de carga de trabalho podem ser transformadas em práticas caóticas quando não há uma propriedade ou liderança clara. Nesse tipo de ambiente, as equipes geralmente recorrem a métodos executados com alto esforço e produzem resultados baixos, o que leva à má experiência do usuário. Essas abordagens atendem apenas às metas de curto prazo. Os benefícios de longo prazo são obtidos por meio de avaliação contínua e investimentos estratégicos.

Os princípios de design fornecem diretrizes para estratégias operacionais que devem ser consideradas para abordar as causas subjacentes e não apenas tratar sintomas. Comece com as abordagens recomendadas e observe o que funciona e o que não identifica áreas de melhoria. Depois de definir sua estratégia, continue a impulsionar a ação usando a lista de verificação excelência operacional.

Os requisitos operacionais de uma carga de trabalho são tão importantes quanto seus requisitos de negócios. Processos eficientes garantem que a carga de trabalho alcance resultados de negócios dentro das restrições de conformidade, seja ela organizacional ou externa. A chave é encontrar repetibilidade com consistência.

Os objetivos do pilar excelência operacional são fazer a coisa certa, fazê-lo da maneira certa e resolver os problemas certos como uma equipe.

Se você atingir essas metas, as cargas de trabalho serão executadas de forma confiável e previsível, mesmo durante os tempos de alteração. A incapacidade de atender aos requisitos operacionais pode levar a implantações com falha, experiência inconsistente do usuário e custos adicionais que poderiam ter sido evitados por meio de planejamento adequado e execução simplificada.

Adotar a cultura de DevOps

Ícone de meta Capacite as equipes de desenvolvimento e operações para melhorar continuamente o design e os processos do sistema trabalhando em conjunto com uma mentalidade de colaboração, responsabilidade compartilhada e propriedade.

O DevOps é uma comunidade de práticas em que a diversidade de perspectivas e habilidades leva a uma missão. As equipes devem promover um ambiente colaborativo de conhecimento compartilhado em vez de aprendizado em silos. Use funções compartilhadas para se esforçar para superar as restrições de recursos.

Uma boa cultura de DevOps prospera com responsabilidade compartilhada. As equipes de desenvolvimento e operações devem alinhar suas metas e prioridades com as expectativas de seus clientes e ter o foco nos negócios em mente. A equipe de desenvolvimento deve envolver a equipe de operações no loop de comentários para que as melhorias sejam orientadas upstream e outras equipes se beneficiem igualmente. Por outro lado, as equipes de operações são responsáveis por tornar a equipe de desenvolvimento bem-sucedida em seus resultados de negócios compartilhando recursos e comentários relevantes para a carga de trabalho.

Ao mesmo tempo, as práticas de DevOps aplicam linhas claras de propriedade e responsabilidade a cada equipe. Independentemente de onde o aplicativo é executado, a equipe de carga de trabalho é responsável por esse aplicativo.

O DevOps otimiza as tarefas operacionais para que elas sejam eficazes, mas não pesadas. Para aproveitar ao máximo o DevOps, a cultura deve otimizar os processos por meio da tecnologia e ter processos para que as pessoas na organização promovam a comunicação transparente.

Abordagem Benefícios
Use sistemas e ferramentas comuns que promovam um ambiente colaborativo para comunicação e acompanhamento do progresso. Ferramentas e processos comuns permitem a comunicação transparente. As equipes de desenvolvimento e operações se beneficiam da conscientização situacional em vários ambientes, problemas comuns de suporte e desafios e vitórias gerais.

O Teams já estará familiarizado com os caminhos de escalonamento existentes se houver um incidente.

Uma lista de pendências compartilhada torna claras as prioridades, como trabalhar em novos recursos ou corrigir bugs.
Crie uma mentalidade contínua de aprendizado e experimentação ao longo do ciclo de desenvolvimento.

Dê suporte ao compartilhamento de conhecimento entre equipes e mantenha a documentação para reutilização.

Realize análises e análises sem culpa e revisões pós-lançamento e/ou pós-incidente.
Por meio de mecanismos de experimentação, como testes A/B e desenvolvimento de provas de conceito, você pode incentivar a inovação, mantendo os custos baixos.

Compartilhe conhecimento por meio da colaboração que torna a equipe proficiente em abordagens de design, ferramentas e processos.

Fazer retrospectivas após um projeto ajuda a identificar áreas de melhoria e celebrar o sucesso.
Adote práticas ágeis comprovadas do setor que se concentram na otimização de ações.

Procure oportunidades para "deslocar para a esquerda" em operações para processos manuais e automatizados, práticas de implantação e garantia de qualidade e observabilidade.
As práticas de desenvolvimento Agile levam a ciclos de vida de lançamento mais curtos, que são um indicador de valor comercial.

Detectar, resolver e, assim, evitar problemas anteriormente geralmente é menos intrusivo para o processo.
Defina padrões para todos os procedimentos operacionais e de desenvolvimento e revise-os e valide-os em uma cadência regular.

Esses procedimentos incluem tarefas rotineiras, processos fora de banda, análises e situações de emergência, escolha de ferramentas, procedimentos de monitoramento, planos de habilidades e até mesmo comunicação com stakeholders e divulgações de clientes.

Seja intencional e explícito sobre suas decisões.
Os padrões adicionam previsibilidade às operações e tornam os processos e práticas escalonáveis. Validar padrões é uma ótima maneira de desenhar pontos de melhoria.

Prepare-se para situações de emergência e recuperação realizando exercícios regulares.

Execute com precisão e habilite a governança para evitar anomalias que levam a riscos.
Aproveite as equipes de operações centralizadas com habilidades especializadas e amplitude de experiência. Há um benefício de custo para usar recursos compartilhados para operações e recursos.

Embora você seja o proprietário de sua carga de trabalho, a equipe centralizada ajuda você com habilidades multifuncionais, como gerenciamento de incidentes, uma perspectiva proativa sobre monitoramento e experiência em terceirização com confiança.

Estabelecer padrões de desenvolvimento

Ícone de meta Otimize a produtividade padronizando as práticas de desenvolvimento, impondo portões de qualidade e acompanhando o progresso e o sucesso por meio do gerenciamento sistemático de alterações.

A equipe de desenvolvimento é responsável por resolver problemas de carga de trabalho antes do lançamento com o mínimo de atrito. Esteja atento à eficiência do desenvolvedor e otimize para ciclos de retorno rápidos, desde codificação até resultados de teste. Implemente processos eficazes e de tamanho correto que planejem e padronizam atividades técnicas e também conduzam o consenso dentro da equipe e dos stakeholders.

Abordagem Benefícios
Documente os recursos de carga de trabalho e capture os benefícios do cliente.

Derivar escopo e requisitos funcionais e não funcionais detalhados da arquitetura.

Crie modelos de estimativa de dimensionamento para relatar o escopo e o custo das tarefas envolvidas.
Boas especificações reduzem os custos operacionais e as chances de falha , dando suporte a ciclos de desenvolvimento mais produtivos e simplificados.

Os desenvolvedores entendem o design técnico, as metas e os critérios de conclusão antes de iniciar o ciclo de codificação.

Uma boa documentação facilita a comunicação repetível e a integração de novos membros da equipe.
Use uma metodologia de desenvolvimento de software padrão do setor adequadamente ajustada para as necessidades da carga de trabalho e do tamanho da equipe.

Mantenha uma lista de pendências compartilhada entre todas as funções.
A adoção de uma metodologia conhecida define o ritmo do projeto. Ele remove ambiguidades de processo dando aos membros da equipe expectativas claras e responsabilidade.

Ao acompanhar uma lista comum, as tarefas podem ser refinadas e priorizadas com práticas padrão. O projeto terá melhores chances de ser entregue a tempo.

As metodologias padrão ajudam no gerenciamento de riscos. Com revisões granulares de marcos, os desenvolvedores podem resolver possíveis problemas antes de se tornarem showstoppers.
Use o controle do código-fonte unificado para todos os códigos, scripts, modelos de implantação, definições de pipeline e documentação relacionada.

A estratégia de ramificação deve dar suporte à liberação sem atrito de recursos independentes e interdependentes, correções de bugs e hotfixes.

Use o conhecimento compartilhado em toda a organização para criar sua estratégia de ramificação e processos de implantação.
O uso adequado do controle do código-fonte é crucial para dar suporte a alterações simultâneas e controle de versão.

Mantenha um fluxo de trabalho repetível para liberar alterações de vários tamanhos e riscos, realize revisões de pares como parte do processo e mantenha uma trilha de auditoria.
Tenha processos de garantia de qualidade que enfatizam os testes no início do ciclo de vida de desenvolvimento.

Inclua todos os artefatos para procedimentos de teste planejados, incluindo componentes de aplicativo, infraestrutura e operações de plano de dados que fazem parte de uma versão ou atualização de recursos.

Trate os artefatos como imutáveis quando eles são promovidos por meio de ambientes, ganhando confiança sempre que passam por um portão de qualidade.

Quando prático, automatize verificações de rotina.
A garantia de qualidade garante que os requisitos funcionais e não funcionais sejam atendidos com confiança, o que leva a um impacto positivo no cliente.

Ter planos de teste garante qualidade e integridade e leva em consideração possíveis casos de falha.

Com os portões de qualidade, você pode impor práticas recomendadas para reduzir os riscos.

A imutabilidade traz confiança porque garante que o sistema que você testa seja exatamente o que você libera.

Os ciclos de teste bloqueiam o progresso com eficiência, a menos que os critérios de qualidade sejam atendidos.
Impulsione a consistência usando guias e ferramentas de estilo, que impõem convenções e adotam uma cadeia de ferramentas comum para desenvolvimento, teste e comunicação com os stakeholders.

Os padrões de tecnologia para desenvolvedores devem exigir a implementação de padrões, design de API, registro em log, tratamento de exceções e outros processos.
A consistência no código impulsiona a legibilidade e a manutenção mais fácil. Ele também reduz a complexidade e habilita a reutilização de código.

Ferramentas e convenções comuns também ajudam as equipes a otimizar processos sem a necessidade de resolver opções pontuais.
Insista de forma consistente e deliberada na documentação do código do desenvolvedor como escrito. A documentação de código claro garante que a lógica e a funcionalidade sejam facilmente compreendidas quando o código antigo precisa ser revisitado ou quando as equipes de desenvolvimento giram.
Relatar o progresso e as tendências para medir a eficiência. Tendências em bugs, atualizações com falha, tempo de implantação, loops de comentários e outras métricas são publicadas e isso impulsiona melhorias.

Desenvolver operações com observabilidade

Ícone de meta Obtenha visibilidade do sistema, derive insight e tome decisões controladas por dados.

Crie uma cultura que melhore continuamente a qualidade monitorando a carga de trabalho e levando em consideração todos os pilares do Azure Well-Architected Framework. Permitir que a equipe e os stakeholders tome decisões de curto e longo prazo em muitas facetas fornecendo os dados, estatísticas e tendências necessários. Aprenda com seus dados e impulsione as melhorias.

As operações criadas para fins de observabilidade são fundamentais na manutenção proativa do aplicativo, garantia de qualidade e segurança, planejamento de capacidade e gerenciamento de produtos.

Um aspecto crucial do monitoramento é o aplicativo que usa a modelagem de integridade para ajudá-lo a prever problemas antes que eles se tornem incidentes e afetem a experiência do cliente. O monitoramento eficiente reduz os ciclos reativos gastos no gerenciamento de incidentes.

Abordagem Benefícios
Crie um sistema de monitoramento com sua própria pilha e fluxos.

Trate o sistema de monitoramento como uma dimensão da carga de trabalho que é dissociada de seu utilitário. A pilha deve abranger todas as camadas, incluindo infraestrutura, integridade do aplicativo e processos de build e versão.

A captura ou amostragem de dados corporativos está fora do escopo para implementações de observabilidade.
Desacoplar pilhas de monitoramento e carga de trabalho para separar requisitos funcionais e requisitos de observabilidade e tornar possível a evolução independente. As alterações no código não devem afetar o monitoramento e vice-versa.

Como os requisitos de observabilidade são separados dos requisitos funcionais, os dados corporativosnão serão interrompidos monitorando alterações de configuração ou interrupções.
Gerar consistência no processo de coleta para cada tipo de fonte de dados.

Padronizar a instrumentação no código usando padrões do setor para telemetria, coleta de métricas de infraestrutura e ferramentas.
A consistência impede a variação no sensoriamento e na medição porque a familiaridade entre recursos semelhantes reduz o tempo gasto correlacionando e analisando dados. Você tem uma perspectiva holística para antecipar problemas.

Emita telemetria do código do aplicativo que correlaciona os pontos-chave do fluxo de execução e fornece uma exibição de ponta a ponta em diferentes níveis de granularidade. Priorize as ações com base no nível de severidade e entenda o contexto, considerando seu detalhamento. Essas informações são cruciais para fins de solução de problemas.
Possua a responsabilidade de emitir e coletar dados, mesmo quando os coletores de dados são compartilhados por várias equipes e gerenciados por equipes centrais. Ao localizar dados de monitoramento para o ambiente de carga de trabalho, a equipe pode acessar logs e métricas para resolver preocupações de carga de trabalho.
Colete apenas dados suficientes e mantenha-os por tempo suficiente.

Considere as compensações de custo associadas ao registro em log e ao armazenamento de dados.
A coleta intencional de dados ajuda a otimizar os custos financeiros e operacionais associados à coleta de mais dados do que o necessário.

Minimize o ruído e evite a computação intensiva durante a análise e reduza o custo de armazenamento de dados que você não precisa mais.
Faça uma distinção entre os diferentes sinais de monitoramento: perfis, logs, métricas e rastreamentos. Use cada sinal para a finalidade certa.

Priorize o uso de métricas para disparar ações que dependem de medidas numéricas.

Use perfis para obter visibilidade de nível inferior, como alocação de memória, no sistema.

Reserve o uso de logs e rastreamentos para fornecer contexto para fluxos e dependências.
Usando os sinais para as finalidades corretas, você pode impedir a implementação ineficiente do sistema de monitoramento.

Por exemplo, o uso de logs para ações requer análise. Talvez você consiga atingir as mesmas metas mais rapidamente com as métricas.
Agregar e visualizar dados em painéis para apresentar dados de monitoramento que atendem ao público-alvo e mantém o contexto de negócios em mente.

Use painéis situacionais para exibir dados para promover a conscientização entre os stakeholders.

Use painéis operacionais e pastas de trabalho com recursos de busca detalhada para atividades do operador, como resposta a incidentes. Atualize os painéis com frequência e forneça dados granulares.
Com as visualizações, você pode analisar tendências, acompanhar os destinos de negócios e gerenciar incidentes.

Painéis personalizados para o interesse do cliente tornam a interpretação relevante e aceleram o tempo de detecção e ação.
Torne os alertas acionáveis notificando as funções de responsabilidade com descrições padronizadas e níveis de severidade. Forneça informações agrupadas de várias fontes e acompanhe os desvios de destinos de negócios.

Disparar alertas somente para incidentes que exigem ação.

Busque alertas proativos e instigantes que iniciem ações antes que um estado degradado se torne uma falha.
Os alertas chamam a atenção para eventos significativos, conforme definido pela organização.

Um bom sistema de alerta identifica ações e gravidade e fornece apenas dados suficientes para gerar clareza e finalidade. Os operadores podem iniciar a correção sem demora.

Implantar com confiança

Ícone de meta Alcance o estado desejado da implantação com previsibilidade.

Crie uma cadeia de fornecimento de carga de trabalho que permite alcançar consistentemente a meta de previsibilidade em todos os seus ambientes, nas plataformas de hospedagem, aplicativos, dados e recursos de configuração da carga de trabalho. O mecanismo de implantação deve ser capaz de automação, teste, monitoramento e controle de versão. Ele deve ser modularizado e pronto para ser executado sob demanda. Ele não deve ser representado como um processo monolítico de ponta a ponta. A cadeia de fornecedores não é necessariamente para uma execução mais rápida, mas para obter consistência e auto-documentação em várias iterações.

A equipe de carga de trabalho é responsável pela cadeia de fornecedores no que diz respeito à sua própria carga de trabalho.

Abordagem Benefícios
Use IaC (Infraestrutura como Código) para definir os aspectos repetíveis da cadeia de fornecedores que estão prontos para produção.

Prefira abordagens declarativas em vez de métodos imperativos.
As tecnologias de IaC declarativas são projetadas com a automação e a reutilização em mente. Você pode descarregar implantações de infraestrutura de indivíduos em ferramentas e obter uma qualidade consistente.

Do ponto de vista da infraestrutura, ter menos opções de tecnologia remove a variação nas ferramentas e torna o descompasso de configuração fácil de detectar. A manutenção também será mais fácil. Se você alinhar as opções com o conjunto de habilidades existente da equipe, a equipe poderá adotá-las facilmente.
Prepare a equipe para usar a tecnologia de IaC escolhida. Saiba mais sobre seu modelo de extensibilidade, funcionalidades e limitações.

Aproveite a especialização dentro da equipe e o conhecimento compartilhado dentro da organização.
O upskilling aumenta a produtividade e promove um ambiente de colaboração por meio do aprendizado compartilhado.

Você pode preencher lacunas com treinamento em vez de contratação.
Siga as recomendações de software para desenvolvimento e manutenção de IaC.

Modularizar com moderação. Evite abstrações personalizadas ou de baixo valor.

Siga uma abordagem em camadas para refletir diferentes ciclos de vida. Formar camadas fundamentais em que as camadas inferiores permanecem constantes e as camadas superiores mudam conforme necessário.

Artefatos de implantação, como binários de aplicativo, modelos de IaC e parâmetros, fazem parte da superfície de ataque. Aplique garantias, como gerenciamento de segredos, controle de acesso e outros princípios do pilar Segurança.
Os artefatos experimentam o mesmo nível de rigor de engenharia que o código do aplicativo. Os controles de qualidade por meio de revisões e testes pares fornecem confiança na implantação.

Uma abordagem em camadas facilita a manutenção e cria limites que estabelecem linhas claras de responsabilidade.

Adicionar controles de segurança a artefatos ajuda a proteger o sistema durante o processo de implantação.
Desenvolva um manifesto de implantação comum usado em todos os ambientes. Use esse manifesto como o mecanismo padrão para projetos greenfield, atualizações incrementais de carga de trabalho ou recuperação de desastre. Remova a sobrecarga de manutenção de vários ativos.

Se houver um desastre, a recuperação será rápida e confiável porque você pode implantar um manifesto testado e testado em vez de criar um ambiente improvisado.
Busque infraestrutura imutável e efêmera implantada por meio da automação de IaC. Proibir descompasso de configuração e tornar a implantação idempotente.

Esse tipo de infraestrutura remove cargas operacionais significativas, como a aplicação de patch. Ele também beneficia os principais cenários de validação, como implantações de infraestrutura azul-verde.

Observação

Reduza o escopo do uso do portal apenas para tarefas de investigação que não se repetem.

Automatizar para fins de eficiência

Ícone de meta Substitua tarefas manuais repetitivas pela automação de software que as conclua mais rapidamente, com maior consistência e precisão e reduza os riscos.

A carga de trabalho pode ter fluxos de trabalho com processos que envolvem membros da equipe realizando tarefas mundanas, repetitivas e demoradas que realmente não precisam de intelecto humano. Dependendo da frequência, você pode gastar um tempo considerável nesses esforços, investindo mais tempo à medida que a carga de trabalho cresce. Além disso, esses processos geralmente são propensos a erros devido à entrada humana.

Por meio da automação, você economiza tempo, esforço e dinheiro e evita erros.

Abordagem Benefícios
Avalie todos os fluxos de trabalho em relação a critérios que estão no nível certo de complexidade, esforço, frequência, precisão, linha do tempo e tempo de vida.

Automatize fluxos de trabalho com base nessa avaliação e priorize os fluxos de trabalho com os retornos mais altos esperados.

Remova fluxos de trabalho redundantes ou adicione valor para justificar o esforço humano.
Você pode reinvestir a capacidade da equipe em um trabalho de maior valor e aumentar a produtividade e a consistência.

A criação de um inventário de fluxos de trabalho garante que você automatize as tarefas certas. A remoção de tarefas redundantes reduz a complexidade e os erros.
Seja explícito sobre sua decisão quando você avaliar se deseja criar ferramentas personalizadas ou comprar software.

Reserve automação de construção para trabalhos altamente especializados e de alto valor.
Ao comprar softwares prontos para uso e aproveitar o contrato de suporte, você economiza em custos de manutenção.

Ao criar software, você tem mais controle e pode atender a casos de uso exclusivos para sua equipe e carga de trabalho. No entanto, há um impacto no custo.

A opção de ferramentas traz um nível de padronização para suas operações. Com o treinamento, você pode obter um nível uniforme de preparação para a adoção.
Projete seus componentes de carga de trabalho para dar suporte a recursos de automação. Evite a situação em que a falta de automação no design do sistema promova o antipadrão de tarefas repetitivas, desacelera o crescimento e começa a acumular dívidas técnicas.
Trate toda a automação como uma dependência crítica da carga de trabalho. Adapte-se ao crescimento esperado da carga de trabalho.

Suas ferramentas de automação são parte integrante da carga de trabalho e devem aderir aos cinco pilares do Well-Architected Framework.
Projete seu componente de automação para suportar riscos, como ameaças à segurança. Com as práticas recomendadas aplicadas, você pode evitar a expansão da implementação.

A carga de trabalho continuará operando com uma garantia de alto nível se essa dependência for mantida funcional e segura.
Automatize em escala explorando opções além da carga de trabalho.

Favorecimento a um modelo de "design uma vez, executado em todos os lugares", fornecendo modelos e estruturas para integrar novos projetos e promover a reutilização de designs e implementações existentes.
Empregue métodos testados e testados e reduza as chances de falha.

Adotar práticas de implantação seguras

Ícone de meta Implemente proteções no processo de implantação para minimizar o efeito de erros ou condições inesperadas.

Durante o ciclo de desenvolvimento, os artefatos de carga de trabalho passam por muitas alterações à medida que são implementados e testados e como bugs são corrigidos.

O processo de implantação deve seguir um procedimento operacional padrão. Qualquer alteração deve ser implantada com o mesmo nível de rigor. Esse princípio se aplica igualmente ao código, à configuração e a todos os artefatos relacionados. A chave é aplicar práticas seguras o mais cedo possível para que você tenha previsibilidade na produção. Mesmo que os erros cheguem aos clientes, você poderá implementar as alterações de recuperação assim que possível.

Abordagem Benefícios
Padronizar o processo para implantar qualquer alteração usando processos de implantação automatizados, como pipelines.

Todos os ambientes devem usar pipelines.

Classifique ativos e versões por ambiente para torná-los facilmente rastreáveis e identificáveis.
Métodos de implantação consistentes reduzem problemas causados por erros de processo e variação e permitem que você concentre seu esforço nas preocupações da carga de trabalho.

A padronização garante que a implantação seja concluída com segurança, confiabilidade e com repetibilidade.

A classificação facilita a exibição de logs de implantações e problemas anteriores que ocorreram. Talvez você possa usar essas informações para agilizar operações de reversão e roll forward.
Implante pequenas atualizações incrementais em uma cadência regular. Atualizações pequenas frequentes, bem testadas facilitam a validação da versão.

Solucione problemas mais rapidamente com o mínimo de impacto do cliente devido a um volume menor.
Teste atualizações rigorosamente usando mecanismos diferentes em todo o ciclo de vida de desenvolvimento. Detectar problemas nos estágios iniciais do desenvolvimento. Correções iterativas e práticas de implantação consistentes fazem com que os problemas se reduzam quando a atualização estiver pronta para produção.
Distribuir atualizações gradualmente, com a devida diligência.

Use modelos de implantação que oferecem o controle para aumentar progressivamente o número de instâncias e clientes até que a atualização seja adotada com segurança por todos.
Teste cada atualização de maneira controlada para que os problemas sejam corrigidos no início da produção. Evite distribuir uma atualização com falha que afete toda a sua base de clientes.

Teste se a atualização é compatível com versões anteriores e futuras.
Tenha uma estratégia de mitigação para se recuperar rapidamente de falhas de implantação.

A estratégia deve abranger a tomada de decisões sobre a reversão ou encaminhamento com base na criticalidade do problema.

Tenha processos bem definidos e sistemas automatizados que podem implementar rapidamente correções usando os pipelines de implantação padrão.
Reduza a duração do impacto potencial.

Restaure o sistema de volta para a versão de trabalho anterior ou reverta para uma versão que tenha correções que foram completamente testadas.
Tenha um plano de fallback que redefine o sistema para um estado de trabalho em caso de emergência e se recupere de falhas inesperadas. Use essa estratégia somente quando necessário e com aprovação.

Esforce-se para melhorar o plano ao longo do tempo.
Você pode acelerar as correções de alta prioridade, como correção de segurança.

O pipeline acelerado pode não ter todas as verificações de seus procedimentos operacionais padrão, mas você fará com que os clientes obtenham uma versão segura da maneira mais rápida possível, o que supera as falhas de menor impacto.

Próximas etapas

Recomendamos que você examine a lista de verificação excelência operacional para explorar outros conceitos.