Examinar as métricas de qualidade e complexidade
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.
Métricas comuns relacionadas à qualidade
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?