A estimativa de histórias baseia-se na noção de que, com o tempo, uma equipe ganha experiência em resolvê-las. Com isso, a precisão é aprimorada e a velocidade pode ser estabelecida para medir a velocidade de uma equipe. Uma metodologia perfeita para estabelecer prognósticos confiáveis para futuros sprints.
Os erros são um fato da vida de uma empresa de desenvolvimento de software. Embora eu concorde que todos os bugs devem ser detectados durante o desenvolvimento de uma história, aceitar que isso não possa ser alcançado o tempo todo deve ser algo que toda equipe deve planejar. Em vez de pensar teimosamente que o processo deve governar a equipe, deve ser o contrário.
Obviamente, bug ou história, do lado comercial, não importa com o que a equipe esteja lidando. Ambos podem produzir uma quantidade igual de valor para o proprietário do produto.
Em nossa equipe, experimentamos algumas técnicas para estimar bugs:
- Estimando bugs completamente desconhecidos
- Apenas estimando bugs que já foram analisados
- Atribuir tempo para correção de bugs e não estimar bugs, mas classifique-os apenas com base no valor comercial
Com 1. falhamos miseravelmente. Para a maioria dos erros, descobrimos que 90% do tempo é gasto na análise de erros. Depois disso, a correção do bug pode ser estimada da mesma maneira que uma história. Ao planejar os bugs em um sprint, cometemos o erro de que o escopo desconhecido impactou a resolução da história até o ponto em que quase todos os sprints que fizemos dessa maneira falharam.
Com base na opção 2. da técnica de estimativa da razão 90/10 (análise para correção de bugs), significava que tínhamos que planejar uma análise que não era algo coberto pelo planejamento de sprint (aprendemos da opção 1, mas não possuía solução real). como continuar com os erros analisados). O resultado foi que a análise de bug não foi feita, pois um sprint focou nos itens planejados. A equipe não teve tempo para se concentrar nos bugs da lista de pendências. Então, eventualmente, eles também não terminaram.
Ao abraçar a incerteza, decidimos agora a opção 3. Dividimos o backlog do produto em uma parte normal da história / tarefa que pode ser estimada pela equipe usando pontos da história e um backlog de erros. Na lista de pendências de bugs, o proprietário do produto classifica os bugs com base no valor comercial e no julgamento muito duro da equipe. A equipe permite alocar um pedaço de tempo durante um sprint que pode ser gasto com foco em bugs. O proprietário do produto não sabe o resultado exato, pois não era possível planejar isso antes. A proporção de backlog de erros versus backlog regular pode ser ajustada para cada sprint, dependendo do status atual de cada backlog e da importância e valor comercial do conteúdo.
Tirando a incerteza, liberou a equipe novamente. Os sprints não foram comprometidos por erros desconhecidos. Ao separar os bugs em um backlog diferente, aumentamos o foco regular do time na sprint e nos fizeram terminar os bugs que também continham um valor comercial significativo.
Portanto, depende se os pontos da história são adequados para você. Eu tentaria estimar bugs usando pontos de história primeiro. Se isso falhar, tente minha opção 3. Isso fez com que nossa equipe (com mais de 30 anos de idade) se concentre em bugs mais antigos novamente, os quais contêm grande valor comercial. Também nos libertou de tentar entregar algo que a equipe simplesmente não pode estimar. Ele estava abraçando o desconhecido que nos aproximava da realidade e também tornava nossos sprints bem-sucedidos novamente, ao mesmo tempo em que fornecia uma grande parte (baseada na proporção entre bugs e histórias) do valor comercial através de correções. A proporção que usamos recentemente foi de 50/50.