Etapa 1. Avaliar seus aplicativos - AWS Orientação prescritiva

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:

  1. Identifique a meta ou o resultado que você quer alcançar.

  2. Determine as perguntas que devem ser respondidas para determinar se a meta está sendo atingida.

  3. 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)?