Las preguntas de la Daily Scrum Meeting (o Scrum Diario)

La Daily Scrum o Scrum Diario es una reunión fija de sincronización dentro del Sprint donde típicamente se respondían 3 preguntas: ¿Qué hice ayer?, ¿Qué voy a hacer hoy? y ¿Qué impedimentos tengo o tuve para hacer mi trabajo?. Pero para aprovechar al máximo este evento de Scrum, debemos tener muy presente cómo funcionan los procesos empíricos, saber distinguir lo que estamos evaluando, y también saber que existen otras preguntas poderosas que llevarán a la Daily Scrum más allá de un checkpoint de progreso.

Según la guía oficial de Scrum, La Daily Scrum o Scrum Diario es un evento de 15 minutos (máximo) llevado a cabo por los desarrolladores del equipo de Scrum. Para reducir la complejidad, se realiza a la misma hora y lugar todos los días del Sprint. Históricamente tenía tres preguntas: ¿Qué hice ayer?, ¿Qué voy a hacer hoy? y ¿Qué impedimentos tengo o tuve para hacer mi trabajo? pero, desde la versión 2020 de Scrum, esas preguntas se omitieron.

Para entender la razón y cómo hacen los equipos experimentados en Scrum para sacarle el máximo provecho a la Daily Scrum, primero debemos hablar acerca de los Procesos de control y luego asegurarnos, en segundo lugar, de entender en profundidad cómo funcionan los Sprints, y dentro de ellos, los otros eventos "primos" que se relacionan con la Daily.

Un repaso sobre los procesos Predictivos y Adaptativos de Control

Una manera de dar forma al entendimiento de cómo funciona la Daily Scrum es a través de lo que se conoce como Proceso Predictivo de Control y Proceso Adaptativo de Control.

Para graficarlo, imaginemos que tenemos un arco y flecha y queremos dar en el blanco. Desde el punto de vista del proceso para lograr el objetivo, en principio necesito tener en cuenta ciertas variables antes de soltar la flecha que son:

  • la velocidad del viento
  • la dirección del viento
  • el peso de la flecha
  • la distancia al blanco
  • la altitud o la altura a la que estamos parados
  • la tensión de la cuerda del arco
  • etcétera, etcétera, etcétera

Teniendo en cuenta todas esas variables en algún momento vamos a determinar dos factores: la fuerza o tensión con la cual tiraremos del arco y el ángulo en tres dimensiones con el que que va a soltar la flecha.

Inmediatamente después soltamos la flecha y esa flecha recorrerá este camino hasta el blanco. En el recorrido, asumiendo que todas las decisiones y toda la parametrización son correctas y, necesitamos que la flecha minimice los desvíos y que vaya realmente por donde predijimos que tenían que ir. A esto lo vamos a llamar un Proceso Predictivo de Control, también conocido como Modelo Predictivo de Control.

En el Modelo Predictivo de Control, todos los factores se tienen en cuenta con anticipación, posteriormente se toma una decisión, y luego lo único que queda es ejecutar esa decisión con la mínima cantidad de desvíos posibles. Entonces si esto fuese por ejemplo un proyecto, habrá una planificación y una respectiva ejecución.

Entonces en la fase de la ejecución del plan vamos a medir la performance del proyecto a través de índices tales como: Schedule Performance Index (SPI), Cost performance index (CPI), Valor ganado (earned value, EV).

Esto funciona fantástico cuando todas estas variables, que yo tuve en cuenta en la elaboración del plan, se mantienen constantes o con mínima variación a través del tiempo. Ejemplos de contextos en donde podemos aplicar estos Procesos Predictivos de Control o Modelos Predictivos de Control son la ingeniería civil, en la arquitectura, en la manufactura o en la mecánica, entre otros.

