Partilhar via


Planeje sua modernização na nuvem

Um planeamento e uma governação adequados são fundamentais para a modernização. Nesta etapa, você decide qual abordagem de modernização aplicar e como fazê-la. Um planejamento cuidadoso reduz a chance de estouros de orçamento, aumento de escopo ou interrupções de serviço durante a execução.

Escolha uma estratégia de modernização

Modernizar uma carga de trabalho significa atualizá-la para melhor se alinhar com os objetivos de negócios atuais, os padrões técnicos e os recursos de nuvem. As três estratégias principais (replataformar, refatorar e rearquitetar) existem num espectro de complexidade e valor. A maioria dos esforços de modernização utiliza uma combinação destas abordagens.

A chave é adequar a estratégia às necessidades específicas de cada componente, considerando seus objetivos, cronograma e recursos disponíveis. Evite a tentação de se modernizar demais. Embora as novas tecnologias sejam empolgantes, todas as decisões devem ser fundamentadas no valor do negócio.

Estratégia de modernização Definition Quando utilizar Pros Cons
Migrar de Plataforma Mova aplicativos para plataformas de nuvem com alterações mínimas de código (IaaS para PaaS). Ganhos rápidos com o mínimo de interrupções necessárias. O código atual funciona, mas a carga de operações é alta. Implementação rápida. Reduz o esforço de manutenção. Melhora a fiabilidade através de uma melhor infraestrutura. Ganhos de capacidade limitados. O aplicativo principal permanece inalterado.
Refactor Modifique o código existente para melhorar a estrutura, o desempenho e a otimização da nuvem, mantendo a funcionalidade. A dívida técnica causa problemas ou o código não é otimizado para a nuvem. Melhora a capacidade de manutenção, o desempenho e a segurança. Permite melhorias futuras mais fáceis. Requer esforço e testes significativos do desenvolvedor. Não há novos recursos imediatos para os usuários.
Rearchitect Redesenhe a arquitetura do aplicativo usando padrões nativos da nuvem (microsserviços, sem servidor, orientados a eventos). A arquitetura atual limita o crescimento ou a otimização da nuvem. Resolve problemas fundamentais de escalabilidade. Permite serviços avançados na nuvem. Estabelece as bases para a inovação a longo prazo. Mais complexo e demorado. Elevado custo inicial e risco. Requer testes extensivos e operações paralelas.

Planejar modernizações em fases

