Como lidar com estimativas para programadores que se juntam à equipe?

11

A iteração já começou, um novo programador se junta à equipe, a tarefa X já foi estimada em 30 horas por um desenvolvedor diferente.

Qual é a melhor prática nesta situação?

  • novo desenvolvedor é executado com a estimativa fornecida (a idéia é que qualquer discrepância será corrigida quando a velocidade for calculada?)
  • novo desenvolvedor re-estima tarefa? (se sim, e se for significativamente maior e não se encaixar mais na iteração?)
  • jogue nossas mãos para cima e volte para a cachoeira?
  • algo completamente diferente?
Jeremy Heiler
fonte

Respostas:

4

O que eu digo é:

Novo desenvolvedor re-estima a tarefa. Se tiver que ser movido para fora da iteração, será movido para fora.

Você não sabe se o novo desenvolvedor poderá ou não fazê-lo no tempo que o desenvolvedor original levar. E com metodologias ágeis é o desenvolvedor que faz o trabalho aquele que deve dizer quanto tempo levará.

Além disso, eu aplicaria um multiplicador (qual o tamanho, dependendo do desenvolvedor), pois o desenvolvedor precisa se encaixar na equipe / projeto / empresa.

Miyamoto Akira
fonte
15

Eu não adicionaria essa pessoa a esse sprint individual. Em vez disso, forneça a ele outra tarefa para trabalhar para acelerar a base de código (talvez correções menores?).

A adição de uma nova pessoa à equipe provavelmente atrasará seu progresso nesse objetivo específico, pois ele precisará se acostumar com o ambiente e aprender como as coisas funcionam lá. Incorpore-o no próximo sprint, com estimativas adequadas com base na nova equipe.

Daenyth
fonte
6

Primeiro, ouço "Tarefa Ágil" e acho que um ou dois dias de trabalho, e não uma semana. As tarefas são aquelas em que você divide as histórias quando a própria história se encaixa na iteração, e é uma raridade real ter uma história que não pode ser dividida em partes menores.

Segundo, você está basicamente pedindo a esse novo desenvolvedor que atinja o chão. Se for razoavelmente esperado que ele pule direto e mantenha o ritmo do resto da equipe, a estimativa original deve se manter. Se ele não puder, ele provavelmente não deve ser mantido com essa estimativa, pelo menos não por si mesmo.

Terceiro, qual é a situação? Eu tenho certeza que a situação não era que a equipe estimou o trabalho deles, então alguém saiu e você o substituiu no dia seguinte. Então, eu acho que X caras na equipe estimaram o trabalho deste sprint e pegaram o que eles achavam que poderiam suportar, e então você apresentou o novo cara e agora há X + 1 caras para fazer o trabalho originalmente comprometido por X caras . A menos que a equipe não escolha sua carga de trabalho e, em vez disso, tenha o estoque acumulado pela gerência, eu não daria muito trabalho ao novo cara esta semana. Se o cronograma foi definido pela gerência, não é Agile.

Pessoalmente, eu configuraria esse cara para emparelhar com um programador mais experiente em seu primeiro sprint (se seus programadores não emparelharem o tempo todo, o que eu estou deduzindo que eles não devem), pelo fato de você estar pensando em dar um tarefa para um cara). Olhando por cima do ombro e fazendo perguntas, ele começará a aprender a base de código e, se sua habilidade geral de programação for boa, ele será um revisor de código eficaz quase imediatamente, detectando bugs, códigos ineficientes, etc.

KeithS
fonte
Infelizmente, a situação era praticamente isso - alguém estimou o trabalho e perdemos uma boa quantidade de mão de obra. Agora, a nova mão de obra tem as tarefas que foram estimadas pela antiga mão de obra.
7
Esse é um caso excepcional e, nesse caso, eu teria a nova equipe (e não apenas o novo) reestimar o backlog. Eu também consideraria cancelar o sprint; se metade da sua equipe saiu no meio da corrida, não é mais a mesma equipe e não se espera que atinja os objetivos da antiga; eles terão uma nova velocidade de estado estacionário e uma maneira diferente de ver as coisas.
Keiths