Pero, ¿qué sucede cuando todas esas variables que antes eran constantes empiezan a fluctuar? Imaginemos que el blanco se mueve aleatoriamente, es decir, sin un patrón de movimiento o con un movimiento que no se puede predecir. Además el viento modifica su dirección e intensidad. Imaginemos que también estamos parados sobre una plataforma que tiene rueditas y se va moviendo de adelante hacia atrás. En estas circunstancias es imposible sostener el Modelo Predictivo de Control porque todavía es posible planificar y tener en cuenta todas las variables en un punto y tomar la decisión, pero segundos después las variables cambian.

En este caso, lo que utilizaremos es un Proceso Empírico de Control o también conocido como Modelo adaptativo de Control. Con el Modelo Adaptativo de Control lo que haremos será transparentar toda la información posible para poder inspeccionar y adaptar frecuentemente. Aquí vemos presentes los tres pilares fundamentales del marco de trabajo de Scrum.

Siguiendo con el ejemplo del tiro a un blanco móvil (ejemplo con todas la variables en constante cambio) lo que necesitamos es que en ciertos periodos de tiempo nosotros podamos Inspeccionar y Adaptar el trayecto de la flecha. Para ello imaginemos que podemos poner en pausa el tiempo y en cada uno de estos intervalos de tiempo vemos: hacia dónde está apuntando la flecha, cómo son las nuevas condiciones de las variables, y modificamos la dirección de la flecha la movemos o no dependiendo de las nuevas circunstancias. Luego, volvemos a pausar el tiempo y a evaluar el estado de las variables, haciendo pequeñas o grandes correcciones a la flecha para que la trayectoria se vaya adaptando lo máximo posible a las nuevas condiciones que van apareciendo a cada instante.

El Sprint dentro de Scrum

Este periodo de tiempo en un Proceso Empírico o Adaptativo es lo que en Scrum conocemos como Sprint. El Sprint es un ciclo de tiempo corto o iteración de entre una y cuatro semanas del cual surgirá un Incremento o entregable del producto que estamos creando. Durante el Sprint donde estaremos inspeccionando y adaptando constantemente mientras transparentamos dos aspectos esenciales en paralelo:

  • El producto
  • El proceso

Hablamos de inspección y adaptación del producto que estamos desarrollando y de inspección y adaptación del proceso de construcción. En Scrum, la transparencia de producto se genera en el Product Backlog que debe ser visible, accesible y comunicado a todos. La Inspección y Adaptación del producto suceden tanto en el Sprint Review como en la Sprint Planning, que son dos reuniones que ocurren durante el Sprint y que poseen sus propias características.

Por su parte, al proceso lo evaluamos en la Retrospectiva del Sprint (Sprint Retrospective) que es otro evento de Scrum donde vamos a inspeccionar nuestro proceso y vamos a adaptar lo que sea necesario gracias a los aprendizaje y apuestas de mejora que identifiquemos.

Ahora bien, para entender este proceso y su relación a la Daily Scrum, la clave está en que, si nosotros en Scrum al Sprint lo interpretamos como un Modelo Predictivo de Control, lo que vamos a buscar hacer es tomar en cuenta todas las variables al inicio del Sprint dentro de la Sprint Planning, tomaremos decisiones, y luego simplemente ejecutaremos el Sprint tratando de minimizar desvíos.

Esto nos lleva hacia dos conceptos que son:

  • La Definition of Ready (DoR)
  • El Objetivo de Sprint

Todavía en este punto no hemos llegado a tocar la Daily Scrum. Pero pensemos un momento que la Definition of Ready (DoR) es un acuerdo fundamental que puede cambiar el funcionamiento de Scrum dentro de un Sprint.

La forma en la que acordemos la Definición de Ready (DoR) podría hacer grandes diferencias. Por ejemplo, en un extremo hay Definiciones de Listo (DoR) que no son muy robustas y en el otro extremo hay las cuales muchas veces no se les presta demasiada atención. Muchas veces la Definición de Listo (DoR) es tan robusta y tan rígida que hace que los equipos estén trabajando más cerca de un Modelo Predictivo de Control. Si seguimos este camino, nuestro Sprint se convierte en una iniciativa de construcción pero sin ningún tipo de esfuerzo de descubrimiento ni de experimentación. Esto sucede porque no hay espacio para explorar ya que solo hay espacio para construir y para ejecutar porque todo el descubrimiento se hace en forma predictiva, antes del inicio del Sprint.