Tentar modernizar toda uma carga de trabalho complexa (ou múltipla) de uma só vez é arriscado. Divida o esforço em fases lógicas. O faseamento permite que você forneça valor incremental, reduza o risco ao lidar com partes gerenciáveis e ajuste o curso entre as fases com base no que você aprende.

  1. Divida as modernizações em fases lógicas. Determine como dividir o trabalho. Não há um único "caminho certo". Escolha o detalhamento que faz sentido para sua arquitetura e estrutura de equipe. O objetivo é que cada fase seja pequena o suficiente para ser executada e testada sem complexidade esmagadora, mas significativa o suficiente para fornecer valor. Formas comuns de decompor fases:

    Método de divisão Description Example
    Por componente ou camada Fases separadas com base em camadas de carga de trabalho ou limites de carga de trabalho Fase 1: Migração de banco de dados, Fase 2: Refatoração de aplicativos, Fase 3: Modernização da interface do usuário
    Por prioridade e complexidade Organize o trabalho desde alterações de baixo risco até alterações de alto risco Fase 1: Serviços não críticos, Fase 2: Lógica de negócios principal, Fase 3: Recursos voltados para o cliente
    Por função de negócio Fases de estrutura em torno de limites funcionais ou de aplicação Fase 1: Carga de trabalho de gerenciamento de usuários, Fase 2: Processamento de pagamentos, Fase 3: Serviços de relatório
  2. Comece com mudanças de baixo risco e alto valor. Para a sua Fase 1, escolha algo que seja alcançável e proporcione uma vitória tangível, mas que não coloque em risco o negócio se surgirem problemas. Por exemplo, modernize primeiro um serviço de back-end ou uma ferramenta interna, em vez do site voltado para o cliente. Procure concluir a primeira fase rapidamente (um ou dois meses) como ponto de prova. O sucesso precoce gera confiança na equipe e suporte às partes interessadas para as fases subsequentes.

  3. Sequencie as fases restantes por valor e dependências. Após a primeira fase, planeje a ordem das fases subsequentes com base no valor comercial e nas dependências técnicas. Crie um roteiro onde cada fase tenha um escopo definido e garanta que os componentes críticos tenham seus elementos de suporte já modernizados ou compatíveis.

    • Abordar as zonas frágeis. Se uma carga de trabalho estiver frágil em seu estado atual, você pode até precisar de uma "Fase 0" preliminar para estabilizá-la no local (aplicar correções urgentes no ambiente antigo) para que seja seguro modernizá-la na Fase 1.
    • Aborde os pré-requisitos primeiro: Se a modernização da Carga de Trabalho B depender da Carga de Trabalho A estar modernizada (ou pelo menos estável), execute primeiro a Carga de Trabalho A.
    • Considere o valor do negócio vs o risco: Você pode decidir alternar, fazendo uma peça de alto valor, mas mais arriscada em uma fase, e depois uma peça de menor risco na próxima, para equilibrar a carga sobre a equipe e o risco para o negócio.
  4. Definir critérios de sucesso para cada fase. Para cada fase, decida quando ela será concluída e bem-sucedida. Ter critérios de saída claros evita o aumento do escopo em uma fase. Os critérios de sucesso podem incluir:

    Tipo de critério de sucesso Examples
    Objetivos técnicos • O Serviço X é executado no Serviço de Aplicativo do Azure e lida com 20% mais de carga
    • O banco de dados Y migra para o SQL do Azure com zero perda de dados e desempenho dentro de 10% da linha de base anterior
    Portões de qualidade • Sem erros de Severidade 1 abertos
    • Todos os testes automatizados passam
    • A verificação de segurança mostra zero vulnerabilidades críticas
    Restrições temporais e orçamentais • Concluir dentro de três meses e dentro de 5% do orçamento
    • Implantar durante as janelas de manutenção programada
  5. Adaptar planos com base em resultados. Após a conclusão de uma fase, reveja os resultados e as lições aprendidas. Você pode achar que algumas suposições estavam erradas ou algumas tarefas eram mais fáceis ou mais difíceis do que o esperado. Ajuste o plano para as próximas fases conforme necessário, como adicionar, combinar ou repriorizar fases. A abordagem faseada pretende ser flexível. O importante não é tentar fazer tudo de uma vez.

Plano de governança de modernização

A modernização geralmente introduz mudanças significativas em cargas de trabalho críticas, portanto, é necessária uma governança forte para gerenciar riscos. A governança de modernização envolve processos de gerenciamento de mudanças, congelamentos e controle de escopo:

  1. Estabeleça um fluxo de trabalho formal de aprovação de alterações. Defina um processo de aprovação estruturado para todas as alterações relacionadas à modernização. Integre-se com os Change Advisory Boards (CAB) existentes ou crie um conselho de revisão de modernização dedicado. Atribua a autoridade de aprovação com base na categoria de alteração e documente o fluxo de trabalho completo no seu plano de projeto. Para obter mais informações, consulte Gerenciar alterações.

  2. Congele as alterações quando necessário. Antes e durante os principais eventos de implantação, suspenda outras alterações nessas cargas de trabalho. Um congelamento de alterações significa que nenhuma alteração não relacionada é feita nas cargas de trabalho antes e durante a implantação. Ele estabiliza o ambiente para que você não esteja atingindo um alvo em movimento. Comunique o período de congelamento a todas as equipas relevantes.

  3. Evite o alargamento descontrolado do escopo. O alargamento do escopo é um grande desafio nas modernizações. Exigir que qualquer alteração proposta ao escopo de modernização acordado passe por uma etapa de avaliação e aprovação. A maioria das solicitações deve ser adiada, a menos que sejam cruciais. Formalize o "não, não agora" em relação a trabalho extra através de um processo. Mantenha um backlog de ideias desejáveis que possam surgir, as quais poderão ser incorporadas em um projeto de inovação futuro, uma vez que a modernização atual esteja concluída. As partes interessadas devem saber que a sua ideia não está perdida.

