Metodología Scrum: Roles, Elementos y Artefactos para el Desarrollo Ágil de Software

Scrum es un marco de trabajo ligero que ayuda a personas, equipos y organizaciones a generar valor a través de soluciones adaptables para problemas complejos. Facilita la entrega de productos de máximo valor de manera productiva y creativa.

Características de Scrum

  • Ligero
  • Fácil de entender
  • Difícil de dominar

Scrum no es un proceso o una técnica para construir productos; es un marco de trabajo dentro del cual se pueden emplear varias técnicas y procesos. Scrum muestra la eficacia relativa de las prácticas de gestión de producto y las prácticas de desarrollo, permitiendo así la mejora continua.

Teoría de Scrum

Scrum se basa en la teoría de control de procesos empírica o empirismo. El empirismo asegura que el conocimiento procede de la experiencia y de tomar decisiones basándose en lo que se conoce. Scrum emplea un enfoque iterativo e incremental para optimizar la predictibilidad y el control del riesgo.

Tres pilares soportan toda la implementación del control de procesos empírico:

  • Transparencia
  • Inspección
  • Adaptación

Transparencia

Los aspectos significativos del proceso deben ser visibles para aquellos que son responsables del resultado. La transparencia requiere que dichos aspectos sean definidos por un estándar común, de tal modo que los observadores compartan un entendimiento común de lo que se está viendo.

Inspección

Los usuarios de Scrum deben inspeccionar frecuentemente los artefactos de Scrum y el progreso hacia un objetivo, para detectar variaciones. Su inspección no debe ser tan frecuente como para que interfiera en el trabajo. Las inspecciones son más beneficiosas cuando se realizan de forma diligente por inspectores expertos, en el mismo lugar de trabajo.

Adaptación

Si un inspector determina que uno o más aspectos de un proceso se desvían de límites aceptables, y que el producto resultante no será aceptable, el proceso o el material que está siendo procesado deben ser ajustados. Dicho ajuste debe realizarse cuanto antes para minimizar desviaciones mayores.

Roles en Scrum

Product Owner (Propietario del Producto)

Representa a todos los interesados en el producto final. Sus áreas de responsabilidad son:

  • Financiación del proyecto
  • Requisitos del sistema
  • Retorno de la inversión del proyecto
  • Lanzamiento del proyecto

Equipo de Desarrollo

Los Equipos Scrum son autoorganizados y multifuncionales. Los equipos autoorganizados eligen la mejor forma de llevar a cabo su trabajo y no son dirigidos por personas externas al equipo. Los equipos multifuncionales tienen todas las competencias necesarias para llevar a cabo el trabajo sin depender de otras personas que no son parte del equipo. El modelo de equipo en Scrum está diseñado para optimizar la flexibilidad, la creatividad y la productividad.

Los Equipos Scrum entregan productos de forma iterativa e incremental, maximizando las oportunidades de obtener retroalimentación. Las entregas incrementales de producto “Terminado” aseguran que siempre estará disponible una versión potencialmente útil y funcional del producto.

Scrum Master

El Scrum Master es el responsable de asegurar que Scrum es entendido y adoptado. Los Scrum Masters hacen esto asegurándose de que el Equipo Scrum trabaja ajustándose a la teoría, prácticas y reglas de Scrum. El Scrum Master es un líder que está al servicio del Equipo Scrum. Ayuda a las personas externas al Equipo Scrum a entender qué interacciones con el Equipo Scrum pueden ser de ayuda y cuáles no. El Scrum Master ayuda a todos a modificar estas interacciones para maximizar el valor creado por el Equipo Scrum.

Elementos de Scrum

Los elementos centrales del ciclo ágil Scrum son:

  • Product Backlog (Pila del Producto): Lista de funcionalidades que necesita el cliente.
  • Sprint Backlog (Pila del Sprint): Lista de tareas que se realizan en un Sprint.
  • Incremento: Parte del sistema desarrollada en un Sprint.

Sprint