La forma en la que establecemos la Definition of Ready (DoR) puede causarnos problemas.

Entonces, ¿Para qué sirve la Daily Scrum?

Dentro del Sprint podríamos decir que tenemos “mini” Sprints. En vez de llamarse “mini” Sprints son días de 24 horas y en vez de tener una Sprint Planning al principio y una Sprint Review y una Retrospectiva del Sprint al final, lo que vamos a tener en estos puntos cada 24 horas son las Daily Scrums o reuniones diarias de sincronización del equipo Scrum.

Las reuniones diarias de Scrum (Daily Scrums) no están apuntadas necesariamente al producto o el proceso. Acá no estamos inspeccionando o adaptando el producto ni el proceso. Para eso están la Sprint Planning, la Sprint Review y Sprint Retrospective como vimos antes. Lo que estamos inspeccionando y adaptando en la Daily Scrum es el plan del Sprint (Sprint Backlog) con respecto al objetivo del Sprint.

Lo que estamos inspeccionando y adaptando en la Daily Scrum es el plan del Sprint (Sprint Backlog) con respecto al objetivo del Sprint.

De esta manera el Sprint ya no es un Sprint solo de construcción sino que es un Sprint de construcción y descubrimiento del producto. Esta diferencia es importante ya que si bien tenemos un Definition of Done (al cual vamos a dejar de lado por ahora), también tenemos un Definition of Ready que dado que en Scrum estamos iterando, inspeccionando y adaptando las tareas y nuestra forma de hacer las cosas con respecto a lograr el objetivo del Sprint, la Definición de Listo (DoR) empieza a ser un poco menos exigente con respecto al nivel de claridad con que tenemos que tener las cosas en la Sprint Planning. De lo contrario seguimos fomentando un Modelo Predictivo de Control basado muchas veces en la desconfianza en donde los equipos de trabajo dicen: “yo necesito que esto esté todo absolutamente claro antes de poder comprometerme hacer un pedacito de producto”.

En cambio, si nosotros entendemos el Sprint con un Proceso Adaptativo de Control dentro de otro Proceso Adaptativo de Control que es Scrum, podemos entender que lo que estamos haciendo no solamente es construir sino que además estamos descubriendo. Entonces estamos construyendo y descubriendo producto. El nivel de claridad que necesitamos en el Sprint Planning es el suficiente como para que nosotros tengamos una sensación de confianza de que algunas cosas pueden cambiar siempre que hablemos de tareas y no de características de producto durante el Sprint.

Cuando hablamos de el qué y el cómo muchas veces podemos decir que el qué es el producto, y el cómo es el plan (las tareas) del Sprint. Lo que puede ir redefiniéndose o cambiando su dirección es el cómo. Aquí en donde entra el Scrum Diario, el problema es que no siempre a las Daily Scrum se las considera así sino que más bien se considera a la Daily como un chequeo de avance.

Erróneamente, a la Daily Scrum se la considera sólo como un chequeo de avance y la transparencia se cae.

La implicancias de tratar a la Daily como un chequeo de avance es que lo que yo voy a buscar en una Daily es que se practiquen los tres pilares de Scrum: transparencia, inspección, adaptación.

El problema es que muchas veces cuando la Daily Scrum se torna un evento de seguimiento lo que empieza a desaparecer, y esto se ve en muchos Equipos de Scrum, es la transparencia. Cuando la Daily se transforma en un espacio de interpelación a las personas del Equipo Scrum, lo que las personas del Equipo Scrum empiezan a hacer es a no transparentar lo que está sucediendo. De esta manera, la inspección y la adaptación terminan siendo de cartón. Lo que sucede es que no estamos inspeccionando y adaptando y esto pasa a ser una ilusión o una mentira.

Las preguntas de la Daily Scrum o Scrum diario

En la Daily Scrum se responden tradicionalmente tres preguntas: ¿Qué hice ayer?, ¿Qué voy a hacer hoy? y ¿Qué impedimentos tengo o tuve para hacer mi trabajo?

