Question

Lors de l'estimation de la taille relative des histoires d'utilisateurs dans le développement logiciel agile les membres de l'équipe sont censés estimer la taille d'une histoire d'utilisateur comme 1, 2, 3, 5, 8, 13, .... Ainsi, les valeurs estimées devraient ressembler à la série de Fibonacci. Mais je me demande, pourquoi?

La description de http://en.wikipedia.org/wiki/Planning_poker sur Wikipedia détient la mystérieuse phrase:

La raison pour l'utilisation de la suite de Fibonacci est de refléter la inhérente incertitude dans l'estimation de plus grands articles.

Mais pourquoi devrait-il y avoir une incertitude inhérente à grands éléments? N'est pas le plus élevé d'incertitude, si nous faisons moins mesure, ce qui signifie, si moins de gens estiment la même histoire? Et même si l'incertitude est plus élevé dans les grandes histoires, pourquoi cela implique l'utilisation de la suite de Fibonacci? Y at-il une raison mathématique ou statistique pour elle? Sinon, en utilisant pour moi la série de Fibonacci pour l'estimation comme ressent la science culte du cargo.

Était-ce utile?

La solution

La série de Fibonacci est un exemple d'une échelle d'estimation exponentielle. La raison pour laquelle une échelle exponentielle est utilisée provient de Théorie de l'information.

Les informations que nous obtenons de l'estimation croît beaucoup plus lent que la précision de l'estimation. En fait, il se développe en fonction logarithmique. Ceci est la raison de l'incertitude plus élevée pour les gros articles.

Détermination de la plus base optimale de l'échelle exponentielle (normalisation) est difficile en pratique. La base correspondant à l'échelle de Fibonacci peut ou peut ne pas être optimal.

Voici une explication plus détaillée de la justification mathématique: http: //www.yakyma.com/2012/05/why-progressive-estimation-scale-is-so.html

Autres conseils

Sur les six premiers nombres de la suite de Fibonacci, quatre sont premiers. Cela limite les possibilités de décomposer une tâche aussi en petites tâches d'avoir plusieurs personnes travaillent là-dessus en parallèle. Cela pourrait conduire à l'idée fausse que la vitesse d'une tâche pourrait évoluer proportionnellement au nombre de personnes qui y travaillent. Les plus vulnérables est la série 2 ^ n à un tel problème. La suite de Fibonacci dans les forces d'information à une ré-estimation des tâches plus petites, un par un.

Selon ce blog agile

« parce qu'elles se développent à peu près au même rythme que nous, les humains peuvent percevoir des changements significatifs dans l'ampleur. »

Ouais droit. Je pense qu'il est parce qu'ils ajoutent un air de légitimité (Fibonacci! Maths!) À ce qui est essentiellement un très haut niveau, le dimensionnement stade précoce (la portée non) l'exercice (qui n'a valeur).

Mais vous pouvez obtenir les mêmes résultats en utilisant t-shirt taille ...

Vous voulez certainement quelque chose exponentielle, de sorte que vous pouvez exprimer toute quantité de temps avec une erreur relative constante. La précision de votre estimation et est très susceptible d'être proportionnelle à votre estimation.

Vous voulez quelque chose: a) avec des nombres entiers b) exponentielle c) facile

Maintenant, pourquoi Fibonacci au lieu de, 1 2 4 8? Je pense que c'est parce que fibonacci pousse plus lentement. Il est en goldratio ^ n, et goldratio = 1,61 ...

La séquence de Fibonacci est juste un de plusieurs qui sont utilisés dans le poker de planification du projet.

Il est difficile d'estimer avec précision les grandes unités de travail et il est facile de se perdre dans les heures vs discussions jours si vos chiffres sont trop « réaliste ».

J'aime l'explication http://www.agilelearninglabs.com/2009/06/story-sizing-a-better-start-than-planning-poker/ , à savoir la série de Fibonacci représente un ensemble de nombres que l'on peut distinguer intuitivement entre les grandeurs comme différentes.

J'utilise pour un couple de Fibonacci raisons:

  • Comme la tâche devient plus les détails deviennent plus difficiles à saisir
  • Estimation des tâches est le nombre d'heures pour tout le monde dans l'équipe pour compléter la tâche
  • Pas tout le monde dans l'équipe aura la même quantité d'expérience pour une tâche particulière afin que ajoute à l'incertitude trop
  • humain se fatigue plus grande tâche et potentiellement plus complexe. Bien que est résolu une tâche deux fois plus complexe en double pour un ordinateur il peut prendre un peu plus pour un développeur.

Comme nous additionne toutes les incertitudes que nous sommes moins sûrs de ce que les heures devraient être en réalité. Il finit plus facile si nous pouvons jauger si cette tâche est plus grande / plus petite qu'un autre où nous avons donné une estimation de déjà. Comme nous la taille / complexité de la tâche l'effet de l'incertitude est également amplifié. Je prendrais heureusement une estimation de 13 heures pour une tâche qui semble deux fois plus grand que celui que je l'ai déjà estimé à 5 heures.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top