Conteúdos Associados (Direct)

domingo, 25 de março de 2018


Preparando um Scorecard de Aplicações para Nuvem.


Origem: Oscar Sarquis. Preparando um Scorecard de Aplicações para Nuvem. Resenha Startup 2018.

A princípio deve-se identificar os componentes do aplicativo que exigem atenção. Essa análise requer a avaliação nos seguintes domínios: arquitetura de aplicação, código da aplicação, pontos de integração, persistência de dados, e o processo de gerenciamento do ciclo de vida da aplicação. Cada um dos domínios deverá ser avaliado segundo os critérios de acoplagem e complexidade.

Alertamos que esses critérios são os principais inibidores que interferem na capacidade de alteração do seu aplicativo. Acoplamento pode ser visto como o número de interdependências dentro e fora de sua aplicação. Por exemplo, a partir de uma perspectiva de código, se examinaria como os blocos interagem entre si, o gráfico de chamadas (diagramas de sequência), incluindo como os métodos, classes e funções interoperam. Um script ou bloco de código que depende de outros blocos de código e vice-versa é considerado acoplado.

Consideremos agora a complexidade da arquitetura e do código. Componentes de aplicação que são fortemente acoplados e altamente dependentes de especificações do software e hardware subjacentes levam à complexidade. Essa complexidade limita as opções no que se refere à implantação, execução e hospedagem ao demandar plataformas nativas na nuvem. É importante implementar abstrações e o encapsulamento dessas dependências subjacentes e manter os componentes do aplicativo integrados pra modificação conjunta.

A avaliação do aplicativo revelará o quão acoplada/interdependente e complexa é a arquitetura, o código e os processos que ele suporta, além de permitir determinar a capacidade geral de alteração de cada um desses domínios em seu aplicativo.  Dependendo dos vários graus de mutabilidade, pode-se escolher diferentes estratégias para diferentes partes do seu código. A capacidade de mudança está vinculada diretamente aos objetivos de negócios. Se o aplicativo for mutável o suficiente para entrar em uma plataforma de nuvem e atender aos objetivos de negócio, a refatoração simples poderá ser suficiente.

Se a capacidade de modificação for baixa, provavelmente não haverá escolha a não ser reconstruir todo o aplicativo. Essas decisões podem ser tomadas a partir de domínios individuais.  Pode-se por exemplo refatorar e reconstruir domínios individuais, respectivamente, se sua capacidade de alteração for alta do ponto de vista do código do aplicativo e baixa do ponto de vista de persistência de dados.


Nos próximos artigos trataremos da avaliação individual dos domínios para cada componente relevante.

Nenhum comentário:

Postar um comentário