Skip to content
Matheus Richard edited this page Apr 20, 2018 · 27 revisions

1. GQM

1.1 GQM do Processo

1.1.1 Garantir que o processo seja adequado ao contexto da equipe

GQM Processo

GQM Processo

1.1.1.1 Questão 1 - A equipe está aderindo ao processo?

1.1.1.1.1 Percentual de aderência ao processo
  • Objetivo de Medição: Garantir que o processo seja adequado ao contexto da equipe.
  • Descrição: Razão entre a quantidade de atividades planejadas e atividades realizadas numa sprint.
  • Fórmula: PAP = (QAP/QAR) * 100, onde QAP é a quantidade de atividades planejadas para a sprint e QAR é a quantidade de atividades realizadas na sprint.
  • Escala: Racional.
  • Coleta: Responsável: Equipe de medição
  • Procedimento: Durante a reunião de Revisão de Sprint, deve-se averiguar os artefatos entregues.
  • Análise:
INDICADOR PAP
ÓTIMO 100%
BOM 70% ~ 99%
RAZOÁVEL 50% ~ 69%
RUIM 0% ~ 49%
  • Providência: Deve-se investigar a razão da não realização das atividades, e de acordo com o resultado auxilar a equipe de desenvolvimento encontrar os gargalos e/ou melhorar o processo para melhor se adequar ao contexto da equipe.

1.1.1.2 Questão 2 - A equipe está executando as atividades propostas?

1.1.1.2.1 Percentual de artefatos planejados concluídos por sprint
  • Objetivo de Medição: Garantir que o processo seja adequado ao contexto da equipe.
  • Descrição: Calcula a razão entre artefatos planejados e artefados concluídos.
  • Fórmula: PAPCS = (QAP/QAC) * 100, onde QAP é a quantidade de artefatos planejados para a sprint e QAC é a quantidade de artefatos concluídos na sprint.
  • Escala: Racional
  • Coleta: Responsável: Equipe de medição
  • Procedimento: Durante a reunião de Revisão de Sprint, deve-se averiguar os artefatos entregues.
  • Análise:
INDICADOR PAPCS
ÓTIMO 100%
BOM 70% ~ 99%
RAZOÁVEL 50% ~ 69%
RUIM 0% ~ 49%
  • Providência: Avaliar quais são os artefatos não foram concluídos e trata-los como dívida técnica para a próxima sprint.
1.1.1.2.2 Percentual de métricas coletadas
  • Objetivo de Medição: Garantir que o processo seja adequado ao contexto da equipe.
  • Descrição: Calcula a razão entre métricas planejadas e métricas coletadas.
  • Fórmula: PMS = (QMP/QMC) * 100, onde QMP é a quantidade de métricas planejadas para a sprint e QMC é a quantidade de métricas coletadas na sprint.
  • Escala: Racional
  • Coleta: Responsável: Equipe de Medição
  • Procedimento: Durante a reunião de Revisão de Sprint, deve-se verificar quais métricas foram devidamente coletadas.
  • Análise:
INDICADOR PMS
ÓTIMO 100%
BOM 70% ~ 99%
RAZOÁVEL 50% ~ 69%
RUIM 0% ~ 49%
  • Providência: Avaliar quais métricas não foram coletadas e coletá-las assim que possível.
1.1.1.2.3 Percentual de melhoria de métricas
  • Objetivo de Medição: Garantir que o processo seja adequado ao contexto da equipe.
  • Descrição: Calcula a razão entre métricas que evoluíram para um nível melhor (ou que se mantiveram em níveis aceitáveis) e as métricas totais.
  • Fórmula: PMM = (QME/QTM) * 100, onde QME é a quantidade de métricas que evoluíram e QTM é a quantidade total de métricas.
  • Escala: Racional
  • Coleta: Responsável: Equipe de Medição
  • Procedimento: Durante a reunião de Revisão de Sprint, deve-se verificar quais métricas evoluíram ou se mantiveram em niveis aceitaveis.
  • Análise:
INDICADOR PMS
ÓTIMO 90% ~ 100%
BOM 70% ~ 89%
RAZOÁVEL 50% ~ 69%
RUIM 0% ~ 49%
  • Providência: Deve-se verificar quais métricas não evoluíram, e entender o porquê, para que se possa tomar providências que visem melhorar os indicadoes e, consequentemente, a qualidade do projeto.

1.2 GQM do Produto

