C de Ceremonias
La única vez en la que el Manifiesto Agile prescribe algo parecido a una actividad concreta es cuando dice que el equipo periódicamente reflexiona sobre su trabajo:
De forma periódica, el equipo reflexiona sobre como hacerse más efectivo, tras lo cual afina y ajusta su comportamiento de acuerdo a ello.
En Scrum esto se hace mediante la Retrospectiva del sprint. Al respecto, la Guía 2020 dice:
El propósito de la retrospectiva Sprint es planificar formas de aumentar la calidad y la eficacia.
De hecho, el Manifiesto tampoco dice que tenga que hacerse algo así como una reunión formal, aunque seguramente tiene sentido práctico fijar una reunión periódica para hacerlo. Aparte de eso, no se prescribe ninguna ceremonia. Puedes ser Agile sin estas cosas. Las ceremonias forman parte de los frameworks, y las más conocidas son, sin duda, las de Scrum.
Las ceremonias en Scrum
Entre los diferentes frameworks ágiles, Scrum prescribe una serie de eventos, cuatro de ellos más conocidos como ceremonias.
- Sprint: es el período de tiempo en que se articula la entrega constante de valor.
- Planificación de sprint: la reunión al principio del sprint en donde se deciden en equipo los objetivos y se organiza cómo se van a lograr. Se podría decir que es donde se crea el backlog de sprint.
- Scrum diario o Daily scrum: donde se adapta el backlog de sprint y se genera un plan para el día. No es una reunión para informar de lo que hemos hecho, cosa que debería quedar reflejada en otro lado, sino de lo que vamos a hacer y cómo.
- Revisión del sprint: se inspecciona lo conseguido en el sprint respecto al producto.
- Retrospectiva del sprint: se planifican formas de mejorar la calidad y la eficacia del trabajo.
¿Echas de menos el Refinamiento o Grooming? Pues lamento decirte que no es una ceremonia de Scrum, sino un proceso contínuo que se realiza a lo largo del sprint para descomponer y afinar más el trabajo pendiente. La palabra refinamiento solo aparece una vez en la Guía y no precisamente para denominar una ceremonia. Eso sí, existen muchos materiales que la citan como la “quinta ceremonia no oficial” de Scrum. Si no es oficial, no es Scrum.
Tampoco existe una ceremonia de Demostración. En todo caso, existe la entrega de valor.
Pero también podemos encontrar fácilmente menciones a las ceremonias Agile. No existen. Como hemos visto, las ceremonias solo existen en el contexto de frameworks específicos.
¿Hay ceremonias en otro frameworks?
Lo cierto es que ni Extreme Programming ni Lean Software Development prescriben este tipo de eventos o ceremonias. Eso no quiere decir que no sea necesario dedicar momentos a tomar decisiones sobre el trabajo que se va a llevar a cabo, o a revisar lo realizado.
Lo importante, en todo caso, no son las ceremonias per se, sino las necesidades que pretenden satisfacer. Así, por ejemplo:
- El sprint define un período al final del cual existe un compromiso de entrega de valor. El objetivo sería aportar un cierto nivel de predictibilidad, de modo que diferentes equipos de la empresa puedan sincronizarse. Es una forma de estimación, otro concepto que no existe en agile. De hecho, un equipo agile busca entregar el valor de forma sostenida, en pequeñas unidades y el ideal es que estas unidades requieran un esfuerzo similar y lograr la predictibilidad sabiendo que cada unidad de desarrollo se puede entregar en un tiempo fijo y muy corto.
- La planificación busca tomar decisiones acerca de como hacer lo que se haya decidido hacer. En Extreme Programming, esa decisión es el resultado de hablar con el cliente sobre qué necesita ahora.
- La reunión diaria o daily tiene el objetivo de organizar el trabajo necesario para esa jornada, identificando posibles problemas y formas de solucionarlos. En el fondo, la existencia de una daily parece implicar que cada persona del equipo trabaja separadamente. En Extreme Programming, se favorece el trabajo en parejas (pair-programming) o en equipo (mob-programming) como forma de prevenir ese tipo de problemas que se discuten o se resuelven en el momento.
- La revisión del sprint sería una forma de comprobar si se han conseguido los objetivos fijados en la planificación. Básicamente, lo que buscamos es saber si hemos estado trabajando en lo que nos habíamos propuesto.
- La retrospectiva tiene la función de analizar nuestra forma de trabajar y encontrar formas de mejorarla.
Hay algo en común en todos estos puntos: son momentos para la obtención de feedback y cada uno corresponde a distintos ciclos.
Fake o Dark scrum
El problema surge cuando convertimos estas ceremonias en rituales vacíos de su contenido.
- Cuando el sprint es un periodo de tiempo que o bien no significa nada porque no hay entrega de valor, o bien se convierte en un deadline, en un plazo.
- Cuando la planificación es solo la selección de las tarjetas/tareas que vamos a realizar.
- Cuando la daily scrum es una reunión de reporting en la que se cuenta lo que se ha hecho, y no se organiza el equipo para lo que hay que hacer.
- Cuando la revisión del sprint es un recuento de tareas hechas vs. tareas no completadas.
- Cuando la retrospectiva no se centra en la forma en que trabajamos y qué necesitamos para mejorarla, sino que se enfoca a otros temas.