Estimando la velocidad en Scrum
La semana anterior comenté sobre los puntos de historia (PH), su significado y utilidad en las estimaciones ágiles, sobre todo en el marco de trabajo Scrum. Como prometí, en la entrega de esta semana me voy a referir a la velocidad del equipo.
¿Qué es la velocidad del equipo en el marco de Scrum?
La velocidad es la magnitud que permite medir el desempeño en un equipo de desarrollo que aplica Scrum. De forma general se define como:
Velocidad = Trabajo / Tiempo
Por Trabajo entendamos la suma de los puntos de historia terminados y por Tiempo entendamos el período en que se realizó ese trabajo, generalmente Sprint.
En dependencia de lo que el equipo haya definido para la equivalencia a los PH, el resultado dará “tamaño” por Sprint u horas por Sprint. De esta forma, si un equipo realizó 6 historias de usuario en un Sprint y estas 6 historias representaban 40 PH, puede decirse que la velocidad del equipo en ese momento es 40 PH por Sprint. De forma análoga se realiza cuando se estima en horas.
De esta forma, la Velocidad se considera un factor de conversión para estimar en cuánto tiempo estará listo el producto. Es muy importante destacar que estimar este tiempo, siempre tendrá un mayor grado de incertidumbre en los equipos novatos o que recién comienzan a utilizar Scrum. El resultado será más exacto cuanta más experiencia acumule el equipo, no solo en temas técnicos, sino también en el trabajo en conjunto usando el marco de trabajo. Un equipo que recién comience a utilizar Scrum, no conocerá su velocidad hasta terminado su primer Sprint, y esta se irá ajustando durante el desarrollo de los siguientes.
¿La duración del Sprint importa?
Por supuesto que sí. Es por ello recomendable desde mi punto de vista, fijar la duración de cada iteración o Sprint en 4 semanas, salvo alguna razón de fuerza mayor. Cuando se tienen Sprint de diferentes tamaños, es recomendable hacer el cálculo de la velocidad por semanas. Esto es variable también en equipos con mucha experiencia.
¿Si estimamos mal y resulta que trabajamos más durante el Sprint, aumenta la velocidad de mi equipo?
En este punto, es necesario aclarar que la velocidad se mide en función de la estimación inicial en el Sprint. Si en total se estimaron 40 PH para 6 historias de usuario a desarrollar, no importa si durante el desarrollo de estas 6 historias de usuario se ha percatado de que en realidad no representaban 40 PH sino 50 PH. Al finalizar el Sprint su velocidad es de 40 PH en ese Sprint. Esta situación le permitirá mejorar su método de estimación y en el siguiente Sprint, lo que debe suceder es que estime de forma más acertada los PH para las historias de usuario a desarrollar.
Es válido aclarar que cuando los PH se hacen coincidir con un número de horas, hay que tener claros estos dos conceptos:
- Tiempo ideal: Se refiere al tiempo en que debe realizarse una tarea sin interrupciones, sin distracciones de ningún tipo. La tarea es realizada de forma continua y la persona dedica toda su atención y concentración a la realización de la misma.
- Tiempo real: Es el tiempo en el que se terminan las tareas. Generalmente equivale a la jornada laboral.
En este caso la estimación se debe hacer siempre teniendo en cuenta el tiempo ideal. Esta es una de las razones por las cuales siempre recomiendo establecer la equivalencia de los PH con “tamaño”, pues será una aproximación más relativa y manejable.
Este blog proporciona información general y discusión sobre el marco de trabajo Scrum, Agile y temas relacionados.