6 min leitura • Guide 76 of 877
Métricas e rastreamento de qualidade de código
Qualidade de código impacta diretamente velocidade de desenvolvimento, taxas de bugs e moral da equipe. Rastrear métricas de qualidade ajuda equipes identificarem áreas problemáticas antes que se tornem críticas. GitScrum integra com ferramentas de desenvolvimento para tornar qualidade visível junto com progresso do projeto.
Dimensões de qualidade de código
| Dimensão | Métricas | Impacto |
|---|---|---|
| Confiabilidade | Densidade de bugs, MTTR | Experiência do usuário |
| Manutenibilidade | Complexidade, duplicação | Velocidade de desenvolvimento |
| Segurança | Vulnerabilidades, OWASP | Exposição a risco |
| Performance | Tempo de carregamento, eficiência | Satisfação do usuário |
| Testabilidade | Cobertura, qualidade de teste | Confiança para mudar |
Framework de métricas principais
Métricas principais
MÉTRICAS DE QUALIDADE DE CÓDIGO
══════════════════════════════
MÉTRICAS DE COBERTURA:
├── Cobertura de linha: % linhas testadas
├── Cobertura de branch: % branches testadas
├── Cobertura de função: % funções testadas
└── Meta: 70-80% (dependente de contexto)
MÉTRICAS DE COMPLEXIDADE:
├── Complexidade ciclomática por função
├── Complexidade cognitiva
├── Linhas por arquivo/função
└── Profundidade de aninhamento
MÉTRICAS DE DUPLICAÇÃO:
├── Linhas duplicadas %
├── Blocos duplicados
├── Detecção de copy-paste
└── Meta: <5% duplicação
DÍVIDA TÉCNICA:
├── Razão de dívida (dívida/tempo dev)
├── Dívida em horas/dias
├── Dívida por componente
└── Tendência ao longo do tempo
Métricas de revisão
MÉTRICAS DE REVISÃO DE CÓDIGO
════════════════════════════
VELOCIDADE:
├── Tempo para primeira revisão
├── Tempo para merge
├── Ciclos de revisão
└── Distribuição de idade PR
QUALIDADE:
├── Comentários por PR
├── Taxa de aprovação
├── Solicitações de retrabalho
└── Profundidade de revisão
PARTICIPAÇÃO:
├── Revisões por pessoa
├── Distribuição de revisão
├── Carga de trabalho do revisor
└── Difusão de conhecimento
METAS:
├── Primeira revisão: <4 horas
├── Tempo para merge: <24 horas
├── Ciclos de revisão: <2
└── Todos membros da equipe revisando
Dashboard de qualidade GitScrum
Visualização integrada
LAYOUT DO DASHBOARD DE QUALIDADE
═══════════════════════════════
┌─────────────────────────────────────────────────┐
│ Visão geral de qualidade de código │
│ Última atualização: 5 min atrás │
├─────────────────────────────────────────────────┤
│ │
│ PONTUAÇÃO DE SAÚDE │
│ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░ 78/100 (↑ 3 pts) │
│ │
├────────────┬────────────┬────────────┬──────────┤
│ Cobertura │ Complexidade│ Duplicação │ Dívida │
│ 72% ↑ │ 12 ↓ │ 3.2% = │ 4.2d ↓ │
│ Meta:70% │ Meta:<15 │ Meta:<5% │ │
└────────────┴────────────┴────────────┴──────────┘
│ │
│ TENDÊNCIA (Últimos 30 Dias) │
│ │
│ Cobertura: ────────────────────▲ │
│ Dívida: ────────▼────────────── │
│ Bugs: ────────────────────── │
│ │
└─────────────────────────────────────────────────┘
Qualidade por componente
TABELA DE QUALIDADE POR COMPONENTE
══════════════════════════════════
Componente │ Cobertura │ Complexidade │ Dívida │ Status
──────────────────┼───────────┼─────────────┼────────┼────────
api/auth │ 85% │ 8 │ 0.5d │ ✓ Bom
api/payments │ 72% │ 14 │ 1.2d │ ⚠ Observar
api/users │ 68% │ 11 │ 0.8d │ ✓ Bom
frontend/core │ 45% │ 22 │ 2.1d │ ✗ Ação
frontend/common │ 78% │ 9 │ 0.4d │ ✓ Bom
──────────────────┴───────────┴─────────────┴────────┴────────
ATENÇÃO NECESSÁRIA:
├── frontend/core: Baixa cobertura, alta complexidade
└── api/payments: Complexidade em tendência de alta
Planejamento consciente de qualidade
Metas de qualidade de sprint
METAS DE QUALIDADE DE SPRINT
═══════════════════════════
METAS DE QUALIDADE DO SPRINT 15:
├── Manter cobertura acima de 70%
├── Reduzir complexidade api/payments em 2 pontos
├── Resolver 3 code smells críticos
└── Zero vulnerabilidades de segurança
TAREFAS DE QUALIDADE:
├── [TECH] Refatorar classe PaymentProcessor
│ Estimativa: 4h
│ Impacto: -3 complexidade
│
├── [TECH] Adicionar testes para AuthService
│ Estimativa: 6h
│ Impacto: +8% cobertura
│
└── [TECH] Corrigir duplicação de código em validadores
Estimativa: 2h
Impacto: -1.5% duplicação
ALOCAÇÃO DE CAPACIDADE DE SPRINT:
├── Features: 70%
├── Bugs: 15%
└── Dívida técnica: 15%
Portas de qualidade
PORTAS DE QUALIDADE PARA MERGE
═════════════════════════════
VERIFICAÇÕES AUTOMATIZADAS:
├── ✓ Cobertura ≥ cobertura existente
├── ✓ Sem novos problemas críticos
├── ✓ Sem novas vulnerabilidades de segurança
├── ✓ Sem nova duplicação de código
├── ✓ Complexidade dentro dos limites
└── ✓ Todos testes passando
APLICAÇÃO:
├── Bloquear merge se porta falhar
├── Requerer override manual para exceções
├── Rastrear overrides para revisão
└── Monitoramento de tendência para regressões
Integrações de ferramentas
Integração SonarQube
SONARQUBE + GITSCRUM
════════════════════
CONFIGURAÇÃO DE SINCRONIZAÇÃO:
├── Mapeamento de chave de projeto
├── Webhook para atualizações
├── Sincronização de problemas (opcional)
└── Incorporação de dashboard
MÉTRICAS VISÍVEIS:
├── Status de porta de qualidade
├── Métricas de novo código
├── Saúde geral
└── Detalhamento de problemas
FLUXO DE TRABALHO:
1. Desenvolvedor faz push do código
2. CI executa análise SonarQube
3. Resultados sincronizam para GitScrum
4. Qualidade visível na tarefa
5. Porta bloqueia se falhar
Integração GitHub
SINCRONIZAÇÃO DE MÉTRICAS GITHUB
═══════════════════════════════
MÉTRICAS PR:
├── Tempo para primeira revisão
├── Ciclos de revisão
├── Contagem de comentários
├── Tempo de merge
└── Status CI
DADOS VINCULADOS:
├── PR vinculado à tarefa GitScrum
├── Commits visíveis na tarefa
├── Status de build mostrado
├── Status de revisão sincronizado
└── Auto-fechamento no merge
Fluxo de trabalho de melhoria de qualidade
Processo de redução de dívida
PROCESSO DE DÍVIDA TÉCNICA
══════════════════════════
IDENTIFICAR:
├── Análise regular de código
├── Pontos de dor da equipe
├── Análise de hotspot
└── Limites de métrica
PRIORIZAR:
├── Impacto de negócio
├── Impacto no desenvolvedor
├── Esforço de correção
└── Risco se ignorado
AGENDAR:
├── Alocação de 15% do sprint
├── Sprints dedicados de refatoração
├── Regra do escoteiro (deixe melhor)
└── Nunca trocar velocidade por dívida
RASTREAR:
├── Itens de dívida no backlog
├── Tendência ao longo do tempo
├── Velocidade de redução
└── Celebrar melhorias
Melhores práticas
Para métricas de qualidade
- Comece simples — Rastreie poucas métricas bem
- Contexto importa — Metas dependem da situação
- Tendências sobre absolutos — Melhorar é chave
- Visibilidade da equipe — Todos veem qualidade
- Insights acionáveis — Métricas dirigem decisões
Anti-padrões
ERROS DE MÉTRICA DE QUALIDADE:
✗ Rastrear muitas métricas
✗ Focar apenas em cobertura
✗ Manipular métricas (testes sem asserções)
✗ Ignorar qualidade por features
✗ Culpar indivíduos por métricas
✗ Nenhuma ação em insights
✗ Métricas sem contexto