Defina sua estratégia de implantação

Uma decisão de execução crucial é como implantar os componentes modernizados na produção. Existem duas estratégias principais. Num processo de implantação em produção, atualiza-se a configuração existente (como renovar uma casa enquanto vive nela). Em uma implantação paralela, você constrói uma nova configuração em paralelo à existente (como construir uma nova casa e, em seguida, transferir-se). Escolha a estratégia que se adapta ao nível de mudança e tolerância ao risco para cada fase ou carga de trabalho. Muitas vezes, cada fase da modernização pode usar uma estratégia diferente. Por exemplo, pode escolher no local para a Fase 1 (se for uma pequena alteração) e paralelo para a Fase 2 (se esta envolver uma grande reforma do banco de dados).

  1. Utilize a implementação local para alterações de baixo risco e reversíveis. A implantação no próprio local introduz alterações diretamente no ambiente de produção atual, possivelmente durante uma janela de manutenção. Essa estratégia minimiza a sobrecarga de infraestrutura, mas aumenta o risco de tempo de inatividade. Use a implantação no local apenas quando as alterações forem pequenas, isoladas e facilmente reversíveis. Os exemplos incluem pequenas atualizações de código ou alterações de esquema que podem ser revertidas rapidamente usando controle de origem ou backups.

  2. Use a implantação paralela para alterações complexas ou de alto risco. Neste modelo, você configura um novo ambiente para a carga de trabalho modernizada enquanto a carga de trabalho antiga ainda é executada. Os dados são mantidos sincronizados (por meio de processos de replicação ou migração) para que, quando estiverem prontos, você possa passar do ambiente antigo para o novo. Use para alterações complexas ou de alto risco, onde o tempo de inatividade deve ser mínimo. Se você estiver fazendo uma grande migração de banco de dados ou uma rearquitetura que envolva uma nova infraestrutura, o paralelo geralmente é o caminho. Além disso, se a carga de trabalho for de missão crítica e não puder ter mais do que alguns minutos de tempo de inatividade, o paralelo (com replicação e transferência rápida) será necessário.

    Strategy Description Quando utilizar Pros Cons
    Implantação no local Implantar alterações diretamente no ambiente de produção atual Pequenas alterações reversíveis com janelas de manutenção aceitáveis Sem infraestrutura duplicada, implantação mais rápida Maior risco, requer tempo de inatividade, reversão mais lenta
    Implantação paralela Execute um novo ambiente juntamente com a carga de trabalho existente durante a transição Alterações complexas, cargas de trabalho de missão crítica que exigem tempo de inatividade mínimo Implantação mais segura, tempo de inatividade quase nulo, fallback imediato Custos de infraestrutura duplicados, sincronização de dados complexa, esforço de desativação

Plano para mitigar os riscos de modernização

