lunes, diciembre 01, 2008

Contratiempos en Scrum

Hace unos días mi jefe tuvo su demo con algunos de los esféricos implicados más o menos directamente en el sistema del que os he hablado álguna vez, sin que el equipo haya estado presente.

La verdad es que ésta es la última irregularidad de las que han sucedido en el último sprint. Desde que se cometió la primera de ellas, en el equipo nos hemos sentido como esos corredores que tras un pequeño tropiezo, con cada paso se desequilibran más y con cada paso intentan recuperar el equilibrio de nuevo.

resize.php

Así por resumir, ésta es la lista de pasos tropezantes re-equilibrantes:

  • Tras finalizar el segundo sprint, la demo se retrasó cerca de una semana (la demo debe celebrarse justo el día después del final del sprint).
  • Aprovechando que había una semana de por medio, el product owner (el representante del usuario  en el proyecto) incluyó funcionalidad por motivos esencialmente políticos (o sociológicos, como dirían DeMarco y Lister), y no por el valor añadido al producto. El esfuerzo empleado en ello no ha sido visible ni en la estimación, ni en el burndown chart.
  • La fecha de la demo cambió dos veces en el transcurso de cinco días, lo que influyó aún más en la desorientación del equipo.
  • La demo se llevó a cabo por la tarde, lo que impidió realizar el retrospective a continuación (el retrospective debe realizarse justo después de la demo).
  • Como consecuencia del punto anterior, el retrospective se tuvo que dividir en dos sesiones de una hora y media cada una (más descoloque).
  • El sprint planning meeting se celebró un viernes, lo que redujo en tres horas el tiempo disponible para la estimación. El cuarto sprint empezó el lunes siguiente, pero sin tener todas las historias estimadas (hubo que hacerlo ese mismo lunes).
  • La duración del tercer sprint (el que hemos acabado de terminar) se fijó en siete días laborales. Este tiempo, fijado una vez más por motivos político-sociológicos, nos ha resultado muy incómodo.

El caso es que con Scrum, hay que tener una cosa muy clara (y ahí estoy totalmente de acuerdo con Jeff Sutherland): el método es muy sencillo, con pocas normas para nada complicadas; pero si quieres hacer Scrum, debes seguirlas estrictamente. Mientras esto sucedió en nuestro proyecto, las cosas fueron estupendamente. El incumplimiento de una norma un día y las que vinieron después provocó que las cosas fueran empeorando. Seguir Scrum a medias no es hacer Scrum.

— Ok, Wil, pero seguro que hay algo positivo...

¡Por supuesto! Lo positivo es que:

  • Todos esos asuntos aparecieron en el retrospective (como ya comenté) así que somos conscientes de ellos y estamos tomando las medidas para corregirlos.
  • A pesar de las dificultades, seguimos fieles al método. Incluso la funcionalidad que fue inyectada fuera del sprint se trató como si hubiera estado incluida, llevando a cabo los daily scrum, estimando cada tarea, etc. Todos los miembros del equipo sentimos (y sabemos) que Scrum funciona, y luchamos por que continúe funcionando.
  • Hemos aprendido que nuestra duración óptima de sprint se encuentra alrededor de las tres semanas (antes aprendimos que los sprints más largos son mejores al principio, para estabilizar el proyecto).

¡Estamos más animados que nunca! Buscando remedio a los problemas, enfocados en hacer avanzar el trabajo, pero de forma ordenada, no de cualquier forma.

2 comentarios:

Miriam dijo...

El equipo aprende de los errores, no solo de los suyos propios, sino también de los errores que cometen otros. Eso es señal de buena salud.

Ahora bien, cuidado con eso que se lee entre lineas: "el equipo /+/ el jefe". El jefe es parte del equipo. Los errores que comete el jefe, los comete el equipo. Sin jefe no hay equipo. Sin equipo no hay jefe.

Y es que ¿alguien le está diciendo a esa parte del equipo que es el jefe en qué principios del scrum se equivoca?

Introspectre dijo...

@Miriam :-) Tienes toda la razón del mundo. Y sí, la información acerca de esos fallos le está llegando correctamente al Product Owner, y hacemos lo posible para que entienda en qué consisten, pero en su mente juegan quizá otras fuerzas distintas, porque no parece que las acepte de buen grado. Quizá no sabemos toda la (su) película, pero ¿confía en nosotros para contarnos su guión? Hmmm...