La palabra Scrum proviene del Rugby.
En el diccionario podemos encontrar la siguiente definición: “Una formación ordenada de jugadores”.
En este juego cada jugador contribuye apoyando a otro para ayudar a que “El Equipo” gane.
Para esto, se observan los movimientos del rival adaptándose a ellos de la forma más rápida posible.
Por otro lado, quien dirige al equipo no puede jugar el partido, pero su rol es importante a la hora de guiarlos sobre cómo manejar la pelota, además es quién empodera a sus integrantes para que puedan tomar las decisiones por sí mismos.
El Scrum Framework es un marco de trabajo utilizado para desarrollar productos complejos.
La base de Scrum es el Pensamiento Lean y el Control Empírico de procesos, es decir, la transparencia, inspección y adaptación.
Scrum es un conjunto de buenas prácticas y reglas que proveen la estructura necesaria para ayudar al equipo a reducir la complejidad técnica, comercial e interpersonal del desarrollo del software en su conjunto y que, también capacita a equipos auto organizados para alcanzar sus objetivos.
El enfoque de Scrum para el desarrollo de productos es iterativo e incremental con múltiples bucles de retroalimentación.
El framework de trabajo Scrum desecha todo tiempo desperdiciado en el desarrollo de características no esenciales, es decir, toma como prioridad trabajar directamente en aquellos requerimientos que tienen mayor valor para el cliente, dejando de lado los procesos que sólo retrasan el proyecto y que, en consecuencia, aumentan los costos.
Es por ello que la metodología Scrum puede ser utilizada como una herramienta de depuración organizativa que detectará cada deficiencia e impedimento que la compañía tenga.
En otras palabras, Scrum expone las disfunciones organizacionales y si la organización elige recomponer estas fallas, se beneficiará y mejorará el desarrollo y la gestión de sus productos.
Scrum reconoce y describe tres roles que forman parte del Scrum Team (equipo pequeño, interfuncional y centrado en la entrega de un producto valioso):
Dueño del Producto (Product Owner): Es el responsable de maximizar el retorno de la inversión (ROI). Esto lo hace con la colaboración del cliente para entender las necesidades del negocio, ordenando la cartera de pedidos con respecto al valor comercial más alto.
Equipo de Desarrollo (Development Team): Su tarea consiste en seguir la visión y dirección del producto establecida por el Product Owner, ayudando a convertirlo en un valioso producto de software.
Todos los miembros de equipo comparten la propiedad del producto y contribuyen por igual a su creación, entrega y soporte, eligiendo cada uno la tarea en la que trabajará (por la que luego se le dará crédito).
Estos equipos autos organizados y multifuncionales, empoderan a los integrantes y promueven la propiedad colectiva de la entrega de valor.
Scrum Master: Quien ocupa este rol, ayuda al Product Owner a alcanzar sus objetivos, al equipo de desarrollo a maximizar su rendimiento, y a la empresa a convertirse en una organización abierta al aprendizaje.
El Scrum Master actúa como un líder al servicio del proceso y como un entrenador del equipo (de la misma forma en que un coach de Rugby no participa del partido dentro del campo de juego, pero educa y entrena al equipo, los ayuda a tomar decisiones por sí mismos y a concentrarse en el juego eliminando impedimentos).
El Framework de Scrum está basado en cinco valores fundamentales, los cuales determinan el éxito de un proyecto:
1 – Enfoque: Enfocarse en entregar primero al cliente un producto con las características de mayor valor.
2 – Apertura: Estar abierto a escuchar los feedbacks de todas las partes interesadas en el proyecto con información sobre el trabajo.
3 – Respeto: Respeto por las personas y su libertad de expresión (El Scrum Framework enfatiza el respeto por las personas. El mayor beneficiario de esto son los miembros del equipo auto organizado de desarrollo, que ayudan a construir y entregar un producto de software de calidad).
4 – Coraje: Enfrentar el statu quo, el mando de arriba hacia abajo y la jerarquía.
5 – Compromiso: Compromiso con el cliente a través de productos valiosos y de calidad.
Organización jerárquica de arriba hacia abajo: La jerarquía ralentiza el flujo de información dentro de la organización, lo que resulta en una toma de decisiones más lenta. Scrum, por el contrario, requiere de una rápida toma de decisiones para poder adaptarse a situaciones cambiantes.
Pensamiento predictivo: La gestión tradicional de proyectos Waterfall se basa en el pensamiento predictivo y en seguir la dirección prevista, mientras que el Scrum Framework se construye sobre la base de inspeccionar los datos/hechos y adaptar la dirección en consecuencia a ello.
Seguir un plan: Los tradicionales gerentes de programa y de proyecto, pasan meses planeando un proyecto, y los arquitectos pasan semanas y meses diseñando el sistema y analizándolo. La realidad en el mundo del desarrollo de software es que en el comienzo del desarrollo de cada producto, los usuarios y los Gerentes de Producto, tienen poca idea del resultado final que desean obtener. Por otro lado, a medida que el trabajo avanza aparecen nuevas percepciones y datos que ayudan a determinar la dirección del producto. Por lo tanto, los planes que se hacen por adelantado no son válidos y deben ser cambiados. Es aquí donde el Scrum Framework fomenta una mínima planificación pero en periodos frecuentes y regulares (con una reunión diaria de sprint para revisar el proceso). Esto permite que la retroalimentación del usuario, los datos y la realidad moldeen el curso futuro del producto.
Acortar calidad para cumplir con las fechas: La presión por cumplir con plazos conlleva a reducir la calidad del producto – aún sin saberlo – . Por ello, Scrum divide la entrega del producto en incrementos más pequeños, generalmente de 2 semanas (luego de cada sprint, se entrega un avance al cliente para su retroalimentación).
Scrum será útil siempre que se acepten sus valores y se confíe en el trabajo en equipo para la creación de productos de valor. Es importante implementar correctamente los roles, herramientas, eventos y reglas del Scrum Framework para beneficiarse realmente de él.