El flujo de trabajo en Scrum: reuniones, roles y artefactos
Clase 24 de 30 • Introducción a las Metodologías Ágiles 2017
¿Qué es Scrum?
Scrum es un framework agil que sigue las indicaciones del manifiesto ágil en cuanto a comunicación, colaboración, software funcional, auto organización, y flexibilidad ante cambios del negocio.
Scrum está construido para ser adaptativo e iterativo en ciclos de trabajo que se llaman sprints, al final de cada sprint los stakeholders (todas las personas interesadas en el proyecto) y el equipo se reúnen para evaluar los incrementos de la funcionalidad del producto.
En resumen Scrum es un conjunto de roles, responsabilidades y reuniones.
Roles
-
Producto Owner: Debe ser una persona con visión, autoridad y disponibilidad. Es la responsable de comunicar constantemente la visión y prioridades al equipo.
-
Scrum master: actúa como facilitador para el Product Owner y el equipo. Remueve cualquier obstáculo que tenga el equipo para lograr las metas del sprint. Esto ayuda al equipo a permanecer creativo y productivo.
-
Team: El equipo es responsable de la realización del trabajo. Un equipo normalmente tiene entre 3 a 9 miembros: desarrolladores, diseñadores, testers (QA), etc.
Reuniones
- Reunión de planeación: Asisten el product owner, scrum master y el equipo.
Se describen las prioridades al equipo, al final de la reunión se tienen dos cosas: una meta para el sprint y un backlog del sprint.
- Reunión de revisión: En cada sprint es requerido un potencialmente incremento del producto.
Así al final de cada sprint, el equipo muestra lo que se completó durante el sprint. Normalmente es un demo de un release o de una nueva característica.
Participan el product owner, el equipo, scrum master y todas las personas involucradas (stakeholders).
- Reunión diaria: cada día del sprint el equipo mantiene una reunión que duran alrededor de 15 minutos, en esta cada miembro del equipo responde tres preguntas:
¿Qué hiciste ayer? ¿Qué vas a hacer hoy? ¿Qué impedimentos tienes?
- Reunión de retrospectiva: No importa qué tan bueno es el equipo, siempre existe oportunidad de mejora. Esta es la última cosa para hacer en el sprint.
En esta reunión se habla de qué cosas comenzar a hacer, qué dejar de hacer y cuáles continuar haciendo.
Artefactos
-
Producto: Al final de un sprint, el producto en el que se trabaja debe estar funcionando y debe contar con nuevas funcionalidades.
-
Backlog de producto: Es una pila de historias de usuario que van a ser añadidas al producto, el product owner le da prioridad a las que tendrán más valor y estas aparecen más arriba en la pila. Estas historias de usuario describen las funcionalidades del producto.
-
Backlog del sprint: Es la lista de tareas que el equipo necesita cumplir para lograr la meta del sprint. También las tareas se ordenan de acuerdo a su prioridad.
Flujo de un Sprint
El modelo Scrum sugiere que el proyecto va a progresar por medio de una serie de sprints, esto mantiene la metodología ágil, los sprints son bloques de tiempo de no más de un mes. Generalmente duran entre 2 a 4 semanas.
Al principio del sprint se hace una reunión de planeación en donde los miembros del equipo determinan la cantidad de items que van a desarrollar y crean el sprint backlog, priorizando las tareas como vimos en el video de priorización.
Una historia de usuario terminada implica que esta haya sido desarrollada, probada e integrada al producto.
Cada día del sprint los miembros asisten a una reunión que dura 15 minutos, en esta cada miembro comparte su prioridad en el día, en qué va a trabajar e identifica obstáculos que le impidan progresar.
Al finalizar el sprint, se tiene una reunión de revisión en la que el equipo demuestra la nueva característica a los stakeholder quienes dan feedback.
Antes de iniciar un nuevo sprint se hace una reunión de retrospectiva, donde todo el equipo se reúne y identifican errores y oportunidades del sprint que terminó.
Todo esto lo podemos representar en una imagen para que sea más claro
De esta forma, organizamos el trabajo y equipos usando Scrum.
Ahora comparte en el sistema de discusiones ¿Cuál ha sido tu experiencia implementando metodologías ágiles o Scrum?