Code Quality

O que é o Relatório de Code Quality?

O Code Quality Dashboard fornece uma visão abrangente da saúde da sua base de código rastreando métricas-chave que impactam manutenibilidade, segurança e confiabilidade do código. Ele mede cinco dimensões críticas: Bugs, Vulnerabilidades, Code Smell, Cobertura de Testes e Duplicações. Isso permite que as equipes monitorem tendências de qualidade de código, identifiquem áreas que requerem atenção e mantenham altos padrões ao longo do ciclo de desenvolvimento.

O relatório de Code Quality exibe métricas-chave para ajudar as equipes a rastrear e melhorar a saúde geral da sua base de código.

Métricas

A funcionalidade de PR Cycle Time exibe métricas-chave para ajudar as equipes a rastrear e otimizar cada fase do ciclo de vida do pull request.

Bugs

  • O quê: Bugs representam problemas no código que podem causar comportamento inesperado ou erros em tempo de execução. Esta métrica conta o número de bugs identificados na sua base de código.
  • Por que importa: Bugs impactam diretamente a confiabilidade do software e a experiência do usuário. Rastrear bugs ajuda as equipes a priorizar correções, prevenir que problemas cheguem à produção e manter uma base de código estável. Uma contagem menor de bugs indica maior qualidade de código e menos problemas potenciais em tempo de execução.
  • Como usar: Monitore a contagem e tendência de bugs para identificar padrões. Uma tendência crescente pode indicar complexidade do código, testes insuficientes ou acúmulo de dívida técnica. Use esta métrica para priorizar correções de bugs e alocar recursos para melhorias de qualidade de código.
  • Interface:

Vulnerabilidades

  • O quê: Vulnerabilidades são fraquezas de segurança no seu código que poderiam ser exploradas por agentes maliciosos. Esta métrica rastreia o número de problemas de segurança detectados na sua base de código.
  • Por que importa: Vulnerabilidades de segurança representam riscos sérios para sua aplicação, dados e usuários. Identificar e resolver vulnerabilidades rapidamente é essencial para manter um produto seguro e proteger informações sensíveis. Contagens menores de vulnerabilidades indicam postura de segurança mais forte.
  • Como usar: Revise regularmente relatórios de vulnerabilidades e priorize correções com base na severidade. Vulnerabilidades críticas devem ser tratadas imediatamente. Rastreie tendências para garantir que suas práticas de segurança são eficazes e vulnerabilidades não estão se acumulando ao longo do tempo.
  • Exemplo: Se você tem 7 vulnerabilidades com uma queda de 12%, isso sugere que suas práticas de segurança estão melhorando. Continue monitorando para manter esta tendência positiva.
  • Interface:

Code Smell

  • O quê: Code Smell refere-se a características do código que indicam problemas potenciais de design ou implementação. Estes não são bugs, mas sim padrões que tornam o código mais difícil de entender, manter ou modificar. Esta métrica conta o número total de instâncias de code smell na sua base de código.
  • Por que importa: Contagens altas de code smell indicam dívida técnica e manutenibilidade reduzida do código. Embora code smells não causem falhas imediatas, eles desaceleram o desenvolvimento, aumentam a probabilidade de bugs e tornam mudanças futuras mais difíceis e arriscadas. Resolver code smells melhora a velocidade de desenvolvimento de longo prazo.
  • Como usar: Monitore tendências de code smell para avaliar acúmulo de dívida técnica. Uma tendência crescente sugere que as práticas de desenvolvimento precisam de melhoria. Use esta métrica para identificar prioridades de refatoração e manter padrões de qualidade de código. Decomponha contagens grandes de code smell por severidade ou categoria para focar esforços efetivamente.
  • Exemplo: Uma contagem de code smell de 300 com aumento de 24% indica dívida técnica crescente. Considere alocar tempo para esforços de refatoração para prevenir degradação adicional.
  • Interface:

Cobertura de Testes

  • O quê: Cobertura de Testes mede a porcentagem da sua base de código que é coberta por testes automatizados. Indica quanto do seu código é executado durante execuções de teste.
  • Por que importa: Maior cobertura de testes geralmente se correlaciona com menos bugs e mudanças de código mais confiantes. Boa cobertura de testes permite refatoração mais segura, detecção mais rápida de bugs e deploys mais confiáveis. Fornece confiança de que mudanças de código não introduzirão regressões.
  • Como usar: Rastreie tendências de cobertura de testes para garantir que novo código inclua testes apropriados. Defina padrões de equipe para níveis mínimos de cobertura (ex: 80% ou mais). Identifique caminhos críticos não testados e priorize adicionar testes para áreas de alto risco. No entanto, lembre-se de que cobertura é um guia, não uma garantia — foque em testes significativos, não apenas em atingir metas percentuais.
  • Exemplo: Uma cobertura de testes de 89% com aumento de 48% mostra excelente progresso nas práticas de teste. Continue este momentum para manter a confiabilidade do código.
  • Interface:

