Reduzindo o tempo necessário para arquitetos novos no time consigam contribuir efetivamente

Elemar Júnior

Para arquitetos que estão começando a atuar em um projeto, é essencial formar, o mais rápido possível, uma visão abrangente de como o código está, quais são os componentes que demandam mais atenção e, na ausência de testes, quais códigos precisam maior “critério e cuidado” antes de aceitar um pull request.

Nesse contexto, utilizar ferramentas de análise estática, como o NDepend, permite que tenhamos uma boa ideia de como está o código, antes mesmo de termos acesso a ele. De todas as features da ferramenta, uma das que mais nos agrada é o gráfico “Abstractness vs Instability”, inspirado em uma proposição do Uncle Bob.

Este gráfico estabelece uma relação entre o acoplamento (aferente e eferente) e a proporção entre tipos concretos e abstratos para tentar determinar o nível de dificuldade para manter o código.

Acoplamento Aferente (Ca) refere-se a quantidade elementos (classes, assemblies, namespaces) referenciando o elemento que está sendo analisado.

Acoplamento Eferente (Ce) refere-se a quantidade de elementos (classes, assemblies, namespaces) sendo referenciados pelo elemento que está sendo analisado.

No gráfico, cinco regiões se destacam. A área verde é aquela onde está o código “ok”. Todas as demais, demandam atenção.

Códigos na “Zona do Sofrimento/Dor”, canto inferior esquerdo, são aqueles mais difíceis de manter e que, com frequência, quando alterados, geram quebras em produção. Por isso, são códigos e que precisam de mais cobertura com testes. Além disso, na distribuição do trabalho, é o código que deve receber atenção de profissionais com mais senioridade. Finalmente, esse código é aquele que precisa, provavelmente, de revisão e refactoring com mais urgência.

Importante destacar que essa análise pode ser feita mesmo sem acesso ao código fonte, através dos binários.

Em resumo

O problema
Arquitetos precisam ter uma visão abrangente de como está o código-fonte para poder tomar atuar de forma consistente. Sem ferramentas, esse processo pode consumir muito tempo e recursos.
O Insight
Ferramentas de análise estática, como o NDepend, ajudam no diagnóstico de dividas técnicas e, com gráficos como “Abstractness vs Instability”, mostram quais partes do sistema são mais críticas e, por isso, merecem mais cuidado.
Os Benefícios
A partir da visão “Abstractness vs Instability”, arquitetos recém integrados ao time conseguem contribuir de forma mais assertiva com o projeto em prazos menores, melhorando a relação entre resultados e investimentos.

Compartilhe este insight:

Comentários

Participe deixando seu comentário sobre este artigo a seguir:

Subscribe
Notify of
guest
0 Comentários
Inline Feedbacks
View all comments

AUTOR

Elemar Júnior
Fundador e CEO da EximiaCo atua como tech trusted advisor ajudando empresas e profissionais a gerar mais resultados através da tecnologia.

NOVOS HORIZONTES PARA O SEU NEGÓCIO

Nosso time está preparado para superar junto com você grandes desafios tecnológicos.

Entre em contato e vamos juntos utilizar a tecnologia do jeito certo para gerar mais resultados.

Insights EximiaCo

Confira os conteúdos de negócios e tecnologia desenvolvidos pelos nossos consultores:

Engenharia de Software

Três vantagens reais de utilizar orquestradores BPM para serviços

Arquiteto de software e solução com larga experiência corporativa
Desenvolvimento de Software

Os principais desafios ao adotar testes

Especialista em Testes e Arquitetura de Software
Arquitetura de Dados

Insights de um DBA na análise de um plano de execução

Especialista em performance de Bancos de Dados de larga escala

Acesse nossos canais

Simplificamos, potencializamos e aceleramos resultados usando a tecnologia do jeito certo

EximiaCo 2022 – Todos os direitos reservados

0
Queremos saber a sua opinião, deixe seu comentáriox
()
x

Reduzindo o tempo necessário para arquitetos novos no time consigam contribuir efetivamente

Para se candidatar nesta turma aberta, preencha o formulário a seguir:

Condição especial de pré-venda: R$ 14.000,00 - contratando a mentoria até até 31/01/2023 e R$ 15.000,00 - contratando a mentoria a partir de 01/02/2023, em até 12x com taxas.

Tenho interesse nessa capacitação

Para solicitar mais informações sobre essa capacitação para a sua empresa, preencha o formulário a seguir:

Tenho interesse em conversar

Se você está querendo gerar resultados através da tecnologia, preencha este formulário que um de nossos consultores entrará em contato com você:

O seu insight foi excluído com sucesso!

O seu insight foi excluído e não está mais disponível.

O seu insight foi salvo com sucesso!

Ele está na fila de espera, aguardando ser revisado para ter sua publicação programada.

Tenho interesse em conversar

Se você está querendo gerar resultados através da tecnologia, preencha este formulário que um de nossos consultores entrará em contato com você:

Tenho interesse nessa solução

Se você está procurando este tipo de solução para o seu negócio, preencha este formulário que um de nossos consultores entrará em contato com você:

Tenho interesse neste serviço

Se você está procurando este tipo de solução para o seu negócio, preencha este formulário que um de nossos consultores entrará em contato com você:

× Precisa de ajuda?