w Cuando hablamos del método GDD para construir sitios web con una gran rapidez y agilidad, hicimos mención, a lo largo de varios artículos, del método de trabajo que nosotros usamos para potenciar la agilidad y la consecución de los objetivos previstos. Hoy vamos a profundizar un poco más en el método Srum, explicando en qué consiste un Sprint.
Orígenes del Scrum
El término Scrum (traducido del inglés como melé) fue acuñado y definido por Ikujiro Nonaka e Hirotaka Takeuchi en los años 80, cuando las principales empresa de desarrollo tecnológico empezaban a dominar el mercado y a definir formas de trabajo. Ambos publicaron en 1986 en la Harvard Business Review el artículo “El nuevo nuevo juego para el desarrollo de productos”. Así abrieron la puerta al Scrum.
El avance de las formaciones de las melés en los partidos de rugby, inspiró a Nonaka y Takeuchi para bautizar una nueva forma de trabajar que ya venía dándose en muchas empresas tecnológicas como Honda, Canon y Fuji-Xerox.
«El enfoque de las ‘carrera de relevos’ para el desarrollo de productos entra en conflicto con el objetivo de obtener la máxima velocidad y flexibilidad. En su lugar un enfoque como el rugby (donde el equipo intenta avanzar como equipo, enviando el balón hacia atrás y luego avanzar) sirve mejor al tipo de desarrollo que necesitamos hoy en día». Por eso Scrum y equipo auto-organizado van siempre de la mano.
En 1993, Jeff Sutherland y su equipo en Easel Corporation adaptaron la metodología Srcum al desarrollo del software (Software Development Process). El método Scrum estaba ahora orientado a objetos, a un control de procesos empírico, desarrollo iterativo e incremental, a una mejora continua de la productividad, así como al desarrollo de sistemas complejos y ágiles.
Así pues, hoy en día el Scrum se aplica a cualquier proyecto que necesite de una metodología ágil y de una gestión muy flexible orientada a objetivos y resultados concretos. El Scrum es perfecto para desarrollar software o construir webs, pero también para fabricar coches e incluso edificar casas.
Qué es un Sprint
El corazón de Scrum es un Sprint, es un intervalo prefijado de tiempo (no inferior a una semana ni superior a un mes) durante el cual se crea un incremento de producto "Hecho o Terminado" utilizable, potencialmente entregable. A lo largo del desarrollo de construcción hay Sprints consecutivos de duración constante.
En realidad cada Sprint se puede considerar un mini-proyecto dentro de un proyecto mayor. Al igual que los proyectos, los Sprint se utilizan para lograr algo. Cada Sprint cuenta con un objetivo (lo que se va a construir o desarrollar en ese periodo), un método y un plan flexible que guía el proceso.
Etapas de desarrollo de los Sprint
Cada Sprint se desarrolla en 5 etapas:
1. Reunión de planificación de Sprint
La reunión de planificación del Sprint requiere de la asistencia de todo el equipo y tiene una duración variable dependiendo de la longitud del Sprint, (de una semana a un mes).
En esta reunión se define el incremento de producto "entregable" que se llevará a cabo, la forma en que el equipo desarrollará el incremento y el trabajo asignado a cada uno.
Al final de la reunión cada miembro el equipo sabe en qué trabajará, qué se espera que haga y la forma en que lo hará posible. Las reuniones de planificación recogen las ideas y aportaciones al proyecto de cualquiera de sus integrantes, de manera que el resultado final de la reunión no es una imposición del "jefe" o del departamento más importante, sino una suma de acuerdos con la que todos los participantes están implicados al mismo nivel aunque con papeles diferentes (como en la melé).
2. El Scrum Diario
Es una pequeña reunión de no más de 15 minutos de duración y que normalmente se desarrolla de pie a primera hora de la mañana.
Su objetivo es que el equipo de desarrollo se sincronice. Primero, cada miembro expone el trabajo realizado en las 24 horas anteriores, si ha habido algún problema o imprevisto que se haya interpuesto en la consecución del objetivo diario y el trabajo que se prevé desarrollar en el día.
El Scrum Master o facilitador es la persona que se encarga de eliminar los escollos que se hayan podido interponer en el trabajo de los restantes integrantes del equipo.
Los Scrums diarios mejoran la comunicación, evitan otras reuniones, identifican y eliminan obstáculos para el desarrollo, destacan y promueven la rápida toma de decisiones, y mejoran el nivel de de conocimiento del proyecto del equipo de desarrollo. Esta es una reunión clave de inspección y adaptación.
3. Trabajo de desarrollo durante el Sprint
Cuando el sprint está en curso, debemos asegurar que:
- No se realizan cambios que afectan al objetivo del Sprint;
- No disminuyen los objetivos de calidad, y
- El Alcance podrá aclararse y re-negociarse entre el propietario del producto y el Equipo de Desarrollo a medida que se va aprendiendo.
Cuando un Sprint es demasiado largo, la definición de lo que se está construyendo puede cambiar, puede aumentar la complejidad y puede aumentar el riesgo. Los Sprints permiten previsibilidad al garantizar la inspección y la adaptación de los avances hacia una meta de por lo menos cada mes de calendario.
4. Revisión del Sprint
Se lleva a cabo al final del Sprint, para inspeccionar el incremento y adaptar, si es necesario, el Product Backlog. El Equipo Scrum y el cliente colaboran durante la revisión de lo que se hizo en el Sprint. Esta es una reunión informal, y la presentación del incremento está destinada a obtener retroalimentación y fomentar la colaboración. En función de las aportaciones del cliente, pueden recogerse cambios del Product Backlog para introducirlos en el siguiente Sprint.
La revisión de Sprint está dirigida por el Projet Owner, que se encarga de velar por el cumplimiento de lo establecido en la estrategia evitando modificaciones en los objetivos o elementos esenciales del proyecto que podrían poner en peligro su consecución.
El resultado de esta reunión es un Product Backlog revisado que define los ítems del Product Backlog de mayor valor o probables para el siguiente Sprint.
5. Retrospectiva del Sprint
Es la oportunidad para el Equipo Scrum de inspeccionarse a sí mismo y crear un plan de mejoras para ejecutar durante el siguiente sprint. El propósito de la retrospectiva de Sprint es:
- Revisar cómo fue el último Sprint en lo que respecta a las personas, relaciones, procesos y herramientas;
- Identificar y ordenar los temas principales que salieron bien y las potenciales mejoras, y
- Crear un plan para la implementación de mejoras con respecto a cómo el Equipo Scrum hace su trabajo.
Y después de esta última reunión, volvemos a comenzar el ciclo una vez cumplido el período de tiempo marcado para el Sprint.
Como ves, el Scrum es un método de trabajo que permite sacar el potencial máximo de cada uno de los miembros del equipo al tiempo que implica a todos los participantes en la consecución de un objetivo mayor que la realización de su trabajo individual. Comprobar la forma en que nuestro esfuerzo y aportaciones redundan en un resultado de una calidad y agilidad exponencialmente superior a la conseguida con cualquier otro método son la motivación para ingresar al siguiente Sprint mejorados individualmente y como equipo para asumir retos cada vez mayores.
¿Aplicas el Scrum en tu empresa? ¿Lo conocías? ¡Déjanos tus comentarios, estamos deseosos de saber cómo os resulta a vosotros!