Duplicações

  • O quê: Duplicações medem a porcentagem de código que é duplicado ou copiado na sua base de código. Esta métrica identifica blocos de código repetidos que poderiam ser consolidados.
  • Por que importa: Duplicação de código aumenta a carga de manutenção e risco de bugs. Quando código duplicado precisa de atualização, mudanças devem ser feitas em múltiplos lugares, o que aumenta a chance de inconsistências e erros. Reduzir duplicação melhora manutenibilidade e torna a base de código mais eficiente.
  • Como usar: Monitore porcentagens de duplicação para identificar oportunidades de refatoração. Procure padrões em código duplicado e extraia funcionalidades comuns em componentes, funções ou módulos reutilizáveis. Defina padrões de equipe para níveis aceitáveis de duplicação (tipicamente abaixo de 5%).
  • Exemplo: Uma taxa de duplicação de 3% com aumento de 35% sugere desenvolvimento crescente por copiar e colar. Revise mudanças recentes de código para identificar e consolidar lógica duplicada.
  • Interface:

Code Quality Dashboard

A funcionalidade de Code Quality inclui um gráfico de tendência que representa visualmente a evolução das métricas ao longo do tempo. O gráfico mostra tendências de bugs do intervalo de datas selecionado, ajudando as equipes a identificar padrões e rastrear esforços de melhoria. Abaixo do gráfico, você encontra uma lista detalhada de todos os bugs com seus níveis de severidade (Menor, Maior, Crítico) e status.

Cada card de métrica exibe a contagem ou porcentagem atual junto com o indicador de tendência mostrando se a métrica está melhorando ou piorando comparada ao período anterior. Setas verdes indicam tendências positivas (bugs, vulnerabilidades, duplicações diminuindo ou cobertura de testes aumentando), enquanto setas vermelhas indicam áreas que precisam de atenção.

Filtros

Use o Filtro de Squad para visualizar métricas de PR Cycle Time para squads individuais. Se quiser uma visão mais ampla de todas as equipes, selecione o filtro "Todos" para ver a distribuição de todos os squads de uma vez.

O Filtro de Data permite visualizar dados para períodos específicos. Você pode filtrar pelo último mês, trimestre ou 365 dias. Se precisar de controle mais granular, pode filtrar por um intervalo de datas personalizado.

Use o Filtro de Players para focar em membros individuais da equipe ou um grupo específico dentro do seu squad. Você pode selecionar um membro para uma visualização detalhada, um grupo de membros se formam um sub-squad, ou todos os membros para uma visão geral das métricas de PR Cycle Time de todo o squad.

Use o Filtro de Repositório para focar em repositórios específicos ou visualizar métricas de PR Cycle Time em todos os repositórios. Este filtro é particularmente útil para isolar padrões e desempenho em bases de código individuais, especialmente ao trabalhar em múltiplos repositórios. Examinar PR Cycle Time por repositório permite identificar gargalos, otimizar práticas de revisão e deploy, e garantir consistência em fluxos de trabalho em diferentes partes da sua base de código.

Controls

Neste relatório, Controls oferece apenas Chart Settings: habilite Trendline ou Regression line para analisar padrões no gráfico. Statistical Measure e PR Cycle Time Stages não estão disponíveis; essas opções não alteram o cálculo das métricas do relatório.

Clique no botão de ajustes na barra Controls e selecione Save após escolher as opções. Consulte o guia de Controls para mais detalhes.

Conclusão

O Code Quality Dashboard é uma ferramenta poderosa para monitorar e melhorar a saúde da sua base de código. Rastreando Bugs, Vulnerabilidades, Code Smell, Cobertura de Testes e Duplicações, as equipes podem manter altos padrões de qualidade, reduzir dívida técnica e entregar software mais confiável. Monitoramento regular dessas métricas permite gestão proativa de qualidade e ajuda as equipes a tomar decisões orientadas por dados sobre melhorias de código.