¿Qué es y cómo aplicar Scrum?
Para poder hablar sobre Scrum primero debemos conocer qué es una metodología ágil, esta metodología busca reaccionar rápidamente sobre el cambio, ser muy flexible pero sin sacrificar la estabilidad de un proyecto, a diferencia de la forma de trabajar tradicional en donde se planifica todo a detalle y esto consume gran parte del proyecto en sí, la ejecución comienza después y si algo cambia en el trayecto, el plan queda obsoleto y nuevamente se requiere invertir tiempo para modificar el plan.
¿Qué es Scrum?
Scrum es un marco de trabajo, no es una metodología (una metodología es un conjunto de reglas), que te da pautas pero no te obliga a seguirlo al pie de la letra, por lo que una ventaja de Scrum es que puedes tomar solo las partes que necesites y adaptarlas a tu proyecto.
Scrum se basa en el empirismo y el pensamiento Lean. El empirismo afirma que el conocimiento proviene de la experiencia y de la toma de decisiones con base en lo observado. El pensamiento Lean reduce el desperdicio y se enfoca en lo esencial.
Otra gran ventaja de Scrum frente a otras metodologías es que te entrega algo funcional en poco tiempo, por lo que no se trate de: “te vamos a entregar el proyecto terminado en dos años”, sino que te puede decir: “en dos meses te entregamos la primera funcionalidad terminada” y de esa manera se va partiendo el proyecto en pedazos y permite observar avances.
Roles de Scrum
Para aplicar Scrum necesitamos conocer qué roles componen al equipo de trabajo y las funciones que realizan. Entender claramente la función de cada uno de estos tres roles permite trabajar mejor, tener menos errores y conflictos, y alcanzar los objetivos establecidos.
1. Product Owner
Como tal un Product Owner no es el dueño del producto, sino que es el contacto entre el equipo que desarrolla y los tomadores de decisión (los clientes internos que están dentro de la empresa y que saben qué cosas se necesitan tener y lo que debe hacer el producto).
El Product Owner filtra los requerimientos y prioriza las tareas para que el equipo de desarrollo pueda entregar algo funcional.
2. Scrum Master
El Scrum Master es un experto en Scrum y se encarga de que el equipo de desarrollo trabaje según las guías de Scrum, los ayuda y les facilita el trabajo. Pero no es el jefe del proyecto, no le da órdenes al equipo sobre qué hacer, ni es un gestor.
El equipo debe ser autosuficiente, y el Scrum Master se asegura que las ceremonias de Scrum se realicen.
3. Equipo de desarrollo
Es un equipo de profesionales que se encarga de crear el producto, son personas con mucha capacidad técnica, son los programadores, desarrolladores, testers, etc. Y están comprometidos en crear un incremento utilizable del producto.
Deben adaptarse al cambio y tener mucha comunicación con el resto del equipo. Si un miembro está trabajando de manera tradicional, cuando hay un cambio y no sabe reaccionar, no va a ayudar al equipo, así que no basta con que sea bueno técnicamente en un equipo de Scrum, sino que también tenga las capacidades mentales y organizativas para adaptarse al cambio en un entorno de cambio.
El Product Owner, el Scrum Master y el equipo de desarrollo conforman al Scrum Team, el cual debe ser lo suficientemente pequeño como para seguir siendo ágil y lo suficientemente grande como para completar un trabajo significativo dentro de un Sprint.
También lee: El rol de los desarrolladores en la transformación digital
Eventos de Scrum
Dentro de Scrum existen los llamados “Eventos de Scrum”, cada uno de ellos está destinado a aumentar la transparencia, de modo que el equipo pueda inspeccionar de manera confiable su progreso y adaptar sus planes para alcanzar el resultado deseado. Estos eventos se clasifican en cinco, a continuación explicamos cada uno:
1. Sprint
El Sprint es el latido del corazón de Scrum. Se puede ver como un contenedor para todos los bucles de inspección y adaptación de Scrum. El equipo ofrece una nueva iteración del producto de trabajo en cada Sprint. El Sprint dura como máximo un mes calendario, los sprints más cortos son extremadamente comunes.
2. Planificación del Sprint
Al comienzo del Sprint, el equipo Scrum se reúne para la Planificación del Sprint para evaluar qué elementos de la parte superior del Product Backlog pueden incorporar al Sprint.
El equipo elabora un objetivo de Sprint, un objetivo de alto nivel que se logrará mediante la entrega de los artículos seleccionados de Product Backlog. El Objetivo del Sprint ayuda a garantizar una comprensión compartida del propósito del trabajo en el próximo Sprint.
Luego crean el Sprint Backlog, que es el plan del equipo de desarrollo sobre cómo entregarán el nuevo Product Increment.
Una vez que se completa la planificación del Sprint, el equipo de desarrollo comienza su trabajo que continúa hasta el final del Sprint.
3. Daily Scrum
Una vez al día, se reúnen para inspeccionar el plan y hacer las adaptaciones necesarias, por eso es que esta reunión se denomina Daily.
4. Revisión de Sprint
Cuando se completa el Sprint, se entrega un incremento de producto liberable. Inspeccionan este incremento, junto con otras partes interesadas en la reunión de Revisión de Sprint y adaptan sus planes futuros para el producto, actualizando el Product Backlog.
5. Retrospectiva
Finalmente, el equipo Scrum realiza una Retrospectiva de Sprint para inspeccionar el sistema de trabajo en sí, y realiza adaptaciones para ser más efectivos en futuros Sprints.
Los equipos Scrum deben tener longitudes de Sprint consistentes, los sprints proporcionan un ritmo al trabajo del equipo y del negocio.
De manera general esto es Scrum y su forma de aplicarlo, si quieres conocer más a detalle cada ceremonia o artefacto, te invito a leer la guía oficial de Scrum.
Si quieres recibir más información del Mundo de TI, suscríbete a nuestra Dosis de TI.