Pero podemos entender la Daily Scrum de otra manera: pasado, presente y futuro. Desde un punto de vista del Modelo Adaptativo de Control, vamos a transparentar, inspeccionar y adaptar nuestras tareas o nuestras actividades. Esto es importante porque las preguntas: qué hice ayer, qué voy a hacer hoy y qué impedimentos tengo, están apuntadas a controlar el progreso y adaptar el Plan del Sprint. Especialmente en los Equipos de Scrum, que comienzan a ser auto-gestionados, a veces la principal dificultad empieza por este lado.

Cuando el Equipo Scrum ya tiene experiencia en el progreso hacia el logro del Objetivo de Sprint, no va a seguir inspeccionando y transparentando cuestiones relacionadas con el plan.

Cuando el Equipo Scrum ya tiene experiencia en el progreso hacia el Objetivo de Sprint, no va a seguir inspeccionando y transparentando cuestiones que tienen que ver con el progreso. Posiblemente pueda mover el foco hacia otros lugares. Por ejemplo, en una Retrospectiva del Sprint surge que tenemos problemas de colaboración, entonces orientemos nuestro Proceso Adaptativo de Control dentro del Sprint para maximizar el nivel de colaboración que tenemos. Entonces la información que voy a compartir en cada reunión de sincronización dentro del Sprint no tiene que ver con el progreso porque ya lo tenemos resuelto, sino con la colaboración. Las preguntas en estas Daily serían: con quién colaboré, con quién voy a colaborar y qué impedimentos estoy viendo en mis posibilidades de colaboración.

Supongamos que al tiempo el tema de la colaboración lo tenemos resuelto y surge de una Sprint Retrospective que nuestro principal impedimento del momento es la comunicación con los stakeholders. Por lo tanto, nuestra reunión diaria de sincronización o Proceso Adaptativo de Control va a estar enfocado en transparentar e inspeccionar cuestiones que tengan que ver con la comunicación con stakeholders. En este caso, la información que se va compartir en las Daily es: con quién de nuestros stakeholders estuve comunicándome, con quién me voy a estar comunicando en las próximas horas y qué impedimentos estoy viendo en la capacidad de comunicación que tenemos con los stakeholders.

Luego de la Daily tomaremos acciones de adaptación hasta que podamos resolver impedimentos y cada vez que surja algún impedimento o aspecto en lo que nosotros consideramos que tenemos que incrementar nuestro foco dentro de los Sprints vamos a enfocar también la Daily en cuestiones que son diferentes. Esto nos ayuda a incrementar nuestra capacidad de mejora continua.

¿Y si la pregunta termina siendo una? Yo creo que sería el máximo ROI preguntarnos cada día ¿Cúal es el principal impedimento hacia el objetivo del Sprint actual? Cuya respuesta podría no estar relacionada necesariamente con el progreso, sino con cualquier aspecto que se precise mejorar en ese momento.

Cómo evitar hacer Scrum Oscuro (Dark Scrum)

Si nosotros no entendemos la Daily como un checkpoint de transparencia e inspección para posterior adaptación dentro de un Proceso Adaptativo de Control y entendemos, al contrario, que un Sprint es un Modelo Predictivo de Control en donde todas las decisiones y la claridad tienen que estar en la Sprint Planning para después solamente ejecutar y visibilizar el progreso, iremos hacia lo que se llama Dark Scrum (Scrum Oscuro) con muchos matices de lo que entendemos tradicionalmente con un Proceso Predictivo de Control en un contexto complejo.

Cuando nos pasa esto ya dejamos de ser un Equipo Scrum que está enfocado en descubrir y construir y pasamos a ser un equipo que solamente construye. La invitación es a no entender Scrum como un Proceso Predictivo para controlar desvíos. Tampoco entender los Sprints como mini Procesos Predictivo para controlar desvíos. Sino que entendamos que Scrum en su exterior es un Proceso Adaptativo de Control y los Sprints dentro de Scrum, también son Procesos Adaptativos.