Faz direito evidência baseada no trabalho de programação com estimativas heterogêneos? [em espera]

StackOverflow https://stackoverflow.com/questions/300488

Pergunta

Observando um ano de estimativas durante um projeto eu descobri algumas coisas estranhas que me fazem saber se evidências baseadas agendamento iria trabalhar aqui?

  • programadores individuais parecem ter números favoritos (por exemplo 2,4,8,16,30 horas)
  • as grandes tarefas parecem ser subestimada por um valor fixo (cerca de 2), mas o desvio padrão é baixo aqui
  • as pequenas tarefas (1 ou 2 horas) são absolutamente ampla distribuído. Em média, eles têm o mesmo factor médio subestimação de dois, mas o desvio padrão é elevado:
    • cerca de 5 minutos questões de ortografia são estimados com uma hora
    • outras correções de bugs são estimados com uma hora também, mas ter um dia

Então, é realmente uma boa idéia para deixar os programadores quebrar a tarefa 30 horas até 4 ou 2 horas passos durante estimativas? Isso não vai elevar o desvio padrão? (Ok, deixe-os decompô-lo -?!, Mas talvez depois de as estimativas)

Foi útil?

Solução

  • Sim, as suas observações são exatly o tipo de problemas EBS é projetado para resolver.
  • Sim, é importante para quebrar tarefas maiores para baixo. Tiro para 1-2 tarefas do dia, mais ou menos.
    • Se você tem coisas estimadas em menos de 2 horas, veja se faz sentido agrupá-los. (Talvez não - isso é ok)
    • Se você tem tarefas que são estimadas em 3+ dias, ver se pode haver uma maneira de dividi-las em pedaços. Deve haver. Se o estimador diz que não é, torná-los defender essa afirmação. Se se verificar que a tarefa realmente só tem 3 dias, bem, mas o mais destes você tem, mais você deve estar olhando no espelho e ver se as pessoas não são o sistema de jogo.
    • Contagem 4 & 5 orçamentos dia como 2x e 4x tão ruim quanto os 3 dias. Qualquer um que diz algo vai demorar mais do que 5 dias e não pode ser dividido, diga que você quer que eles para passar 4 horas pensando sobre o problema, e como ele pode ser dividido. Lembre-se, isso é uma tarefa, btw.
  • Como você e sua prática da equipe isso, você vai ficar melhor para estimar.
  • ... Você também vai começar a reconhecer padrões de fracasso, e as soluções vão se apresentar.
  • O ponto de Evidência agendamento com base é a utilização de Evidência como base para a sua programação, não uma coleção de palpites assed-selvagens. É A Good Thing ...!

Outras dicas

Eu acho que é uma boa idéia. Quando as pessoas quebrar tarefas para baixo - que descobrir as especificidades da tarefa, você pode obter pequenos desvios aqui e ali, esta forma ou de outra, eles podem compensar ou não ... mas você tem uma sensação do que está acontecendo. Se você tem uma enorme tarefa de 30 horas - pode tomar todo 100. Este é o pior que poderia acontecer. Gerenciar o risco - split baixo. Você já descobriu estes pequeno desvio - você sabe o que fazer com eles.

Portanto, verifique se os desenvolvedores também sabem o que fazer e dizer:)

"Então, é realmente uma boa idéia para deixar os programadores quebrar a tarefa 30 horas até 4 ou 2 horas etapas durante estimativas Will não este aumento do desvio padrão (Ok, deixe-os decompô-lo? - mas talvez depois de as estimativas?!) "

Eu certamente não obter esta pergunta.

O que parece que você está dizendo (você pode não ser dizer isso, mas eu sei como ele)

  1. Os programadores não pode estimar em tudo -. Os números são sempre arredondados para valores "mágicas" e desligado por 2x

  2. Eu não posso confiar neles para tanto definir o trabalho e estimar o tempo que leva para fazer o trabalho.

  3. Só eu sei a estimativa correta para o tempo necessário para fazer a tarefa. Não é uma rodada múltipla 1/2 dia. É um número exato de minutos.

Aqui está o meu perguntas de acompanhamento:

O que você está dizendo? O que você não pode fazer? Qual problema você está tendo? Porque você acha que os programadores estimam mal? Porque eles não podem ser confiáveis ??para estimar?

De suas declarações, nada está quebrado. Você é capaz de planejar e executar a esse plano. Eu diria que você estava totalmente bem sucedido e fazendo um grande trabalho para ele.

Ok, eu tenho a resposta. Sim, é certo e as observações que fiz (ver questão) são absolutamente compreensível. Para ter certeza de que fez uma pequena simulação Excel para assegurar-me de que eu estava adivinhando.

Se você adicionar múltiplos pequena tarefa com um desvio padrão elevado para tarefas maiores, eles terão um desvio menor, porque a tarefa pequena compensar parcialmente a incerteza.

Portanto, a resposta é: Sim, ele vai trabalhar, se você quebrar suas tarefas, de modo que eles são aproximadamente do mesmo comprimento. É porque a simulação vai fazer a compensação para tarefas maiores automaticamente. Eu não precisa se preocupar com um desvio padrão mais elevado nas tarefas menores.

Mas eu tenho certeza que você não deve misturar tarefas de baixo estimados com altos estimado tarefas -. Porque eles simplesmente não têm a mesma variância

Por isso, é sempre melhor para quebrá-las para baixo. :)


A simulação Excel fiz:

  • criar 50 linhas com estas colunas:
    • em primeiro lugar - um valor fixo 2 (a estimativa muito homogênea)
    • 20 colunas com alguma função aleatória (por exemplo, "= rand () * rand () * 20")
  • Faça somas tona cada coluna
  • adicionar "= variância (..)" para cada coluna aleatória
  • e adicionar uma determinação de desvio para as somas

A variância para cada coluna na minha simulação foi de cerca de 2-3 e a variação dos montantes inferiores a 1.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top