Es el periodo de tiempo durante el que se desarrolla un incremento de funcionalidad. Constituye el núcleo de Scrum, que divide de esta forma el desarrollo de un proyecto en un conjunto de pequeñas “carreras”.

  • Duración máxima: 30 días.
  • Durante el Sprint no se puede modificar el trabajo que se ha acordado en el Backlog.
  • Sólo es posible cambiar el curso de un Sprint, abortándolo, y sólo lo puede hacer el Scrum Master si decide que no es viable por alguna razón.

Reunión de Planificación de Sprint (Sprint Planning Meeting)

Reunión del equipo con duración máxima de 1 día. Deben acudir todos los miembros del equipo, y se trabaja en conjunto con el Product Owner.

Moderada por el Scrum Master, quien deberá verificar:

  • Están determinados los recursos posibles.
  • Hay un Product Backlog preparado y válido.
  • El equipo conoce las tecnologías empleadas y el negocio del producto.

Se determinan las funcionalidades prioritarias del cliente. Se realiza la descomposición en tareas, estimación y asignación. Se crea el plan del Sprint y el Sprint Backlog.

Se calcula la velocidad del equipo. Se estiman esfuerzos mediante el método de Planning Poker o su variante Fibonacci (0, 1/2, 1, 2, 3, 5, 8, 13, 21, ?).

El trabajo a realizar durante el Sprint se planifica en la Reunión de Planificación de Sprint. Este plan se crea mediante el trabajo colaborativo del Equipo Scrum completo.

La Reunión de Planificación de Sprint tiene un máximo de duración de ocho horas para un Sprint de un mes. Para Sprints más cortos, el evento es usualmente más corto. El Scrum Master se asegura de que el evento se lleve a cabo y que los asistentes entiendan su propósito. El Scrum Master enseña al Equipo Scrum a mantenerse dentro del bloque de tiempo.

La Reunión de Planificación de Sprint responde a las siguientes preguntas:

  • ¿Qué puede entregarse en el Incremento resultante del Sprint que comienza?
  • ¿Cómo se conseguirá hacer el trabajo necesario para entregar el Incremento?

Artefactos de Scrum

Los artefactos de Scrum representan trabajo o valor en diversas formas que son útiles para proporcionar transparencia y oportunidades para la inspección y adaptación. Los artefactos definidos por Scrum están diseñados específicamente para maximizar la transparencia de la información clave, que es necesaria para asegurar que todos tengan el mismo entendimiento del artefacto.

Velocidad, Trabajo y Tiempo en Scrum

Velocidad, trabajo y tiempo son las tres magnitudes que mide la gestión de proyectos ágil, y componen la fórmula de la velocidad, definiéndola como: cantidad de trabajo realizada por unidad de tiempo.

Velocidad = Trabajo / Tiempo

Así, por ejemplo, se puede decir que la velocidad de un equipo de 4 miembros es de 20 puntos por semana o de 80 puntos por Sprint.

Tiempo

Para mantener un ritmo de avance continuo, el desarrollo ágil emplea dos tácticas posibles: incremento iterativo, o incremento continuo. El avance a través de incrementos iterativos mantiene un ritmo continuo basado en pulsos de Sprints. Por esta razón emplea normalmente el Sprint como unidad de tiempo, expresando la velocidad como trabajo o tareas realizadas en un Sprint.

Trabajo

Medir el trabajo puede ser necesario por dos razones: para registrar el ya hecho, o para estimar anticipadamente el que hay que realizar. En ambos casos se necesita una unidad, y un criterio objetivo de cuantificación.

Trabajo ya realizado

Medir el trabajo ya realizado no entraña especial dificultad. Se puede hacer con unidades relativas al producto (p. ej. líneas de código) o a los recursos empleados (coste, tiempo de trabajo…). Para medirlo basta contabilizar lo ya realizado con la unidad empleada: líneas de código, puntos de función, horas trabajadas, etc.

Medir el trabajo realizado para estimar el porcentaje de trabajo realizado NO es una métrica Ágil.

Velocidad

Velocidad es la magnitud determinada por la cantidad de trabajo realizada en un periodo de tiempo. En un marco académico de Scrum, es la cantidad de trabajo realizada por el equipo en un Sprint. Así, por ejemplo, una velocidad de 150 puntos indica que el equipo realiza 150 puntos de trabajo en cada Sprint.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.