As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Etapa 1. Avaliar seus aplicativos
Os objetivos dessa fase são:
-
Entender completamente o cenário dos seus aplicativos e prepará-los para plataformas de dados modernas para que você possa acelerar o tempo de geração de valor sem afetar seus negócios e, em seguida, modernizar, otimizar e escalar.
-
Criar o perfil do seu cenário de aplicativos para identificar os benefícios, riscos e custos associados à mudança.
-
Fornecer um conjunto de serviços de ponta a ponta: desde a estratégia e planejamento, passando pela implantação, migração e modernização do aplicativo, até o suporte contínuo.
-
Criar políticas, recomendações e controles que forneçam práticas e ferramentas reutilizáveis para oferecer valor comercial contínuo.
Na fase de avaliação, proprietários e arquitetos de aplicativos usam um manual de diagnóstico de modernização para validar suas metas e prioridades de modernização.
Usando o manual de diagnóstico de modernização
Um manual de diagnóstico de modernização fornece um processo para determinar o valor da mudança do estado atual para o estado futuro da empresa. Isso inclui as mudanças tecnológicas que a modernização envolve.
Você usa o manual de diagnóstico para determinar a prioridade do seu aplicativo ou pacote de aplicativos para a modernização da nuvem e para identificar os componentes que precisam ser abordados durante a modernização.
Dimensões de diagnóstico
O manual do diagnóstico de modernização ajuda você a entender as seguintes dimensões do estado atual e do estado de destino (pós-migração) de um aplicativo ou de um grupo de aplicativos:
-
Agrupamento de aplicativos – Há um motivo para agrupar aplicativos (por exemplo, por tecnologia ou modelo operacional) para a modernização?
-
Sequenciamento – Existe uma ordem na qual os aplicativos devem ser modernizados com base em dependências?
-
Tecnologia – Quais são as categorias de tecnologia (por exemplo, middleware, banco de dados, sistema de mensagens)?
-
Dependências – Os aplicativos têm dependências importantes de outros sistemas ou middleware?
-
Ambientes – Quantos ambientes de desenvolvimento, teste e produção são usados?
-
Armazenamento – Quais são os requisitos de armazenamento (por exemplo, o número de cópias dos dados de teste)?
-
Modelo operacional – Todos os componentes do aplicativo podem adotar um fluxo contínuo de integração e entrega (CI/CD)?
-
Em caso afirmativo, quais responsabilidades de infraestrutura devem ser distribuídas às equipes de aplicativos e para quem?
-
Caso contrário, quais responsabilidades de infraestrutura (por exemplo, uso de patches) devem permanecer com uma equipe de operações?
-
-
Modelo de entrega:
-
Com base no aplicativo ou no grupo de aplicativos, você deve refatorar, reescrever, substituir ou redefinir a plataforma?
-
Qual parte da modernização deve usar serviços nativos de nuvem?
-
-
Conjuntos de habilidades – Qual especialização é necessária? Por exemplo:
-
Uma base de aplicativos em nuvem para criar aplicativos com uma arquitetura modular usando tecnologias sem servidor e em contêiner desde o início.
-
Experiência em DevOps para desenvolver soluções nas áreas de processos de CI/CD, infraestrutura como código e automação ou observabilidade de aplicativos usando serviços de código aberto e ferramentas e serviços da AWS.
-
-
Abordagem de modernização – Considerando o estado atual dos aplicativos, as opções de tecnologia em nuvem, a defasagem técnica atual, o CI/CD, o monitoramento, as habilidades e o modelo operacional, qual é o trabalho de migração técnica que precisa ser feito?
-
Cronograma de modernização – Quais são as considerações sobre o cronograma do portfólio de negócios ou outras considerações de trabalho planejado que podem afetar o prazo de modernização?
-
Custo unitário e total da infraestrutura – Qual é o custo anual para manter sua workload on-premises em comparação à AWS, com base na análise econômica?
A avaliação de aplicativos em relação a essas dimensões ajuda você a se manter ancorado nos negócios, na tecnologia e na economia à medida que conduz sua modernização para a nuvem.
Blocos de construção
Ao modernizar aplicativos, você pode classificar suas observações em três blocos de construção: agilidade comercial, agilidade organizacional e eficácia da engenharia.
-
Agilidade comercial – Práticas que dizem respeito à eficácia dentro da empresa para transformar as necessidades da empresa em requisitos. Capacidade de resposta da organização de entrega às solicitações de negócios e quanto controle a empresa sobre a liberação de funcionalidades em ambientes de produção.
-
Agilidade organizacional – Práticas que definem os processos de entrega. Os exemplos incluem metodologia ágil e diplomações de DevOps, bem como atribuição e clareza de funções e colaboração, comunicação e capacitação gerais em toda a organização.
-
Eficácia da engenharia – Práticas de desenvolvimento relacionadas à garantia de qualidade, testes, CI/CD, gerenciamento de configurações, design de aplicativos e gerenciamento de código-fonte.
Identificação de métricas
Para saber se você está entregando o que importa para seus clientes, você deve implementar medidas que impulsionem a melhoria e acelerem a entrega. O método GQM (Goal, Question, Metric) fornece uma estrutura eficaz para garantir que suas medidas atendam a esses critérios. Use essa estrutura para superar suas metas seguindo estas etapas:
-
Identifique a meta ou o resultado que você quer alcançar.
-
Determine as perguntas que devem ser respondidas para determinar se a meta está sendo atingida.
-
Decida o que deve ou poderia ser medido para responder às perguntas de forma adequada. Existem duas categorias de medição:
-
Métricas do produto, que garantem que você esteja entregando o que importa para seus clientes.
-
Métricas operacionais, que garantem que você esteja melhorando o ciclo de vida de entrega do seu software.
-
Métricas de produto
As métricas do produto se concentram nos resultados comerciais e devem ser estabelecidas quando o retorno sobre o investimento (ROI) de um novo escopo de trabalho é determinado. Uma técnica útil ao estabelecer uma métrica de produto é perguntar-se sobre o que mudará nos negócios quando esse novo escopo de trabalho for implementado. É útil formalizar esse pensamento na forma de um teste que se concentre no que seria verdade quando um atributo de modernização fosse fornecido.
Por exemplo, se você acredita que a migração de transações de sistemas herdados abrirá novas oportunidades de obter novos clientes, qual é a melhoria? Quanta capacidade precisa ser criada para receber o próximo cliente? Como um teste seria elaborado para validar esse resultado? Para este cenário, as métricas do seu produto incluem o seguinte:
-
Identifique a hipótese ou o teste de valor comercial (por exemplo, liberar x por cento da capacidade de transação irá captar y por cento de novos negócios).
-
Estabeleça a linha de base (por exemplo, a capacidade atual de x transações suporta y clientes).
-
Valide o resultado (por exemplo, você melhorou a capacidade em x por cento, então, você pode agora incorporar y por cento de novos negócios?)
Métricas operacionais
Para determinar se você está melhorando o ciclo de vida de entrega do seu software e acelerando sua modernização, você deve conhecer o prazo de entrega e o tempo de implementação da entrega do software. Ou seja, com que rapidez você pode converter uma necessidade comercial em funcionalidade na produção?
Métricas operacionais úteis incluem:
-
Prazo de entrega – Quanto tempo é necessário para que um escopo de trabalho vá da solicitação até a produção?
-
Tempo do ciclo – Quanto tempo é necessário para implementar um escopo de trabalho do início ao fim?
-
Frequência de implantação – Com que frequência você implanta mudanças na produção?
-
Tempo para restaurar o serviço – Quanto tempo é necessário para se recuperar de uma falha (medido como o tempo médio de reparo ou MTTR)?
-
Alteração da taxa de falhas – Qual é o tempo médio entre falhas (MTBF)?