No último post, mencionei um tal de planning poker e um colega achou que era parte da brincadeira. Para quem não conhece, talvez a frase em questão talvez não tenha feito tanto sentido:

Coloque uma equipe de juniors num processo ágil, eles vão começar a estimar usando planning poker e provavelmente vão continuar jogando poker até o final do projeto.
Para quem já conhece é chover no molhado. Mas vamos lembrar que ainda existem muitas pessoas que desconhecem completamente os processos ágeis ou apenas ouviram falar deles. E nem sempre é culpa é do indivíduo em si, pois quantos formandos saem de um curso de Ciências da Computação sem nem ouvir falar desse assunto. Isso aconteceu comigo. O único contato com Engenharia de Software foi uma disciplina cujo conteúdo consistia em alguns capítulos do Pressman.

Infelizmente muitas universidades não contam com professores que possuem experiência de mercado, outras vezes a grade curricular não ajuda. Existem professores que ensinam o mesmo conteúdo há tantos anos que dá a impressão de que a tecnologia não evoluiu. Outros são inexperientes e adotam um livro guia, apenas resumem o conteúdo.

O que é Planning Poker?

É uma forma de criar estimativas. 

Estimação é uma atividade fundamental de todo processo ágil. A cada início de iteração (sprint), as estórias de usuário (requisitos) que serão implementadas precisam ser detalhadas e estimadas. Esta é uma tarefa realizada em conjunto por todo o time (equipe).

Com o Planning Poker a tarefa de estimar pode ser mais interessante e divertida, o entendimento dos requisitos é melhor entendido pela equipe e há motivos para se acreditar que tenha bons resultados.

Adaptei uma explicação de como a técnica funciona do site www.crisp.se, detalhada a seguir.

Estimativas sem Planning Poker

Há um problema típico com as estimativas em equipe. Vamos supor que estamos na Reunião de Planejamento do Sprint e o Product Owner diz:

Pessoal, qual o tamanho dessa estória de usuário aqui?

Então a equipe começa a pensar sobre o tamanho dessa estória (em homem-dia nesse caso):

Sem Planning Poker - Passo 1

O sr. 

A acredita que ele sabe exatamente o que deve ser feito e acha que levará 3 dias. Os senhores C são mais pessimistas. D e E estão pensando em qualquer outra coisa. Então o sr. A se antecipa e diz: “vai levar 3 dias”.

Sem Planning Poker - Passo 2

Isso deixa 

B e C confusos, duvidando de suas estimativas. O sr. E volta a si e nem sabe o que está sendo estimado, enquanto D continua cochilando. Quando o Product Owner pergunta ao resto da equipe sobre suas estimativas, todos acabam sendo influenciados por A, que respondeu primeiro, e respondem:

Sem Planning Poker - Passo 3

Estimando com Planning Poker

Agora, imagine cada membro a equipe segurando o seguinte maço de cartas:

Cartas Planning Poker

Vamos refazer a estimação. O 

Product Owner diz: “Pessoal, qual o tamanho dessa estória de usuário aqui?” Mais uma vez, a equipe começa a pensar.

Com Planning Poker - Passo 1

Desta vez, ninguém se antecipa. Cada um seleciona uma carta contendo sua estimativa e a deixa virada sobre a mesa. Depois que todos colocam suas cartas, os senhores 

D e E acordam. Eles admitem que dormiram e perguntam qual estória está sendo estimada, pois é difícil chutar estimativas dessa forma. Quando todos terminam, as cartas são viradas simultaneamente, revelando as estimativas de cada pessoa.

Com Planning Poker - Passo 2

Ops! Houve uma grande divergência. A equipe, principalmente o sr. 

A e o sr. C, precisam discutir a estória e porque suas estimativas estão tão distintas. Depois de alguma discussão, o sr. A percebe que esqueceu algumas tarefas importantes que deveriam ser incluídas na estória. O sr. C percebe que, com o design que o sr. A apresentou, a estória pode ser menor que 20. Depois de 3 minutos de conversa, um novo round de estimação é feito para a mesma estória:

Com Planning Poker - Passo 3

Houve convergência, ainda que parcial. Então eles concordam que uma estimativa de valor 5 deve estar próxima o bastante e partem para a próxima estória.

Porque essa estranha série de números?

Cartas Os números grandes tem menos granularidade. Por quê? Porque não há o número 21, por exemplo? Algumas razões:

  • Aumentar a velocidade o processo de estimação limitando a quantidade de escolhas (número de cartas).
  • Evitar a falsa sensação de precisão (acurácia) para as estimativas mais altas.
  • Encorajar a equipe a dividir grandes estórias em menores.

Uma estimativa alta (maior que 20, por exemplo), geralmente significa que a estória não foi bem compreendida. Seria uma perda de tempo discutir se a estória vale 19, 20 ou 22,5. A estória é grande e pronto. Se for necessário detalhar a estória, deve-se quebrá-la em estórias menores.

Cartas Especiais

A carta “zero” significa que a estória já foi implementada ou que ela é ínfima, consistindo talvez em alguns minutos de trabalho.
A carta “interrogação” (“?”) significa que a pessoa não tem absolutamente nenhuma ideia. Nada. É raro acontecer, mas se a frequência aumentar a equipe deve discutir mais as estórias e tentar chegar a um melhor entendimento.
A carta “xícara de café” significa: “Estou cansado demais para pensar. Vamos fazer uma pausa”.