1.2.1 Objetivo 2 - Garantir que o software atende as necessidades do cliente

GQM Produto

GQM Produto

1.2.1.1 Questão 1 - O produto atende os requisitos do cliente?

1.2.1.1.1 Percentual de critérios de aceitação concluídos por feature
  • Objetivo de Medição: Garantir que o software atende as necessidades do cliente
  • Descrição: Calcula a quantidade de critérios de aceitação validados pelo cliente, para cada feature.
  • Fórmula: PCAC = (QC/QF) * 100 onde QC é a quantidade de critérios de aceitação completados e QF é a quantidade de critérios de aceitação por feature.
  • Escala: Racional
  • Coleta: Responsável: Equipe de medição
  • Procedimento: Reunião pautada para avaliação de critérios concluídos junto aos stakeholders para validar quais foram finalizadas
  • Análise: Indicadores:
PCAC
ÓTIMO 100%
BOM 70% ~ 99%
RAZOÁVEL 50% ~ 69%
RUIM 0% ~ 49%
  • Providência: Avaliar quais são os critérios não foram completados para cada história e caso necessário tratá-las como divida técnica para a próxima sprint
1.2.1.1.2 Percentual de histórias entregues por sprints
  • Objetivo de Medição: Garantir que o software atende as necessidades do cliente
  • Descrição: Calcula a razão entre histórias concluídas e histórias planejadas por sprint
  • Fórmula: PHS = (QHS/QHC) * 100 onde QHS
  • Escala: Racional
  • Coleta: Responsável: Equipe de medição
  • Procedimento: Reunião de planejamento de sprint, avaliar a quantidade de histórias não concluídas com o PHS
  • Análise: Indicadores:
PHS
ÓTIMO 100%
BOM 70% ~ 99%
RAZOÁVEL 50% ~ 69%
RUIM 0% ~ 49%
  • Providência: Verificar a quantidade de histórias não concluídas por sprint para melhor avaliar o planejamento das sprints afim de evitar o acumulo de dividas técnicas

1.2.2 Garantir a manutenibilidade

GQM Produto

GQM Produto

1.2.2.1 Objetivo 3 - Garantir a manutenibilidade

1.2.2.1.1 Percentual de código testado
  • Objetivo de Medição: Manutenibilidade do código fonte.
  • Descrição: Calcula a razão entre as linhas de código testadas e as linhas totais do software.
  • Fórmula: C = L_ts/L_tt onde L_ts representa as linhas de código testadas, e L_tt representa as linhas totais. Esta razão resulta em C, que representa a cobertura total de testes.
  • Escala: Racional
  • Coleta: Responsável: Equipe de medição
  • Procedimento: Submissão do código fonte à ferramenta de análise de cobertura de testes.
  • Análise:
INDICADOR C
ÓTIMO 100%
BOM 70% ~ 99%
RAZOÁVEL 50% ~ 69%
RUIM 0% ~ 49%
  • Providência: Caso a cobertura total de testes não satisfaça o intervalo determinado, serão necessários esforços de refatoração e elaboração de testes.
1.2.2.1.2 Complexidade Ciclomática
  • Objetivo de Medição: Manutenibilidade do código fonte.
  • Descrição: É a contagem dos caminhos linearmente independentes ao longo do código fonte, ou seja, o número de decisões que um determinado bloco de código deve realizar.[1]
  • Fórmula: CC = A - N + 2 Onde CC representa a Complexidade Ciclomática, e é calculado com base em um grafo de fluxo, onde A representa o número de arestas e N o número de nós.
  • Escala: Racional
  • Coleta: Responsável: Equipe de medição
  • Procedimento: Submissão do código fonte à ferramenta de análise de complexidade ciclomática.
  • Análise: A análise da complexidade ciclomática irá tomar como base os intervalos padrão da ferramenta, os quais indicam que este valor deve ser inferior ou igual a 6 (por método).
INDICADOR CC
ÓTIMO < 6
RUIM >= 6
  • Providência: Caso a complexidade ciclomática ultrapasse os valores aceitáveis, serão alocados esforços de refatoração dos blocos de código indicados como demasiadamente complexos.
1.2.2.1.3 Número de erros referentes a folha de estilo proposta
  • Objetivo de Medição: Manutenibilidade do código fonte.
  • Descrição: O código escrito está seguindo corretamente a folha de estilo utilizada pela comunidade de desenvolvedores da tecnologia(s) utilizada(s).
  • Fórmula: Nº errors apontados pela ferramenta de guia de estilo. EX: flake8 error log
  • Escala: Absoluta
  • Coleta: Responsável: Equipe de medição e/ou Equipe de desenvolvimento.
  • Procedimento: Submissão do código fonte à ferramenta de análise estática de lint.
  • Análise:
