Introducción a Scrum

El Desarrollo ágil de Software a un paradigma de las Metodologías de desarrollo basado en procesos ágiles. Los procesos ágiles de desarrollo de software, conocidos anteriormente como metodologías livianas, intentan evitar los tortuosos y burocráticos caminos de las metodologías tradicionales enfocándose en la gente y los resultados.

El proceso ágil usa un enfoque basado en el Valor para construir software, colaborando con el cliente e incoporando los cambios continuamente.

Como veremos, Scrum es una metodología ágil para la gestión de proyectos.

Temas para leer

Scrum

Scrum es una metodología para la gestión de proyectos. Es considerada una metodología ágil para el desarrollo de software, si bien Scrum puede ser aplicado para la administración de proyectos de prácticamente cualquier índole.

Desarrollo por iteraciones (Sprints)

En Scrum todo el desarrollo ocurre en iteraciones de duración fija. Estas iteraciones de duración fija se denominan Sprint.

La duración del Sprint, de entre 2 y 4 semanas, se establece al comienzo del proyecto, y se mantiene durante toda la vida del mismo. Esto es importante para hacer uso de las métricas que provee Scrum.

Durante cada Sprint el equipo desarrolla una porción del sistema. Lo destacable del Sprint es que este desarrollo incremental es con calidad productiva, y cumple algún requerimiento del usuario (por más chico que sea).

De esta manera, al finalizar cada Sprint se tiene una porción del producto con calidad productiva, que el usuario puede decidir poner en producción.

Roles de Scrum

En Scrum hay 3 roles principales que definen distintas responsabilidades de quienes participan en el proyecto:

  • Dueño del producto, el reponsable y representante de los usuarios, quien decide qué funcionalidad necesita el sistema.
  • Scrum Master, quien lleva adelante el equipo de desarrollo, quitándole todos los obstáculos que les impidan crear software.
  • Los miembros del equipo, quienes trabajan día a día durante el Sprint para crear una porción del producto.

Entonces tenemos a los Miembros del Equipo, el Scrum Master y el Dueño del Producto (o Product Owner), que están comprometidos a construir software de manera frecuente y regular.

El equipo de Scrum

Los miembros del equipo de Scrum son interdisciplinarios, y se comprometen durante todo el Sprint para trabajar exclusivamente en el proyecto. Son quienes estiman las tareas, determinan cuanta funcionalidad podrán entregar en el Sprint.

El backlog del producto

El backlog del producto es el artefacto más importante de Scrum, ya que dirige la construcción. El backlog es un inventario o una lista priorizada de requerimientos funcionales, mejoras, tecnología y corrección de errores que deben incorporarse al producto a través de las sucesivas iteraciones. Representa todo aquello que esperan los clientes, usuarios, y en general los interesados en el producto.

El Dueño del Producto es el responsable del Backlog.

Los elementos del Backlog suelen ser historias de usuario, es decir, funcionalidad del sistema escrita en frases muy cortas, en el lenguaje del usuario.

Reuniones de Scrum

En Scrum existen 4 tipos de reuniones que ocurren durante el Sprint, en distintos momentos.

La primer reunión de Scrum es la llamada Reunión de Planificación. Esta reunión ocurre el primer día del Sprint, y participan el Dueño del Producto, el Scrum Master y los integrantes del Equipo. El Dueño del Producto presenta y prioriza las historias del Backlog del Producto. El Equipo las estima, y decide así cuántas historias podrá completar durante el Sprint que inicia.

La reunión más importante de Scrum es la llamada Scrum Diario. Esta reunión corta, de no más de 15 minutos, ocurre todos los días a la misma hora. Participan todos los Miembros del Equipo y el Scrum Master. En esta reunión cada integrante explica qué hizo el día anterior, qué va a hacer este día, y cuánto le falta para completar dicha tarea.

El último día del Sprint se realiza la reunión de Demostración o Revisión del Sprint. En esta reunión el Equipo muestra el trabajo realizado durante el Sprint, demostrando el producto funcionando en una PC.

También durante el último día del Sprint se realiza la reunión de Retrospectiva del Sprint, con lo que se cierra oficialmente el Sprint. En esta reunión el equipo se fija en cómo fue su trabajo, sus relaciones con otras personas y entre ellos mismos, y proponen mejoras de todo tipo para mejorar el desarrollo en el Sprint que sigue.

Temas para leer

Resumiendo

La idea a este momento es que tengas una noción general de Scrum. En particular, deberías tener en claro que:

  • Scrum es una metodología ágil.
  • El desarrollo se divide en iteraciones fijas llamadas Sprint.
  • El Backlog del Producto contiene todas las historias del Producto.
  • El Sprint se planifica el primer día durante la Planificación del Sprint.
  • Todos los días ocurre un Scrum Diario, donde los integrantes se cuentan su estado.
  • Al finalizar el Sprint se realiza una demostración del producto.
  • Al finalizar el Sprint el equipo realiza la Retrospectiva, para seguir aprendiendo y mejorando el proceso.

Durante los capítulos siguientes iremos profundizando estos conceptos de manera práctica, y veremos más detalladamente cómo llevar adelante una gestión de proyectos con Scrum.

Scrum es una metodología ágil para la gestión de proyectos. En este capítulo veremos los conceptos fundamentales de la metodología.