Agile y diagramas de Gantt: cómo usar ambos juntos
A los equipos de scrum les dicen que los diagramas de Gantt son reliquias del modelo en cascada, y a los responsables de la hoja de ruta les dicen que el backlog responde a cualquier pregunta. Ambas afirmaciones son falsas. Un diagrama de Gantt y agile resuelven problemas distintos a distintas altitudes. Los sprints llevan el trabajo detallado semana a semana, mientras que un Gantt muestra la forma de la versión por encima de ellos: las fases, las fechas fijas y las entregas entre equipos. Usados juntos responden a preguntas que ninguno responde por sí solo.
- Sí, coexisten. Esta es la respuesta honesta
- Dos herramientas, dos altitudes
- Las tres capas de un plan agile
- Lo que un Gantt añade y que un backlog no puede
- Usar un Gantt para la versión y los sprints para el detalle
- Ejemplo práctico: versión 2.0 a lo largo de cuatro sprints
- La cadena que fija tu fecha
- Objeciones comunes, respuestas honestas
- Cómo construir un Gantt de la versión en una tarde
- Mantenlo ligero o muere
- Cuándo saltarse el Gantt por completo
Sí, coexisten. Esta es la respuesta honesta
Haz la misma pregunta a un purista de scrum y a un responsable de entrega y obtendrás respuestas opuestas. El purista dice que un diagrama de Gantt es cascada disfrazada. El responsable dice que un backlog no puede decirle a un cliente cuándo sale la funcionalidad. Ambos tienen razón a medias. Un diagrama de Gantt y agile no son rivales, operan a distintas altitudes. Agile lleva el trabajo del día a día dentro de cada sprint. Un Gantt describe la forma de la versión por encima de los sprints: las fases, las fechas inamovibles y las entregas entre equipos que ningún backlog puede mostrar por sí solo.
El verdadero error es obligar a una herramienta a hacer los dos trabajos. Planifica un sprint de dos semanas en un Gantt y lo redibujarás cada mañana a medida que se muevan las historias. Promete una fecha de lanzamiento solo desde un backlog y estarás adivinando la velocidad. Pon cada herramienta donde encaja y la vieja tensión desaparece sin ruido.
Dos herramientas, dos altitudes
Un tablero y un backlog están hechos para el flujo. Responden a qué debería tomar un equipo a continuación, qué está bloqueado hoy y cuánto queda en el sprint actual. Son deliberadamente ciegos a las fechas del calendario, porque las fechas no son la forma de dirigir un sprint. Un Gantt está hecho para el tiempo. Responde a cuándo empieza una fase, qué equipos deben terminar antes de que otro pueda empezar y si la versión sigue aterrizando en la fecha prometida.
| Pregunta | Tablero y backlog | Gantt de la versión |
|---|---|---|
| ¿Qué construimos a continuación? | Sí, la cima del backlog | No |
| ¿Estamos bloqueados hoy? | Sí | En parte |
| ¿Llegaremos a la fecha de lanzamiento? | No | Sí |
| ¿Qué equipo condiciona al nuestro? | Rara vez visible | Sí, como una dependencia |
| ¿Cuál es la fase después de esta? | No | Sí |
Fíjate en que las columnas apenas se solapan. Ese es el punto. No estás eligiendo entre ellas, estás cubriendo dos conjuntos distintos de preguntas.
Las tres capas de un plan agile
Una entrega agile sana funciona sobre tres capas, y solo una de ellas es el sprint. Mantenerlas separadas es lo que permite que un Gantt y un tablero convivan sin pisarse.
- Capa de hoja de ruta. Trimestres y temas. Lo que importa este semestre y, a grandes rasgos, en qué orden. Es una vista de estrategia, no un cronograma.
- Capa de versión. Aquí vive el Gantt. Una sola versión es un conjunto de fases a lo largo de varios sprints, con fechas reales, hitos y dependencias entre equipos. Aquí es donde te comprometes con los clientes.
- Capa de sprint. El tablero y el backlog. Historias, puntos, flujo diario. Las estimaciones cambian aquí constantemente, y eso está bien, porque la capa superior absorbe la variación.
Cuando alguien dice que los diagramas de Gantt matan la agilidad, normalmente quiere decir que alguien intentó llevar la capa de sprint en un Gantt. Sube el Gantt a la capa de versión y la objeción se evapora.
Lo que un Gantt añade y que un backlog no puede
Un backlog es una lista plana, ordenada por prioridad. Es excelente ordenando el trabajo y pésimo en tres cosas de las que depende una versión. Primero, las dependencias entre equipos. Cuando el equipo de API debe entregar una pasarela antes de que el equipo de la app pueda construir el checkout, esa relación es invisible en el backlog de cualquiera de los dos, pero evidente como una dependencia en un Gantt. Segundo, los plazos inamovibles. Una feria, una cláusula contractual o una fecha regulatoria es un punto fijo que un backlog simplemente no representa. Tercero, la vista de la versión: una sola imagen que le muestra a un interesado todo el recorrido desde el diseño hasta el lanzamiento.
Un backlog le dice a un equipo qué hacer a continuación. Un Gantt le dice a la organización si la suma de todo ese trabajo llega a tiempo. No son la misma pregunta, y un plan de versión necesita ambas respondidas.
Usar un Gantt para la versión y los sprints para el detalle
El patrón que funciona es la planificación por olas sucesivas. Dibujas el Gantt de la versión al nivel de fases y épicas, a grandes rasgos una barra por épica o por sprint, no una barra por historia. El corto plazo es detallado porque lo conoces. El largo plazo es un bloque grueso porque, con honestidad, aún no lo conoces, y fingir lo contrario es cómo los diagramas de Gantt se ganan su mala fama.
En cada sprint, el equipo planifica sus historias en el tablero como de costumbre. Nada de eso cambia. Lo que cambia es que, al final del sprint, actualizas la barra correspondiente en el Gantt: ¿la épica terminó, se retrasó o encogió? El Gantt no es un segundo lugar para gestionar tareas. Es una lente que convierte ocho semanas de resultados de sprint en una sola respuesta sobre la fecha de la versión. Estima las barras gruesas con la velocidad real de tu equipo, no con cálculos ilusorios, y lee nuestra guía sobre estimar duraciones antes de comprometer las fechas.
Ejemplo práctico: versión 2.0 a lo largo de cuatro sprints
Un equipo de pagos se compromete a entregar un checkout de autoservicio en ocho semanas, cuatro sprints de dos semanas. El tablero lleva las historias. El Gantt lleva la versión. Así es como las épicas se corresponden con los sprints y dónde está el riesgo.
| Épica | Equipo | Sprints | Depende de |
|---|---|---|---|
| Integración de la pasarela de pago | API | 1 a 2 | Nada |
| Interfaz del checkout | App | 3 a 4 | Pasarela (fin a inicio) |
| Reglas antifraude | Riesgo | 2 a 3 | Pasarela (inicio a inicio) |
| Lanzamiento y visto bueno de cumplimiento | Todos | 4 | Todo lo anterior |
Lo que revela el Gantt. El equipo de la app no puede empezar el checkout hasta que el equipo de API termine la pasarela en el sprint 2. Si la pasarela se retrasa un sprint, el checkout se retrasa con ella y el lanzamiento de la semana 8 desaparece. Ningún backlog saca esto a la luz, porque la dependencia cruza los tableros de dos equipos. En el Gantt es una sola flecha, y le dice al responsable de la versión exactamente qué épica proteger. Financia la pasarela primero y trata su fecha de fin como la que no puede moverse.
La cadena que fija tu fecha
En el ejemplo anterior, la secuencia pasarela, luego checkout, luego lanzamiento es el camino más largo de trabajo dependiente. Todo lo demás, como las reglas antifraude que corren en paralelo, tiene margen para moverse. Esa cadena más larga es tu camino crítico, y es lo único que de verdad fija la fecha de lanzamiento. Las reglas antifraude podrían retrasarse unos días y la versión igual sale. La pasarela no.
Aquí es donde un Gantt se gana el sueldo en una tienda agile. Los gráficos de velocidad te dicen lo rápido que se mueve un solo equipo. No pueden decirte cuál de cuatro flujos de trabajo en paralelo es el que tiene secuestrada toda la versión. El camino crítico sí puede, y te permite gastar tu atención donde un retraso de verdad te cuesta la fecha, en lugar de repartir la preocupación por igual entre todos los equipos.
Reasignar sobre la marcha. Dos semanas dentro, el equipo de API va un sprint por detrás en la pasarela. Como el Gantt muestra que la pasarela está en el camino crítico y las reglas antifraude no, el responsable de la versión mueve a un ingeniero de las reglas antifraude a la pasarela. Las reglas antifraude usan su holgura, la pasarela aterriza a tiempo y la semana 8 se mantiene. Esa decisión es invisible sin una vista consciente de las dependencias.
Objeciones comunes, respuestas honestas
La resistencia es predecible, y la mayor parte es justa cuando un Gantt se usa mal. Estas son las objeciones que planteará un equipo de scrum y la respuesta honesta a cada una.
| Objeción | Respuesta honesta |
|---|---|
| Los diagramas de Gantt son cascada | Solo si planificas historias en ellos. En la capa de versión son solo una vista de dependencias y fechas. |
| Las estimaciones cambian cada sprint | Cierto, por eso mantén las barras a nivel de épica y actualízalas después de cada sprint. No dibujes historias. |
| Se quedará desactualizado | Lo hará, si nadie es dueño de él. Asigna a un responsable que lo actualice en cada revisión de sprint, ni antes. |
| El tablero ya muestra los bloqueos | Dentro de un equipo, sí. Las puertas entre equipos y las fechas fijas, no. |
| Los interesados deberían leer el backlog | No lo harán. Un Gantt de la versión es el artefacto que ejecutivos y clientes de verdad entienden. |
Ninguna de estas objeciones sobrevive al contacto con un Gantt mantenido a la altitud correcta. Casi todas son en realidad quejas sobre Gantts mantenidos a la equivocada.
Cómo construir un Gantt de la versión en una tarde
No necesitas una herramienta pesada ni una certificación. Necesitas las épicas, las fechas con las que ya te has comprometido y una hora con los líderes de equipo. Esta es la secuencia.
- Lista las épicas de esta versión, no las historias. Apunta a entre cinco y doce barras.
- Marca primero las fechas fijas: lanzamiento, demos, plazos contractuales. Son hitos, dibujados como rombos, y no se mueven.
- Dimensiona cada épica en sprints usando tu velocidad real, luego colócala en la línea de tiempo.
- Dibuja las dependencias entre épicas, sobre todo las que cruzan equipos. Este es el paso de mayor valor.
- Encuentra la cadena más larga de épicas dependientes. Ese es el camino que defiendes.
- Asigna a un responsable para actualizar el gráfico en cada revisión de sprint, y en ningún otro momento.
Abre un plan en blanco en el editor de Gantt, añade una fila por épica, enlaza las dependencias y tendrás una vista de la versión en menos de una hora. Mantén el detalle de las historias en tu tablero, donde le corresponde.
Mantenlo ligero o muere
La mayor razón por la que un Gantt fracasa en un equipo agile es el peso. Alguien construye un precioso gráfico de cien filas, queda desactualizado en un sprint y el equipo concluye que los diagramas de Gantt no funcionan. El gráfico no falló, falló la granularidad. Un Gantt de la versión debería ser lo bastante pequeño como para que una persona lo actualice en diez minutos en la revisión de sprint arrastrando unas pocas barras y moviendo una fecha.
Sigue la versión como sigues cualquier plan frente a la realidad, comparando dónde dijiste que estaría cada épica con dónde aterrizó de verdad. Una rápida comprobación de línea base en cada revisión te dice si la fecha está derivando mucho antes de que se convierta en una crisis. Un diagrama de Gantt construido una vez y nunca tocado no es un plan, es un deseo. Actualízalo o bórralo, pero no lo dejes pudrirse en una unidad compartida fingiendo ser la verdad.
Cuándo saltarse el Gantt por completo
La honestidad corta en los dos sentidos. No todo esfuerzo agile necesita un Gantt, y añadir uno donde no aporta nada es solo sobrecarga. Si tu trabajo es un flujo continuo de elementos pequeños e independientes, sin fecha externa ni entregas entre equipos, un tablero basta. Un equipo de mantenimiento puro, una cola de soporte o un solo escuadrón que despliega a producción a diario ganan poco con una capa de versión, porque no hay versión que dar forma.
Echa mano de un Gantt cuando aparezcan tres señales juntas: una fecha externa fija que has prometido, más de un equipo cuyo trabajo depende del de otro y un interesado que necesita ver todo el recorrido de una vez. Cuando las tres están presentes, el backlog deja preguntas reales sin responder y el Gantt las responde. Cuando no hay ninguna, sáltatelo con la conciencia tranquila y deja que el tablero haga su trabajo.
Preguntas frecuentes
¿Los diagramas de Gantt contradicen los principios de agile?
No, cuando se quedan en la capa de versión. Agile gobierna cómo trabaja un equipo dentro de un sprint. Un Gantt de la versión muestra fases, fechas fijas y dependencias entre equipos por encima de los sprints. El conflicto solo aparece cuando alguien intenta programar historias individuales en un Gantt, cosa que nadie debería hacer.
¿Qué granularidad debería usar un Gantt de la versión?
Una barra por épica o por sprint, nunca por historia. Apunta a entre cinco y doce barras para una versión de ocho semanas. El detalle a nivel de historia pertenece al tablero, donde cambia a diario. Mantener el Gantt grueso es justo lo que permite a un responsable actualizarlo en diez minutos en cada revisión de sprint.
¿Con qué frecuencia debería actualizar el Gantt de la versión?
Una vez por sprint, en la revisión de sprint, y en ningún otro momento. Mueve las barras para que coincidan con lo que de verdad terminó, ajusta cualquier fecha que se haya retrasado y comprueba que el hito de lanzamiento se mantiene. Actualizarlo más a menudo lo convierte en un segundo rastreador de tareas y duplica el tablero. Actualizarlo menos deja que se desactualice.
¿Puede un Gantt reemplazar nuestro backlog o tablero?
No, y no debería intentarlo. El tablero gestiona el flujo diario y responde a qué tomar a continuación. El Gantt responde a si la versión aterriza en su fecha y qué equipo condiciona a otro. Cubren preguntas distintas. Lleva ambos, mantenlos a distintas altitudes y deja que cada uno haga el trabajo para el que está hecho.
¿Cómo maneja un Gantt los cambios en las estimaciones de sprint?
Absorbiendo la variación a nivel de épica. Las estimaciones de las historias individuales cambian cada sprint, pero una épica dimensionada en sprints usando la velocidad real es mucho más estable. Planifica los sprints cercanos en detalle y mantén los posteriores como bloques gruesos con planificación por olas sucesivas, luego refina cada bloque a medida que se acerca al sprint actual.
Seguir leyendo
- El método del camino crítico explicado
- Las dependencias entre tareas explicadas
- Hitos frente a tareas
- Ver todas las guías
Las guías que aún no se han traducido se abren en inglés.