Scrum es un proceso iterativo e incremental utilizado para la construcción de
productos. Esto significa que el proceso se compone de diferentes interacciones a
las que llamaremos Sprints. Estas interacciones o sprints son fijos en el tiempo y se
recomienda que tengan una duración de 1 a 4 semanas máximo. El objetivo de estos sprints es el de construir un incremento del producto que potencialmente se pudiera
utilizar por parte de los clientes. Por tanto, no nos servirÃa entregar algo que no
pudiéramos utilizar al final del proceso.
Pero para poder empezar a construir un producto (ya sea software o cualquier otro)
antes debe haber una idea de negocio o unas necesidades que cubrir. Por ejemplo,
de nada hubiera servido ponernos a construir Whatsapp si no tenemos claro que
cubrirÃa esta herramienta, en este caso, mejorar la forma en la que se comunican las
personas.
Generalmente a las personas para las que construimos el producto se les llama
Interesados o Stakeholders en inglés. Pueden ser todas las personas que tienen
interés en lo que estamos construyendo. Por ejemplo, si estuviéramos construyendo
una aplicación para un hospital, los interesados podrÃan ir desde el Director General
del Hospital, pasado por Celadores, Enfermeras, Médicos, Supervisores,
Recepcionistas y todas aquellas personas que de algún modo les afecte directa o
indirectamente en su trabajo la construcción de la aplicación.
Una vez tenemos claro que personas son a las que les vamos a aportar valor es
necesario recopilar en un único sitio todas las ideas, funcionalidades y demás
elementos que van a componer nuestro producto. A este conjunto de elementos
ordenados por valor de negocio (arriba los que más valor aportan) se le llama Pila de
Producto o Product Backlog en inglés. A los elementos que componen esta Pila de
Producto se les conoce como PBIs del inglés Product Backlog Items o Elementos de
la Pila de Producto.
Para gestionar toda esta comunicación y gestionar la pila de producto existe un rol
especÃfico llamado Dueño de Producto o Product Owner en inglés, cuyo objetivo es
maximizar la entrega de valor en cada Sprint, es decir, que el equipo construya lo
que le aporte más valor a los Interesados.
Otro rol clave entonces es Equipo de Construcción, encargado de las labores
puramente de construcción del producto. Es el encargado en cada Sprint de
entregar una parte del incremento.
Para que el equipo pueda entregar en cada Sprint un Incremento del producto este
(el equipo de construcción) debe estar enfocado sobre una parte pequeña del
mismo. Ese conjunto de PBIs mas sus tareas técnicas para construirlos se le llama
Pila del Sprint y será necesario para poder comenzar el Sprint. Dentro, como acabamos de comentar, se encuentran los Elementos de la Pila del Producto que el
Dueño de Producto a seleccionado para este Sprint como más importantes junto con
una serie de tareas técnicas que el equipo ha desgranado para cada PBI.
Tanto la selección de los PBIs mas importantes como el desgranado de estos en
tareas técnicas se realiza en la Reunión de Planificación del Sprint o Sprint Planning
en inglés. A esta reunión acuden Dueño de Producto, Equipo de Construcción y
Scrum Master y el resultado de la misma deberÃa ser una Pila del Sprint junto con los
objetivos claros del mismo. Debe quedar claro que en la Reunión de planificación el
Dueño del producto junto con el Equipo de construcción deciden de forma
colaborativa que elementos entrarán en el siguiente Sprint. Ya que puede haber
elementos que aporten mucho valor a los clientes pero que técnicamente sean muy
difÃciles de realizar en este momento. Por tanto, debe ser algo consensuado entre
ambos roles.
Una vez comienza el Sprint de duración fija entre una y cuatro semanas, el Equipo de
construcción comienza a trabajar sobre la Pila de Producto. Para realizar una gestión
de riesgos adecuada y fomentar la comunicación y sincronización entre los
miembros del equipo Scrum introduce la Reunión diaria o Daily Meeting donde el
principal objetivo es detectar problemas e impedimentos que afecten al desarrollo
del Sprint. Esta reunión es una reunión corta de no más de 15 minutos.
Pues esto se repite durante todo el Sprint y el equipo va terminando todos los
elementos de la Pila del Sprint. Por ello, al finalizar este, es necesario revisar todo lo
construido para ver si se ajusta a lo que necesitan los Interesados y asà poder recibir
feedback de estos Interesados. Eso sucede en la Reunión de Revisión o Demo donde
se inspecciona todo lo realizado por el Equipo de construcción. A esta reunión
acuden el Dueño de Producto como representante de los Interesados, además del
Equipo de Construcción y el Scrum Master. También puede acudir cualquier otra
persona que quiera ver lo entregado. SerÃa muy recomendable que hubiera algún
Interesado, aunque esto no siempre es posible.
Después de haberse producido esta reunión para inspeccionar el Incremento
entregado en el Sprint el equipo debe reunirse para inspeccionar el proceso y la
manera en la que han trabajado con el único objetivo de mejorar y detectar posibles
problemas y dar soluciones a los mismos. Esta reunión, sucede después de la
Reunión de revisión y se llama Retrospectiva. Es en la retrospectiva donde
pondremos el foco en las personas y el proceso dejando a un lado el producto en sÃ
que ya lo inspeccionamos en la reunión anterior.
A esta reunión deben acudir todos los miembros del Equipo Scrum, es decir, Dueño
de Producto, Scrum Master y Equipo de Construcción. Es facilitada por el Scrum
Master, aunque en algunas ocasiones puede ser interesante que sea facilitada por
otra persona para que el Scrum Master pueda también participar como un miembro
más el equipo.
Existe una última reunión cuyo objetivo es trabajar sobre los elementos futuros que
entrarán en el Sprint, es decir, trabajar sobre los siguientes elementos de la Pila de
Producto. A esta reunión donde el Equipo Scrum trabaja para refinar esos elementos,
es decir, hacerlos más pequeños, claros y entendibles se le llama Reunión de
Refinamiento.
Para asegurarnos que durante el Sprint se bloquea el menor número de elementos,
contamos con la Definición de Listo que no deja de ser una lista de necesidades que
necesita cada uno de los PBIs para poder empezarlos. Nos evitará desperdicios
durante el Sprint por PBIs o tareas que se quedan bloqueadas o dependientes de
agentes externos.
Por último, para asegurarnos que se terminan todas las tareas y PBIs de cada Sprint
con calidad suficiente contamos con el concepto de Definición de Terminado,
entendido como una lista de acciones que deben cumplirse para dar por terminada
una tarea y/o PBI como podrÃa ser, por ejemplo, que esté subido el código al
repositorio, probado en desarrollo y pre-producción, validado por Marketing, etc.
RESUMEN
Como resumen podemos decir que Scrum está formado por:
- Artefactos, como los elementos con los que trabajamos. Estos son la Pila del producto, Pila del Sprint, el Sprint, el Incremento del producto, Definición de Listo y Definición de Terminado.
- Reuniones, como los eventos donde se reúnen los diferentes roles. Estas reuniones son: Reunión de planificación, Reunión de revisión, Retrospectiva, Reunión diaria y Reunión de refinamiento.
- Roles, existen básicamente para dividir las diferentes responsabilidades que nos encontramos a la hora de construir un producto. El Dueño de producto, encargado de maximizar la cantidad de trabajo que se realizará, es, por tanto, el encargado de mantener la visión del producto y la comunicación con los interesados. El Equipo de Construcción, como encargado de construir el producto, el Scrum Master responsable de cumplir el proceso y preocupado de las personas. Los Interesados como esas personas para las que construimos el producto. Debe añadirse que, al equipo formado por Dueño de Producto, Equipo de Construcción y Scrum Master se le conoce como Equipo Scrum.