Story points de Fibonacci: por qué los saltos se agrandan
Los story points de Fibonacci usan una versión modificada de la secuencia matemática de Fibonacci (0, 1, 2, 3, 5, 8, 13, 21) como escala para dimensionar elementos del backlog, porque los saltos que se ensanchan entre números coinciden con cómo la incertidumbre de estimación crece naturalmente con el tamaño. Es la escala por defecto para la mayoría de los equipos Scrum, y entender por qué funciona hace mucho más fácil usarla bien.
La secuencia, y la única modificación
La secuencia real de Fibonacci es 0, 1, 1, 2, 3, 5, 8, 13, 21, 34... cada número es la suma de los dos anteriores. La estimación agile elimina el 1 repetido (ya que dos valores idénticos no aportan nada a un mazo de votación) y normalmente se detiene alrededor del 21, añadiendo una carta ? para "aún no se puede estimar" en lugar de continuar a 34, 55 y más allá. El resultado es el mazo que la mayoría de los equipos realmente usa:
0, 1, 2, 3, 5, 8, 13, 21, ?
El cero merece una mención: es para trabajo que es real pero trivialmente pequeño (un cambio de configuración de una línea, corregir un error de tipeo), lo bastante pequeño como para que contarlo como un "1" completo infle la velocidad del equipo sin ninguna razón.
Por qué los saltos se ensanchan a propósito
Esta es toda la razón por la que Fibonacci supera a una escala simple del 1 al 10 para la estimación. Mira las diferencias entre valores consecutivos: 1, 1, 1, 2, 3, 5, 8. Cerca del fondo, los saltos son diminutos: un 1 y un 2 están muy cerca, porque a tamaños pequeños la gente realmente puede notar la diferencia. Cerca de la cima, los saltos son enormes: de 13 a 21 hay un salto de ocho puntos, porque a ese tamaño nadie puede distinguir de forma confiable "esto es grande" de "esto es mucho más grande".
Una escala lineal (1, 2, 3, 4, 5, 6, 7, 8...) miente sobre esto. Implica que un equipo puede distinguir una historia de 6 puntos de una de 7 puntos con la misma confianza con la que puede distinguir un 1 de un 2, y no puede. Forzar esa falsa elección es exactamente el antipatrón de "teatro de precisión" tratado en antipatrones de estimación: tiempo gastado debatiendo una distinción que el equipo no tiene base real para hacer.
El principio subyacente tiene un nombre fuera del software: la ley de Weber-Fechner, de la psicofísica del siglo XIX, describe cómo los humanos perciben las diferencias en la intensidad de un estímulo de forma proporcional y no absoluta: la diferencia entre sostener una pesa de 1kg y una de 2kg es obvia, pero la diferencia entre 21kg y 22kg no lo es, aunque ambos pares difieran exactamente en 1kg. Los saltos que se ensanchan de Fibonacci se ajustan aproximadamente a esa misma curva de percepción proporcional, aplicada al esfuerzo en lugar del peso.
Qué suele significar cada valor
Esto son ilustraciones, no estándares (consulta la guía completa de story points para ver por qué la comparación entre equipos nunca funciona), pero la mayoría de los equipos converge en algo cercano a esto:
| Puntos | Significado aproximado | Ejemplo |
|---|---|---|
| 0 | Trivial, apenas vale la pena registrarlo | Corregir un error de tipeo, ajustar un valor de configuración |
| 1 | Diminuto, bien entendido | Añadir una sola regla de validación |
| 2 | Pequeño, camino claro | Un campo CRUD directo |
| 3 | Sólido, sigue siendo claro | Un formulario nuevo con algunos estados |
| 5 | Complejidad o tamaño considerable | Una nueva integración de API con documentación conocida |
| 8 | Grande - vale la pena vigilarla | Toca varios sistemas, algunas incógnitas |
| 13 | Cerca del límite | Normalmente debería dividirse antes de un sprint |
| 21 / ? | No es una estimación real | Demasiado grande para dimensionar: divídela |
Variantes de Fibonacci que verás en la práctica
No todos los "mazos de Fibonacci" son idénticos, y las diferencias vale la pena conocerlas para que un desajuste no descarrile una sesión:
- La secuencia modificada (la más común): 0, 1, 2, 3, 5, 8, 13, 21, ? - elimina el 1 repetido, añade un cero y un signo de interrogación. Esto es lo que One More Point y la mayoría de las herramientas de planning poker traen por defecto.
- La secuencia "pura": 1, 2, 3, 5, 8, 13, 21, 34 - más cercana al original matemático, a veces preferida por equipos a los que les resulta confuso el doble significado de "0 puntos pero trabajo real".
- Mazos extendidos: algunas herramientas añaden 40, 100, o un símbolo de infinito por encima del 21 para dimensionar a nivel de épica. En la práctica, cualquier cosa que caería por encima de 21 en un backlog sano debería dividirse en lugar de recibir un número más grande; un mazo extendido puede habilitar silenciosamente el hábito de estimar historias que nunca estuvieron listas.
- Cartas especiales no numéricas: una carta de taza de café ("tomemos un descanso") y una carta de signo de interrogación ("no tengo idea") aparecen en la mayoría de los mazos físicos. No son realmente estimaciones: son formas estructuradas de decir algo distinto a un número, lo cual mantiene el ritual honesto en lugar de forzar una suposición.
Fibonacci y la velocidad
Como los puntos de Fibonacci se pueden sumar, alimentan directamente la velocidad: un promedio móvil de puntos completados por sprint se convierte en la base del equipo para planificar el siguiente. Esta es una ventaja práctica real frente a las tallas de camiseta u otras escalas no numéricas, que necesitan un mapeo explícito de tamaño a número antes de poder sumarse siquiera. También es la razón por la que Fibonacci domina en el extremo del backlog listo para el sprint incluso en equipos que usan una escala más gruesa más adelante: los números necesitan sumar de forma limpia para cuando estén impulsando un compromiso de sprint.
Un breve ejemplo de calibración
Supongamos que la primera sesión de estimación de un equipo produce un 5 para "añadir exportación a CSV a la página de informes". Seis meses después, aparece una historia con un alcance similar: "añadir exportación a CSV a la página del registro de auditoría". Si el equipo todavía tiene contexto genuino sobre la historia original ("eso tomó más o menos esto, y esta se ve más o menos igual"), un 5 rápido es una estimación bien calibrada, no una coincidencia. Si nadie recuerda ya la referencia, esa es la señal para hacer una recalibración corta: mirar cinco o seis historias completadas recientemente con sus puntos, y preguntar si los números todavía se sienten correctos. El proceso completo está en calibrando tu escala de estimación.
¿Por qué no simplemente usar horas divididas por una constante?
Un atajo tentador: "digamos que 1 punto = 4 horas, y multipliquemos". Esto anula por completo el sentido de la escala. Si los puntos fueran un múltiplo fijo de las horas, no llevarían más información que las horas mismas: la misma falsa precisión, los mismos problemas de responsabilidad individual, solo con una unidad distinta. El argumento completo, incluyendo por qué las horas activamente empeoran la estimación, está en story points vs horas.
Calibrando la escala de Fibonacci de tu equipo
Los números de Fibonacci no significan nada hasta que se anclan a trabajo real. El proceso (elegir una historia de referencia, llamarla tu 3 o tu 5, comparar todo lo demás con ella, reanclar cuando el equipo o el código cambien significativamente) está tratado en detalle en calibrando tu escala de estimación. Saltarse este paso es la razón más común por la que las estimaciones de Fibonacci de un equipo nuevo se sienten arbitrarias: la escala es real, pero todavía no se ha conectado a nada.
Cuándo Fibonacci no es la escala adecuada
Fibonacci se gana su lugar en el nivel de planificación de sprint, donde el equipo tiene suficiente contexto para debatir con sentido un 5 frente a un 8. Es la herramienta equivocada para dos situaciones:
- Dimensionamiento aproximado a nivel de roadmap. Debatir valores de Fibonacci seis meses antes de que algo esté refinado es falsa precisión en una etapa demasiado temprana; las tallas de camiseta se ajustan mejor ahí.
- Backlogs muy grandes y en su mayoría sin refinar. Hacer rondas de Fibonacci sobre 80 elementos es cómo la estimación se convierte en la reunión que todos temen; la estimación por afinidad o el sistema de cubos dimensionan un backlog así en una fracción del tiempo. Ambas están tratadas en la comparación completa de técnicas.
Errores comunes que cometen los equipos con Fibonacci
- Discutir minucias sobre 5 contra 8, y luego nunca notar que falta la misma disciplina en 1 contra 2. La escala es gruesa en la parte alta por una razón; mantén la energía del debate proporcional a cuánto importa realmente el número.
- Tratar el 13 como un tamaño normal en lugar de una señal de advertencia. Un backlog con un flujo sano de historias rara vez necesita 13 en un sprint; si aparecen a menudo, el refinamiento está llegando demasiado tarde.
- Extender el mazo silenciosamente hacia arriba en lugar de dividir. Añadir una carta de 34 o 55 resuelve el síntoma (una historia que no cabe en la escala) mientras deja intacta la causa real (una historia sin refinar).
- Olvidar que el mazo es relativo, no absoluto. Una historia de referencia prestada de un blog, un curso o un empleador anterior no significa nada para un equipo que no ha calibrado su propia escala contra su propio trabajo.
La mayoría de estos errores se integran en el catálogo más amplio de antipatrones de estimación; Fibonacci simplemente hace que un par de ellos sean más fáciles de detectar temprano.
Juega una ronda con un mazo de Fibonacci real
La forma más rápida de sentir por qué importan los saltos es votar unas cuantas rondas tú mismo. Crea una sala gratuita con el mazo de Fibonacci, dimensiona cinco historias reales, y observa cómo la conversación gravita naturalmente hacia "¿esto es un 5 o un 8?" en lugar de buscar un número entre dos valores casi idénticos. ¿Prefieres un mazo físico? Imprime uno gratis.