INDICADOR C
ÓTIMO 0
RUIM > 0
  • Providência: Deve se aplicar esforços de refatoração nos erros indicados
1.2.2.1.4 Duplicação de código
  • Objetivo de Medição: Manutenibilidade do código fonte.

  • Descrição: É a verificação da presença de código duplicado ao longo do código fonte.

  • Fórmula: A ferramenta calcula a duplicação de código por meio de AST’s (abstract syntax trees) que possui nós, cada um com um tipo e um conjunto de valores. Ao calcular a duplicação, todos os nós são comparados. Nós com o mesmo tipo, mas valores diferentes, são considerados “similares”, já os nós que possuem o mesmo tipo e os mesmos valores são considerados “duplicados”.

  • Escala: Racional

  • Coleta: Responsável: Equipe de medição

  • Procedimento: Submissão do código fonte à ferramenta de análise de duplicação de código.

  • Análise: A duplicação de código implica em uma menor manutenibilidade, portanto duplicações e similaridades devem ser eliminadas, exceto em casos onde sejam estritamente necessárias.[2]

  • Providência: Deve se aplicar esforços de refatoração nas duplicações e similaridades identificadas.

1.2.2.1.5 Percentual de endpoints documentados
  • Objetivo de Medição: Manutenibilidade do código fonte.
  • Descrição: Razão entre endpoints documentados e endpoints totais.
  • Fórmula: (PED = QED/QET) * 100, onde PED é a quantidade de endpoints documentados e QET é a quantidade total de endpoints.
  • Escala: Racional.
  • Coleta: Responsável: Equipe de medição
  • Procedimento: Reunião de planejamento de sprint, avaliar a quantidade de histórias não concluídas com o PED.
  • Análise:
INDICADOR PED
ÓTIMO 100%
BOM 70% ~ 99%
RAZOÁVEL 50% ~ 69%
RUIM 0% ~ 49%
  • Providência: Avaliar quais endpoints não foram documentados, e tratá-los como divida técnica para a próxima sprint.
1.2.2.1.6 Percentual de comentários no código
  • Objetivo de Medição: Manutenibilidade do código fonte.
  • Descrição: Razão entre número de linhas de comentários e linhas de código totais.
  • Fórmula: (PCC = QLC/QLT) * 100, onde QLC é a quantidade de linhas de comentários e QLT é a quantidade total de linhas de código.
  • Escala: Racional
  • Coleta: * Coleta: Responsável: Equipe de medição
  • Procedimento: Em cada Pull Request deve-se verificar a quantidade de linhas de comentários e avaliar o produto software com o PCC.
  • Análise:
INDICADOR PED
ÓTIMO 9% ~ 11%
RAZOÁVEL 7% ~ 8.9% ou 11.1% ~ 13%
RUIM < 7% ou > 13%
  • Providência: Se o valor do PED não estive satisfatório, deve-se refatorar o codigo de forma a adequar o número de linhas de comentários.

1.3 GQM da Equipe

GQM Equipe

1.3.1 Questão 1 - O desempenho da equipe está satisfatório?

1.3.1.1 Burndown

  • Objetivo de Medição: Verificar a quantidade de pontos finalizados em relação aos pontos planejados.
  • Descrição: Gráfico que acompanha a diferença entre os pontos planejados e os finalizados em relação ao tempo.
  • Fórmula: f(t) = PP(t) - PF(t)
  • Escala: Racional
  • Coleta: * Coleta: Responsável: Equipe de medição
  • Procedimento: Produzir um gráfico em relação ao tempo dos pontos planejados e pontos finalizados.

1.3.1.1 Velocity

  • Objetivo de Medição: Avaliar a produtividade da equipe de desenvolvimento.
  • Descrição: Gráfico que acompanha a média de pontos finalizados por sprint.
  • Fórmula: PF / quantidade de sprints
  • Escala: Racional
  • Coleta: * Coleta: Responsável: Equipe de medição
  • Procedimento: Produzir um gráfico através da média dos pontos finalizados pela quantidade de sprints, demonstrando a produtividade da equipe de desenvolvimento.
Clone this wiki locally