Examinar as métricas de qualidade e complexidade

Concluído

Embora haja muitas métricas de qualidade, aqui estão algumas das mais importantes.

As métricas de complexidade podem ajudar a medir a qualidade. A complexidade ciclomática mede o número de caminhos diferentes por meio do código-fonte de um programa. Outra maneira de entender a qualidade é calcular as medidas de complexidade de Halstead.

Esta medida analisa:

  • Vocabulário do programa
  • Duração do programa
  • Comprimento calculado do programa
  • Volume
  • Dificuldade
  • Effort

As ferramentas de análise de código podem verificar se há segurança, desempenho, compatibilidade, uso de idioma e globalização. Essas ferramentas devem fazer parte do processo de compilação de software e caixa de ferramentas de cada desenvolvedor.

Executar regularmente uma ferramenta de análise de código estático e ler sua saída é uma ótima maneira de melhorar como desenvolvedor, pois os problemas encontrados pelas regras de software geralmente podem ensinar algo novo.

Uma das promessas do DevOps é fornecer software mais rápido e com maior qualidade. No passado, esses dois gols pareciam opostos. Quanto mais rápido você ia, menor a qualidade. Quanto maior a qualidade, mais tempo levava. Mas os processos de DevOps podem ajudá-lo a encontrar problemas anteriormente, o que geralmente significa que eles levam menos tempo para serem corrigidos.

Já falamos sobre algumas métricas gerais de projeto e KPIs antes. Veja a seguir uma lista de métricas que se relacionam diretamente com a qualidade do código que está sendo produzido e os processos de build e implantação:

  • Percentual de builds com falha - No geral, que percentual de builds falha?
  • Percentual de implantações com falha - No geral, que percentual de implantações falha?
  • Volume de tíquetes - Qual é o volume geral de tíquetes de bugs do cliente?
  • Percentual de retorno de bugs – Qual percentual de tíquetes de cliente ou de bugs é reaberta?
  • Percentual de trabalho não planejado – Qual percentual do trabalho geral não é planejado?