Metodología SCRUM (desarrollo de software a la medida)

Siempre que vayamos a utilizar una herramienta, una aplicación o un servicio informático, primero debemos conocer su esencia y propósito. Entender cómo surgen las ideas que están detrás, porque nos ayudarán a comprender mejor cómo funciona e incluso adelantarnos a cualquier duda de su uso que nos pueda surgir.

A principios del siglo XXI, el éxito del uso en este tipo de herramientas informáticas, específicamente en los sistemas, es la metodología empleada para desarrollarlos, con la finalidad de aumentar la automatización, operación y productividad en los procesos de las organizaciones.

Con las nuevas tecnologías de la información, las metodologías de trabajo para proyectos informáticos a gran escala, permiten que sus procedimientos sean ágiles de gestión dinámica y muy coordinada de los procesos, para desarrollar sistemas a un nivel óptimo el uso de los recursos.

SCRUM es una metodología en la que se aplican de manera regular un conjunto de buenas prácticas para trabajar colaborativamente, en equipo, y obtener el mejor resultado posible de un proyecto. Estas prácticas se apoyan unas a otras y su selección tiene origen en un estudio de la manera de trabajar de equipos altamente productivos.

La base de SCRUM son las iteraciones (sprint): ciclos durante los cuales los miembros del equipo completan tareas con el objetivo de poder mostrar al cliente novedades en el producto. Al final de cada ciclo se muestran las novedades al cliente, se le permite pedir cambios y el equipo debate sobre cómo se ha desarrollado el ciclo, posibles mejoras y planifican el siguiente ciclo.

SCRUM consta de una serie de eventos, roles y documentos. Entre los eventos encontramos reuniones periódicas (demostración, retrospectiva y planificación) y reuniones diarias de 15 minutos (team meeting o planificación diaria). Entre los roles tenemos al cliente o jefe de producto, los miembros del equipo (no importa el rol técnico) y el facilitador o SCRUM-Master, siendo este último un rol clave para aplicar correctamente esta metodología. Para finalizar, contamos con un tres de documentos básicos, uno donde se especifican los requisitos del producto (product backlog o listado de prioridades), otro documento donde aparecen los requisitos para la iteración actual (sprint backlog) y una serie de gráficas que nos permiten apreciar el rendimiento del equipo y el estado del producto (burn down chart).

Los equipos que aplican SCRUM se pueden adelantar a los cambios requeridos por el cliente, conocen sus expectativas y trabajan enfocados en cumplirlas. Al poder emplear toda su creatividad en resolver problemas y ofrecer nuevas soluciones o funcionalidades son equipos altamente motivados. Además, la flexibilidad evita el estrés que sufren muchos equipos por no cumplir con los tiempos preestablecidos. Todo esto deriva en productos de gran calidad evitando excesivos sobrecostes y retrasos.

Aunque se emplea principalmente en el desarrollo de aplicaciones informáticas, SCRUM ha coadyuvado con éxito a la gestión de campañas publicitarias y también en entornos industriales.

Estos son algunos beneficios que brinda la metodología SCRUM:

  1. El cliente fija sus expectativas al indicar el valor que le aporta cada requisito del proyecto y cuando espera que esté completado.
  2. El cliente podría utilizar los resultados más importantes del proyecto antes de que esté finalizado por completo.
  3. De manera regular el cliente puede redirigir el proyecto en nuevas prioridades, o según los cambios en el mercado.
  4. Regularmente, el cliente maximiza el retorno de la inversión del proyecto.
  5. Desde el inicio de cualquier proyecto el equipo tiene que atender y gestionar la solución a los problemas que puedan presentarse en una entrega de proyecto, de esta manera es posible resolverlos de manera anticipada.
  6. Los miembros del equipo sincronizan su trabajo diariamente, esto ayuda a resolver que se puedan presentar a otros miembros del equipo durante la iteración.
  7. Las personas trabajan más enfocadas y de manera más eficiente cuando hay una fecha límite a corto plazo para entregar un resultado al que se han comprometido.
  8. La estimación de esfuerzo y la optimización de tareas para completar un requisito es mejor si la realizan las personas que van a desarrollar el requisito, dadas sus diferentes especializaciones, experiencias y puntos de vista.
  9. Los resultados y esfuerzos del proyecto se miden en objetivos y requisitos entregados al negocio.
  10. Las personas están más motivadas cuando pueden usar su creatividad para resolver problemas y cuando pueden decidir organizar su trabajo.

Por ello, es importante conocer y capacitarse para utilizar las herramientas informáticas de trabajo, explotar su uso para alcanzar niveles de productividad y desempeño en los procesos empleados en cada organización.

Mtro. Rolando Cepeda