Após a definição das estória que compõem o Product Backlog, a
equipe deve estimar o tempo/esforço de cada estória. As
estimativas podem ser realizadas de diversas formas. Algumas da
principais técnicas para estimar o tempo/esforço necessário para
realização das estórias/tarefas são:
• Planning Poker;
• Estimativas Análogas;
• Estimativa Paramétrica;
• Estimativa de três pontos;
• Análise de especialista;
A priorização das estórias deve ser realizada levando-
se em consideração:
• Precedência
• Dependência
• Grau de Importância
• Tempo (esforço)
As estórias de um SPRINT devem possuir, somadas,
uma quantidade de tempo (ou pontos) que seja
suficientemente suportada pela equipe no time box.
Para calcular de maneira realista a capacidade de
produção de um SPRINT, é necessário realizar uma
análise utilizando-se de informações fornecidas pela
equipe envolvida. Essas informações contribuirão para
fornecer um valor aproximado da capacidade realista
de estórias (esforço e/ou tempo) suportadas em um
SPRINT.
• Hora/Homem Semanal
• Número de Desenvolvedores
• Time Box
• Porcentagem de Retorno do Teste
• Tempo de Correção das estórias
• Impacto dos Riscos
• Tempo Estimado do Teste/ Estória
• Tempo de Refatoração dos Testes
Total de horas possíveis dentro de um sprint
Obviamente, para identificar a carga máxima de TEMPO de desenvolvimento em um sprint, deve-se ter conhecimento da disponibilidade de recursos disponíveis e do valor do Time Box.
Capacidade de Máxima de Produção
Capacidade Máxima (MPD) = HS * ND * TB
Horas /Homem Semanal (HS) Número de Desenvolvedores (ND) Time Box (TB): 2,3 ou 4 (Semanas)
Observação: Para times que possuem membros com carga horária distintas, soma-se as horas individualmente de cada membro no time box.
Os impedimentos podem impactar bastante na produção, limitando imediatamente a capacidade máxima produtiva. Nesse exemplo, o impacto dos riscos de impedimento (RI) é de 30%. Aqui é que entra aqueles 15 min de cafezinho, twiiter, bate papo e até mesmo outras tarefas paralelas!
Capacidade de Produção após identificação dos riscos
Capacidade de Produção = Capacidade Máxima - Capacidade Máxima * RI
Tempo consumido por Impedimentos
Tempo consumido por Impedimentos
Capacidade de Produção após identificação dos riscos
Retorno dos Testes
Para se calcular a capacidade realista de horas ou pontos de desenvolvimento em um sprint, deve ser estimada a porcentagem de estórias que retornam dos teste (PRT). Essa estimativa deverá ser aprimorada a medida que o time amadurece e ganha experiência.
Tempo consumido por Impedimentos
Capacidade de Produção após identificação dos riscos
Após estimar a porcentagem de ESTÓRIAS que retornam do teste (reprovadas), a equipe deve estimar o tempo para a correção dessas estórias. Normalmente, a correção leva bem menos tempo do que o desenvolvimento inicial.
Tempo de
Correção
Retorno dos Testes
Tempo consumido por Impedimentos
Capacidade de Produção após identificação dos riscos
Ao possuir estimativas de retorno do teste e tempo de correção, e ainda a capacidade de produção de desenvolvimento em um sprint após estimativa dos riscos, fica fácil descobrir o número realista de horas de produção que caberá no sprint.
Tempo de
Correção
Retorno dos Testes
Tempo consumido por Impedimentos
Capacidade de Produção após identificação dos riscos
Capacidade Realista
Tempo de
Correção
Retorno dos Testes
A capacidade de produção realista somada ao tempo de correção das estórias que retornam do teste deve ser igual a capacidade de produção máxima menos o impacto de impedimentos.
Capacidade Realista de Produção do Desenvolvimento = (MPD*(1-RI)) / (1+PRT*TCT)
Tempo consumido por Impedimentos
Capacidade de Produção após identificação dos riscos
Capacidade Realista
Tempo de
Correção
Retorno dos Testes
Em vários times de desenvolvimento é comum a
realização de estimativas de pontos ou horas das
estórias sem levar em consideração o tempo ou
esforço reservado para os teste.
As estórias DEVEM possuir, também, o seu valor em
tempo ou esforço para o teste.
Tempo Estimado da Estória (EE) Tempo Estimado da Estória + Testes (TEE) = EE + (EE * TET)
* TET = Tempo estimado do teste (%). Para os nossos
exemplos o TET é definido em 150%.
12 Estórias desenvolvidas; 0 Estórias Testadas; - Acúmulo na fase de testes; - Reprovação do teste alta; - Possível perda de tempo no desenvolvimento. Muitas estórias podem precisar ser refeitas após análise no teste; - Estórias previstas não são entregues; - Nenhuma estória sujeita a deploy; * Falta contabilizar estórias reprovadas!
1 2 3 4 5 6 7 8 9 10 11 12
Estória desenvolvida sem teste
Início da execução do teste
Planejamento do Teste
12 Estórias desenvolvidas; 4 Estórias Testadas; - Acúmulo na fase de testes; - Reprovação do teste alta; - Possível perda de tempo no desenvolvimento. Muitas estórias podem precisar ser refeitas após análise no teste; - Estórias previstas não são entregues; * Falta contabilizar estórias reprovadas!
1 2 3 4 5 6 7 8 9 10 11 12
1 3 T
Estória Testada
Estória desenvolvida sem teste
2 4
Estória desenvolvida com teste!
5 Estórias desenvolvidas; 4 Estórias Testadas; - Não há acumulo na fase de testes; - Reprovação do teste tende a ser menor; - Estórias previstas entregues; * Falta contabilizar estórias reprovadas!
1 2 3 4 5 6 7 8 9 10 11 12
1
D
3 4 2
Estória desenvolvida sem teste
T 5
7 Estórias desenvolvidas; 7 Estórias Testadas; - Não há acumulo na fase de testes; - Estórias previstas entregues; * Falta contabilizar estórias reprovadas!
1 2 3 4 5 6 7 8 9 10 11 12
1 4 2
1 2
5
4
3
5
6
T
7
Estória desenvolvida sem teste
Estória desenvolvida com teste!
Estória Testada
Para times que possuem um ou mais membros especializados
em realizar apenas testes (QA), a produção desse(s)
profissional(is) deve(m) amortizar o tempo ou esforço das
estórias. No entanto, deve ser encontrado a capacidade de
produção realista desse(s) profissional(is) no time box.
Total de horas possíveis dentro de um sprint
Capacidade de Máxima de Produção
Capacidade Máxima (MPT) = HS * NT * TB
Horas /Homem Semanal (HS) Número de Testadores(NT) Time Box (TB): 2,3 ou 4 (Semanas)
Observação: Para times que possuem membros com carga horária distintas, soma-se as horas individualmente de cada membro no time box.
Os impedimentos podem impactar bastante na produção, limitando imediatamente a capacidade máxima produtiva. Nesse exemplo, o impacto dos riscos de impedimento (RI) é de 30%. Aqui é que entra aqueles 15 min de cafezinho, twiiter, bate papo e até mesmo outras tarefas paralelas!
Capacidade de Produção após identificação dos riscos
Capacidade de Produção = Capacidade Máxima - Capacidade Máxima * RI
Tempo consumido por Impedimentos
Tempo consumido por Impedimentos
Capacidade de Produção após identificação dos riscos
Retorno dos Testes
Para se calcular a capacidade realista de horas ou pontos de testes em um sprint, deve ser estimada a porcentagem de estórias que retornam dos teste (PRT). Essa estimativa deverá ser aprimorada a medida que o time amadurece e ganha experiência.
Tempo consumido por Impedimentos
Capacidade de Produção após identificação dos riscos
Após estimar a porcentagem de ESTÓRIAS que retornam do teste (reprovadas), a equipe deve estimar o tempo para a refatoração desses testes. Normalmente, a refatoração dos testes leva bem menos tempo do que o teste inicial.
Retorno dos Testes
Tempo de Refatoração
Tempo consumido por Impedimentos
Capacidade de Produção após identificação dos riscos
Ao possuir estimativas de retorno do teste e tempo de refatoração, e ainda a capacidade de produção de testes em um sprint após estimativa dos riscos, fica fácil descobrir o número realista de horas de produção que caberá no sprint.
Tempo de Refatoração
Retorno dos Testes
Tempo consumido por Impedimentos
Capacidade de Produção após identificação dos riscos
Capacidade Realista
Retorno dos Testes
Capacidade Realista de Produção do Teste (CRT) = (MPT * (1-RI) / TET) / (1+PRT * TRT)
Tempo de Refatoração
Após descobrir a capacidade realista de produção do
teste, já é possível aplicar a amortização no tempo
total das estórias de um sprint.
Tempo Estimado da Estória (EE) Tempo Estimado da Estória + Testes (TEE) = EE + (EE * TET)
Tempo Total das Estória (TTE) = ∑TEE – CRT
* CRT = (MPT * (1-RI) / TET) / (1+PRT * TRT)
Variáveis:
Tempo Estimado da Estória (EE) Tempo Estimado da Estória + Testes (TEE) = EE + (EE * TET)
Tempo Total das Estória (TTE) = ∑TEE – (∑TEE –∑EE – CRT)
Horas /Homem Semanal (HS) Número de Desenvolvedores (ND) Número de Testadores (NT) Time Box (TB) – 2,3 ou 4 (Semanas) Porcentagem de Retorno do Teste (PRT) = % de estórias que não passam no teste durante um Sprint Tempo Estimado do Teste/ Estória (TET) = %EE: Tempo em relação a estória destinado ao teste (exemplo: se uma estória possui um tempo estimado em 10 horas, e o TET é 150% logo o TET em relação a estória/tarefa é 15 horas)
Tempo de Correção das Estórias/Tarefas (TCT) = %EE Tempo em relação a estória destinado a correção (exemplo: se uma tarefa possui um tempo estimado em 10 horas, e o TCT é 40% logo o TCT em relação a tarefa é 4 horas) Tempo de Refatoração de Testes (TRT) = %TEE Impacto dos Riscos (RI) = Porcentagem do impacto dos impedimentos sobre a produção.
Fórmulas:
Capacidade Máxima de Produção do Desenvolvimento (MPD) = HS * ND * TB Capacidade Realista de Produção do Desenvolvimento (RPD) = (MPD*(1-RI)) / (1+PRT*TCT) Capacidade Máxima de Produção do Teste (MPT) = HS * NT * TB Capacidade Realista de Produção do Teste (CRT) = (MPT * (1-RI) / TET) / (1+PRT * TRT) Regra Geral 01: TTE <= RPD (caso não ocorra, haverá estórias acima da capacidade de produção) Regra Geral 02: CRT <= RPD (caso não ocorra, haverá desperdício de teste)
O time Scrum da empresa “X” conta com 4 desenvolvedores, além de um PO. A carga horária na empresa X é de 44
horas semanais. O time box das iterações (sprints) definido pela equipe é de 2 semanas. É sabido que as
estórias/tarefas produzidas pela equipe costumam ser aprovadas no processo de teste em pelo menos 60%. Os
próprios desenvolvedores são responsáveis pelos testes, sendo que a fase de teste costuma ser 50% mais custosa que
a fase de desenvolvimento. Também se sabe que as estórias/tarefas que retornam do teste são resolvidas na metade
do tempo em que foram desenvolvidas inicialmente e testadas novamente na metade do tempo do primeiro teste.
Outro fator importante é que nos últimos sprints os impedimentos, em média, impactaram em 30% da produção. Em
posse dessas informações, responda:
a) Qual a capacidade máxima de produção do desenvolvimento?
b) Qual a capacidade realista de produção do desenvolvimento?
_____________________________________________________________________________________________
HS = 44 a) MPD = HS * ND * TB ND = 4 MPD = 44 * 4 * 2
NT = 0 MPD = 352 TB = 2 PRT = 40/100 = 0.4 b) RPD = (MPD * (1 - RI)) / (1 + PRT * TCT) TET = 150/100 = 1.5 RPD = (352 * (1 - 0.3)) / (1 + 0.4 * 0.5) RI = 30/100 = 0.3 RPD = (352 – 105.6)/(1+0.2) TCT = 50/100 = 0.5 RPD = 246.4/1.2 RPD = 205.3
Solução
O time Scrum da empresa “ZUMBA” conta com 2 desenvolvedores e 1 testador. A carga horária na ZUMBA é de 44
horas semanais. O time box das iterações (sprints) definido pela equipe é de 2 semanas. É sabido que as
estórias/tarefas produzidas pela equipe costumam ser aprovadas no processo de teste em pelo menos 70%. Os
desenvolvedores não realizam testes, eles contam com o auxílio de um tester. A fase de teste costuma ser 50% mais
custosa que a fase de desenvolvimento. Também se sabe que as estórias/tarefas que retornam do teste são resolvidas
na metade do tempo em que foram desenvolvidas inicialmente e testadas novamente na metade do tempo do primeiro
teste. Outro fator importante é que nos últimos sprints os impedimentos, em média, impactaram em 30% da
produção. Em posse dessas informações, responda:
a) Qual a capacidade máxima de produção do desenvolvimento?
b) Qual a capacidade realista de produção do desenvolvimento?
c) Qual a capacidade máxima de produção do teste?
d) Qual a capacidade realista de produção do teste?
HS = 44 a) MPD = HS * ND * TB c) MPT = HS * NT * TB ND = 2 MPD = 44 * 2 * 2 MPT = 44 * 1 * 2
NT = 1 MPD = 176 MPT = 88 TB = 2 PRT = 40/100 = 0.3 b) RPD = (MPD * (1 - RI)) / (1 + PRT * TCT) d) CRT= (MPT * (1-RI) / TET) / (1+PRT * TRT)
TET = 150/100 = 1.5 RPD = (176* (1 - 0.3)) / (1 + 0.3 * 0.5) TMT = (88 * (1-0.3) / 1.5) / (1 + 0.3 * 0.5)
RI = 30/100 = 0.3 RPD = (176 – 52.8)/(1+0.2) TMT = ((88 – 26.4) / 1.5) / (1.2)
TCT = 50/100 = 0.5 RPD = 123.2/1.2 TMT = (61.6 / 1.5) / 1.2
TRT = 0.5 RPD = 102.6 TMT = 34.2
Solução