Je suis surpris que personne n'ait mentionné la technique d'estimation de type PERT décrite dans The Clean Coder de Robert Martin . Dans cette méthode, vous estimez combien de temps cela prendra pour 3 scénarios: optimiste ( O
), nominal ( N
) et pessimiste ( P
). Ensuite, la durée attendue = (O+4N+P)/6
et vous obtenez un écart type de (P-O)/6
.
Cela semble fonctionner assez bien, et je l'ai utilisé à quelques reprises lorsque la direction se préoccupe vraiment de la durée probable de quelque chose.
Comme d'autres l'ont commenté, j'ai également fait des estimations en examinant des données historiques ("Combien de temps a-t-il fallu pour faire la même chose?").
Mais ma méthode préférée est de ne pas faire d’estimation du temps, mais seulement d’évaluer des estimations ponctuelles et d’obtenir une vitesse sur les itérations. Si une équipe est assez cohérente pour dimensionner et terminer son travail (histoires d'utilisateurs), vous gagnez un temps fou en ne vous demandant même pas combien de temps chaque chose prendra.
Il est terriblement difficile d’obtenir des estimations de l'heure, et il faut beaucoup de travail pour décomposer les informations en suffisamment de petits morceaux pour pouvoir les mesurer efficacement. Et même dans ce cas, elles sont rarement correctes car il y a trop de variables et nous oublions de prendre en compte des éléments tels que la maladie, les vacances ou même les distractions.
Si je dois faire des estimations d'heures, j'essaie de ne les faire que pour des tâches simples au sein d'une itération. Je mesure tout dans des estimations d'une demi-journée (4, 8, 12 heures) à moins que je sache que ce pourrait être moins. Mais j’estime rarement quoi que ce soit à moins d’une heure.