miércoles, 3 de septiembre de 2014

Retrosprectiva: la herramienta básica para la inspección/adaptación

Una de las características fundamentales de las metodologías ágiles es el uso de la inspección y adaptación para mantener al equipo en la senda de la mejora continua. Scrum o Crystal, por ejemplo, incorporan en la propia metodología eventos específicos que nos permiten alcanzar este objetivo. El ciclo iterativo característicos de estas metodologías permiten integrar fácilmente la inspección y adaptación con el proceso de desarrollo del producto en sí.



Pasos de una Retroscectiva como parte del ciclo de vida iterativo
Imagen adaptada de Agile Retrospectives: Making Good Teams Great




En Scrum disponemos de un reunión para "echar la vista atrás" y analizar el trabajo llevado a cabo durante la última iteración (ojo no el producto, esto se hace en otra reunión): Sprint Retrospective. Esta reunión (parte derecha del ciclo de la figura superior) constituye una oportunidad única para que el equipo pueda evaluarse a sí mismo y crear un plan de mejoras. La duración típica para una iteración de 4 semanas es aproximádamente de 3 horas... dedicadas única y exclusivamente a mejorar la forma de trabajar (repito, no el producto). Te animo a reflexionar: ¿Cuánto tiempo dedicaste el mes pasado (o el anterior) a mejorar la forma en que trabajas tú o tu equipo?


Las autoras de Agile Retrospectives: Making Good Teams Great nos proponen la siguiente estructura para la conducción de una reunión de retrospectiva ágil:
  1. Preparar el camino
  2. Recopilar información
  3. Generar conocimiento
  4. Decidir qué hacer
  5. Cerrar la retrospectiva
Veamos un poco más en detalle cada una de estas fases:

Preparar el camino
Durante los primeros minutos de la retrospectiva se debe intentar que el equipo esté focalizado en lo que se va a hacer, evitando que los problemas e incidencias del día a día interfieran en la reunión. El objetivo es crear una atmósfera en el que todos los integrantes del equipo se sientan cómodos.

Dar la bienvenida, indicar la duración de la reunión y recordar el objetivo de la retrospectiva es una buena forma de empezar. Puesto que se requiere la participación activa de todo el equipo es interesante que antes de pasar a la siguiente fase todos "digan algo en voz alta". Una ronda rápida en la que todos contestan a alguna pregunta directa permitirá "calentar" las cuerdas vocales...

Es buen momento para recordar los acuerdos del equipo: móviles en modo avión durante las reuniones, respeto mutuo, evitar el sarcasmo, cumplir la duración de las reuniones,... Si el equipo no dispone de acuerdos (definidos por ellos mismos), tal vez sea buen momento para definirlos.

Recopilar información
En esta fase debemos recopilar toda la información que podamos sobre lo que ha ocurrido durante la itetación. Lo más sencillo será recoger la información relativa a los radiadores de información que nos interesen en esos momentos: tiempos medios de entrega, puntos de historia finalizados, tiempos de ciclo, número de bugs encontrados en producción o en desarrollo, número de "builds rotas", etc.

Por otra parte, nos interesará conocer los sentimientos del equipo. Esta es la parte más complicada de esta etapa puesto que mucha gente no se siente cómoda expresando sus emociones puesto que roza lo personal aunque hablemos sobre las relaciones laborales.

Generar conocimiento
Esta fase implica adentrarse en el porqué de lo ocurrido durante la iteración, tanto en los aspectos positivos como en los negativos. Se deben analizar las interacciones y los patrones de comportamiento habituales. En esta fase se pretende observar "a vista de pájaro" lo que ha ocurrido durante la iteración, intentando ir más allá de las primeras conclusiones profundizando hasta alcanzar la causa raiz de los problemas. De ahí que una técnica muy utilizada en esta fase sea la técnica de los "5-Why" de la que ya hablamos en Los 5 porqués: una técnica para la mejora gradual de procesos.


Decidir qué hacer
Generalmente cuando descubrimos un problema (fase anterior) nos apetece saltar a buscar una solución del mismo, pero es preferible esperar a esta fase para tomar las decisiones de qué hacer. Una vez analizado lo ocurrido durante la iteración deberemos plantear diferentes alternativas de mejoras y experimentos. Recordemos que el objetivo principal de una retrospectiva es facilitar el ciclo de inspección/adaptación por lo que una vez analizados los sucesos a evitar o potenciar toca adaptar la forma de trabajar en la siguiente iteración.

Dependiendo del tiempo que lleve trabajando el equipo en su proceso de mejora continua (kaizen, queda más cool últimamente, ¿verdad?) la lista de experimentos a realizar será más o menos extensa, pero lo importante es evitar incorporar demasiados experimintos simultáneos. Ten en cuanta que si quieres observar si a través de la implantación de determinada práctica se obtiene un buen resultado no se pueden incorporar a la vez 3 o 4 experimientos puesto que no tendré finalmente claro qué es lo que me hizo mejorar o por qué no ha funcionado el experimento. Es común en equipos que comienzan a trabajar con retrospectivas sufrir cierto grado de impaciencia por llevar a cabo cambios... la labor del agile coach deberá ser la de tranquilizar al equipo para introducir los cambios poco a poco, permitiendo de este modo incorporar el aprendizaje validado al finalizar el siguiente ciclo.

Cerrar la retrospectiva
Una vez definido el plan de actuación para la mejora del proceso, queda poco por hacer, aunque no por ello menos importante:

  • No olvides agradecer el esfuerzo llevado a cabo por el equipo tanto en la iteración como durante la retrospectiva.
  • Documenta los resultados y las conclusiones de la reunión. Un correo electrónico al finalizar (en el que se podrán incorporar las fotos sobre del flip chart o cualquier otro material utilizado durante la reunión) bastará para dejar claro los puntos tratados y el experimento a poner en marcha. Recuerda, no hay tiempo que perder... en un día e incluso horas empieza la planificación de la siguiente iteración...


Si quieres profundizar más, te recomiendo la lectura de Agile Retrospectives: Making Good Teams Great, de Esther Derby y Diana Larsen donde encontrarás una explicación más detallada de las diferentes fases de la reunión y un conjunto de actividades orientadas a organizar retrospectivas dinámicas y entretenidas para evitar que se convierta en una reunión de rutina que acabe por aportar poco al equipo.






No hay comentarios:

Publicar un comentario