Mesmo com o melhor planeamento e testes, nem todas as mudanças correm na perfeição. A modernização geralmente envolve mudanças complexas, e há sempre o risco de que uma implantação possa introduzir um problema ou algo se comporte inesperadamente na produção. A marca de uma equipe bem preparada é ter um plano de reversão sólido para cada mudança ou fase.

  1. Use técnicas de implantação progressiva. Se a plataforma permitir, faça lançamentos canários ou mudança gradual de tráfego para partes modernizadas do aplicativo. Por exemplo, implante a nova versão ao lado da antiga e, inicialmente, envie apenas 5% de usuários para ela enquanto monitora. Essa abordagem pode detetar problemas enquanto a maioria dos usuários não é afetada. Se as métricas parecerem boas, aumente para 50%e, em seguida, 100%. Se algo começar a falhar, roteie de volta para 0% novo (reversão) rapidamente.

  2. Crie procedimentos de reversão para cada alteração importante. Para cada alteração importante ou produto de fase, escreva um procedimento de reversão passo a passo. Liste claramente cada ação para desfazer a alteração, quem é responsável por cada etapa e quanto tempo ela levaria. Após o rollback, inclua quais verificações confirmam que o sistema voltou ao normal.

  3. Automatizar os rollbacks sempre que possível. Scripts de reversão automatizados ou infraestrutura como código podem tornar a recuperação rápida e confiável. Use ferramentas de infraestrutura como código (Terraform, modelo ARM, Bicep) para reimplantar estados válidos conhecidos. As implantações azul-verde ou canárias permitem inerentemente "voltar" para a versão anterior, se necessário. Teste esses mecanismos no ambiente de staging. O objetivo é reduzir o esforço manual (às 3h durante um incidente) a uma ação roteirizada. Escreva as etapas de reversão ao lado das etapas de implantação, para que seja fácil reverter.

  4. Tenha suporte em espera durante e após a implantação. Planeje implantações durante períodos de baixo tráfego (fins de semana ou durante a noite) quando possível, mas certifique-se de que os especialistas relevantes estejam disponíveis. Não o faça quando os principais membros da equipa estiverem de férias. Tenha um período de suporte estendido (hypercare) logo após a implantação com desenvolvedores e operações em espera para detetar quaisquer problemas antecipadamente. Para grandes implementações, algumas organizações têm monitoramento no estilo sala de guerra por 24 a 48 horas após a implementação.

Garantir a aprovação das partes interessadas

Até aqui, focámo-nos no planeamento técnico. Igualmente importante é obter a adesão das partes interessadas, tanto da liderança empresarial como técnica. A modernização geralmente requer um investimento significativo, então você precisa apresentar um caso convincente e manter as partes interessadas envolvidas durante todo o processo.

  1. Adapte a proposta de valor a cada público. Diferentes partes interessadas se preocupam com resultados diferentes. Personalize as suas mensagens:

    • As equipes técnicas priorizam a eficiência operacional: manutenção reduzida, melhor tempo de atividade e menos escalonamentos.
    • Os líderes empresariais concentram-se nos resultados: time-to-market mais rápido, melhor experiência do cliente e redução de custos.
  2. Documente um plano estruturado com etapas definidas. As partes interessadas ficam mais confortáveis se virem um roteiro claro. Apresente as fases que você planejou, conforme decidido anteriormente, e o que cada uma deve alcançar, com um cronograma aproximado. Enfatize as primeiras vitórias, como "Dentro de 6 semanas, pretendemos modernizar o componente X e melhorar seu desempenho em 20%."

  3. Quantificar o valor da modernização. Prepare algumas métricas de antes e depois e direcione melhorias. Exemplos de métricas e intervalos de melhoria típicos (com base em benchmarks do setor) são:

    Category Métricas de exemplo Intervalo de valores típico
    Redução de custos Infraestruturas, manutenção, licenciamento 20-40% poupança anual
    Ganhos de produtividade Frequência de implantação, tempo de resolução Melhoria de 50-80%
    Mitigação de riscos Tempo de inatividade evitado, incidentes de segurança $100K-$ 1M+ redução de custos
    Revenue Tempo de comercialização mais rápido, retenção de clientes 10-25% crescimento da receita
  4. Aborde os riscos do projeto. Identificar potenciais desafios e demonstrar preparação através de estratégias de mitigação específicas. Os riscos comuns incluem replicação de dados, degradação do desempenho e problemas de integração. Apresente soluções como procedimentos de reversão automatizados, protocolos de teste abrangentes e disponibilidade de consultas especializadas. A discussão transparente dos riscos aumenta a confiança das partes interessadas na liderança do projeto e no rigor do planeamento.

  5. Manter uma cadência de comunicação regular. Relate o progresso em relação aos critérios de sucesso definidos, destaque as entregas concluídas e comunique as próximas etapas. Solicite feedback ativamente e resolva as preocupações para manter o suporte durante todo o processo de modernização.

Próximo passo