Examinar métricas de complexidade e qualidade

Concluído

Embora existam 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 através do código-fonte de um programa. Outra maneira de entender a qualidade é através do cálculo de medidas de complexidade de Halstead.

Esta medida contempla:

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

As ferramentas de análise de código podem verificar segurança, desempenho, compatibilidade, uso de linguagem e globalização. Essas ferramentas devem fazer parte da caixa de ferramentas e do processo de compilação de software 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, porque os problemas encontrados pelas regras de software muitas vezes podem ensinar algo novo.

Uma das promessas do DevOps é entregar software mais rápido e com maior qualidade. No passado, estes dois objetivos pareciam opostos. Quanto mais rápido você for, menor será a qualidade. Quanto maior a qualidade, mais tempo demorava. Mas os processos de DevOps podem ajudá-lo a encontrar problemas mais cedo, o que geralmente significa que eles levam menos tempo para serem corrigidos.

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

  • Porcentagem de compilações com falha - No geral, qual porcentagem de compilações está falhando?
  • Porcentagem de implantações com falha - No geral, qual porcentagem de implantações está falhando?
  • Volume de tickets - Qual é o volume total de tickets de clientes ou bugs?
  • Porcentagem de rejeição de bugs - Qual porcentagem de tickets de clientes ou bugs são reabertos?
  • Percentagem de trabalho não planeado - Que percentagem do trabalho total não é planeado?