Como contar Story Points (Pontos por estória de usuário)

Como contar Story Points (Pontos por estória de usuário)

User stories / Estórias de usuário

Estória de usuário é um conceito do mundo agile que consiste em descrever os requisitos de um projeto na linguagem de quem vai usar. Por exemplo, se fosse um projeto para construir uma loja (que já usamos no post sobre como fazer um mapa mental), poderíamos criar as seguintes estórias:

  1. Como cliente, desejo comprar roupas de malhação
  2. Quero um ambiente agradável, espaçoso, onde possa provar as roupas antes de adquiri-las
  3. Desejo pagar com dinheiro, cartão e cheque
  4. Desejo Poder receber os produtos que comprar na minha casa

A partir das estórias se faz o detalhamento das tarefas necessárias para cumpri-las, mas para planejar um projeto, e poder fazer o acompanhamento depois, é preciso definir uma forma de medir.

Story Points / Pontos por estória de usuário

Os story points são a forma de medir o tamanho de um projeto ágil. Basicamente, story points são números abstrados que dão a ideia de proporcionalidade entre os requisitos (estórias). Sem muita complicação, vamos ao passo a passo, usando a técnica do Planning Wall.

Estória mais simples

O cálculo de story points sempre começa pela identificação da estória mais simples. No nosso exemplo, qual seria? Para definir a estória mais simples, é preciso refletir um pouco sobre como serão implementadas. Analisemos uma a uma:

  1. Bem, para comprar roupas é preciso ter produtos e um meio de pagamento. Há que se alinhar com o Product Owner (PO) como se espera fazer a exposição dos produtos, caso contrário, poderiam ser vendidos tanto pela internet quanto no porta malas de um carro. Digamos que nosso cliente deseje apenas vender, sem especificar o local.
  2. Para proporcionar um ambiente agradável, é preciso alugar/comprar um local e decorá-lo de forma agradável (Provavelmente, num projeto real, seria melhor descobrir o que significa “agradável”)
  3. Para pagar com dinheiro não é preciso nada e com cheque também não, mas com cartão é preciso uma máquina. Para isso, é preciso se cadastrar em algum banco e esperar o recebimento do equipamento, pode demorar alguns dias.
  4. Se o cliente quer receber em casa, é preciso fazer um cadastro e descobrir meios de entregar o produto. Será entregue em todo o Brasil? apenas na cidade ou no bairro? Aqui também falaríamos com o PO para descobrir e, para o exemplo, suponhamos que será feito apenas no bairro e que o cliente aceita aguardar até 3 dias.

Ordenar por complexidade

Agora que já entendemos as estórias, vamos ordená-las por complexidade:

Story points por ordem de complexidade

Acredito (e digo assim, pois o time teria que discutir em conjunto), ante a tudo que foi descrito, que pela ordem de complexidade poderíamos ordenar as estórias como 1, 3, 4 e 2. 

Escala de complexidade

A escala mais comumente utilizada em projetos ágeis é a sequência de Fibonacci (Ahá, você achou que não servia pra nada quando viu na escola, né?).

escala de fibonacci

Ela é facilmente calculada, basta somar um número ao anterior, começando do número 1, veja só:

  • 1
  • 1+0 = 1 (quem vem antes do 1? é o zero)
  • 1+1=2
  • 2+1=3
  • 3+2=5
  • 5+3=8
  • 8+5=13
  • E assim por diante.

Essa sequência é utilizada por ser uma escala não-linear, ou seja, quando você definir as pontuações das estórias não poderá marcar uma estória com 4 dizendo que é o dobro de 2, ela só pode valer 3 ou 5.

Isso permite que haja variabilidade na estimativa e impede que se faça regras de três para estimar as horas de trabalho, com isso, faz com que, ao longo do projeto, as pessoas se foquem mais no valor agregado (em quantos pontos foram terminados) que no esforço empenhado em fazer o trabalho. Afinal, esforço sem resultado não serve para nada.

Definindo a pontuação das estórias

Agora que já temos um sequenciamento entre as estórias, conhecemos a escala de Fibonacci e entendemos o princípio das escalas não-lineares, vamos juntar isso tudo:

Estorias pontuadas (user stories e Story points)

Explicando o raciocínio:

  • A estória 1 é a mais simples, por isso ganha 1 ponto.
  • A estória 2 tem o dobro de complexidade na minha opinião.
  • Na estória 4, pensei que conseguir motoboys, pagar seguro das motos e de vida etc, poderia ser bem complicado. Em relação à estória 3 que consiste em conseguir uma maquinha de cartão de crédito, achei que seria 4x mais complexa.
  • Já na estória 2, a última e mais complexa de todas,  pensei em todo o processo de alugar um imóvel, documentação, corretor, decoração, móveis etc. E entendi que ela seria o dobro de complexidade da anterior. Mas o dobro não existe, então me restaram as opções: 13 pontos ou 21. Achei que 21x mais complexa que a estória 1 seria demais… e, por fim, optei por marcar com 13 pontos.

Por enquanto é isso, nos próximos posts vou apresentar como montar o product backlog, organizar as sprints, medir a velocidade do time e como manter um projeto agile nos eixos.

Abração,

Eli

 

 

 

Publicado por: Eli Rodrigues