¿Por qué se utiliza la serie Fibonacci en el poker de planificación ágil? [cerrado]


Al estimar el tamaño relativo de las historias de usuario en el desarrollo de software ágil, los miembros del equipo deben estimar el tamaño de una historia de usuario como 1, 2, 3, 5, 8, 13, ... . Así que los valores estimados deben parecerse a la serie de Fibonacci. Pero me pregunto, ¿por qué?

La descripción de http://en.wikipedia.org/wiki/Planning_poker en Wikipedia contiene la misteriosa frase:

La razón para usar la secuencia de Fibonacci es reflejar la inherente incertidumbre en la estimación de artículos más grandes.

Pero, ¿por qué debería haber incertidumbre inherente en los artículos más grandes? ¿No es mayor la incertidumbre si hacemos menos mediciones, es decir, si menos personas estiman la misma historia? E incluso si la incertidumbre es mayor en historias más grandes, ¿por qué implica el uso de la secuencia de Fibonacci? ¿Hay una razón matemática o estadística para ello? De lo contrario, el uso de la serie de Fibonacci para la estimación se siente como ciencia CargoCult para mí.

Author: asmaier, 2012-02-20

6 answers

La serie de Fibonacci es solo un ejemplo de una escala de estimación exponencial. La razón por la que se utiliza una escala exponencial proviene de la Teoría de la Información.

La información que obtenemos de la estimación crece mucho más lento que la precisión de la estimación. De hecho crece como una función logarítmica. Esta es la razón de la mayor incertidumbre para los artículos más grandes.

Determinar la base más óptima de la escala exponencial (normalización) es difícil en la práctica. La base correspondiente a la escala de Fibonacci puede o no ser óptima.

Aquí hay una explicación más detallada de la justificación matemática: http://www.yakyma.com/2012/05/why-progressive-estimation-scale-is-so.html

 62
Author: isak gilbert,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-07-22 10:36:25

De los primeros seis números de la secuencia de Fibonacci, cuatro son primos. Esto limita las posibilidades de dividir una tarea igualmente en tareas más pequeñas para que varias personas trabajen en paralelo. Hacerlo podría llevar a la idea errónea de que la velocidad de una tarea podría escalar proporcionalmente con el número de personas que trabajan en ella. La serie 2^n es más vulnerable a tal problema. La secuencia de Fibonacci, de hecho, obliga a volver a estimar las tareas más pequeñas una por una.

 36
Author: KillerInsect,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-08-17 16:13:03

De acuerdo con este blog ágil

"porque crecen aproximadamente a la misma velocidad a la que los humanos podemos percibir cambios significativos en magnitud."

Sí, claro. Creo que es porque añaden un aire de legitimidad (Fibonacci! math!) a lo que en esencia es un ejercicio de muy alto nivel, de dimensionamiento en las primeras etapas (no de alcance) (que tiene valor).

Pero puedes obtener los mismos resultados usando el tamaño de la camiseta...

 16
Author: Ibrahim Bashir,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-01-26 13:06:59

Definitivamente quieres algo exponencial, para que puedas expresar cualquier cantidad de tiempo con un error relativo constante. La precisión de su estimación también es muy probable que sea proporcional a su estimación.

Así que quieres algo : a) con números enteros b) exponencial c) fácil

Ahora, ¿por qué Fibonacci en lugar de, 1 2 4 8? Mi conjetura es que es porque fibonacci crece más lento. Está en goldratio^n, y goldratio=1.61...

 14
Author: fulmicoton,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-20 14:10:10

La secuencia de Fibonacci es solo una de varias que se utilizan en la planificación de proyectos de poker.

Es difícil estimar con precisión grandes unidades de trabajo y es fácil atascarse en discusiones de horas vs días si sus números son demasiado "realistas".

Me gusta la explicación en http://www.agilelearninglabs.com/2009/06/story-sizing-a-better-start-than-planning-poker / , es decir, la serie de Fibonacci representa un conjunto de números que podemos intuitivamente distinguir entre ellos como diferentes magnitudes.

 6
Author: kaj,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-01-26 13:10:05

Uso Fibonacci por un par de razones:

  • A medida que la tarea se hace más grande, los detalles se vuelven más difíciles de comprender
  • La estimación de tareas es el número de horas para que cualquier persona en el equipo complete la tarea
  • No todos en el equipo tendrán la misma cantidad de experiencia para una tarea particular para que se suma a la incertidumbre también
  • El ser humano se fatiga por una tarea más grande y potencialmente más compleja. Mientras que una tarea dos veces más compleja se resuelve en ordenador puede tomar un poco más para un desarrollador.

A medida que sumamos todas las incertidumbres estamos menos seguros de lo que las horas realmente deben ser. Termina más fácil si solo podemos medir si esta tarea es más grande/más pequeña que otra donde ya dimos una estimación. A medida que aumentamos el tamaño / complejidad de la tarea, el efecto de la incertidumbre también se amplifica. Estaría felizmente tomando una estimación de 13 horas para una tarea que parece el doble de grande que una que he estimado anteriormente en 5 hora.

 4
Author: Chris Chou,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-22 16:54:19