El mundo cambia constantemente, las empresas exigen nuevas formas de realizar proyectos que permitan obtener el máximo rendimiento a cada minuto de trabajo y que sean capaces de producir resultados solventes sin dar muchas vueltas, de esta necesidad surge SCRUM.
SCRUM es una metodología muy utilizada en Proyectos de Desarrollo de Software y también en otras profesiones o áreas. Según muchos especialistas de esta metodología, es óptima para equipos de trabajo de hasta 8 personas, aunque hay empresas que han utilizado SCRUM con éxito con equipos más grandes.
Yo diría que para el 90% de los proyectos y empresas, es una metodología válida, pero no es una metodología válida al 100%. Es más, no hay metodología mejor que otra ni válida al 100% para todas las personas y empresas. Scrum es, por lo tanto, una metodología más de las muchas que hay, y ésta en concreto, se basa en la filosofía del desarrollo ágil que fue expuesto por dos japoneses (Takeuchi y Nonaka) alrededor del año 1986.
En que consiste exactamente
- En SCRUM se trabaja en ciclos cortos de trabajo (de dos a cuatro semanas).
- Se realizan reuniones periódicamente, con un máximo de 15 minutos.
- El propio cliente se involucra para ver el trabajo desarrollado, y proponer cambios o modificaciones, esto proporciona una flexibilidad natural en favor de lo que aporta más valor al negocio en cada momento.
- Scrum evita la burocracia y la generación documental, no es que no se deba o no se pueda documentar, si no que con SCRUM no se exige documentar nada para iniciar un proyecto.
- la idea principal es la de ponerse a trabajar prácticamente desde el primer momento y empezar a sacar frutos de ese trabajo para que el cliente vaya viendo los avances y se quede satisfecho con lo que se está haciendo y cómo se está haciendo.
Existen dos aspectos fundamentales a diferenciar:
Los Actores son los responsables que ejecutan las acciones.
- El Dueño del Producto (Product Owner) conoce y marca las prioridades del proyecto o producto.
- El Director SRCUM (SCRUM Master) es quien asegura el seguimiento de la metodología guiando las reuniones y ayudando al equipo ante cualquier problema que pueda aparecer.
- El Equipo SCRUM (SCRUM Team) son las personas responsables de implementar la funcionalidad o funcionalidades elegidas por el Dueño del Producto.
- Usuarios o Clientes, son los beneficiarios finales del producto, y son quienes, viendo los progresos, pueden aportar ideas, sugerencias o necesidades.
Las Acciones forman parte de un ciclo iterativo repetitivo, por lo que el mecanismo y forma de trabajar que a continuación se indica, tiene como objetivo minimizar el esfuerzo y maximizar el rendimiento en el desarrollo.
- La lista de tareas (Product Backlog) son todas las tareas, funcionalidades o requerimientos a realizar, el Dueño del Producto es quien se encarga de marcar las prioridades, y es al fin y al cabo, la persona que mantiene y actualiza dado el caso, la lista de tareas.
- La lista de tareas de la iteración (Spring Backlog) es el subconjunto/requisitos de la lista de tareas (Product Backlog) seleccionado para la iteración actual y su plan de tareas de desarrollo, esta lista permite ver las tareas donde el equipo está teniendo problemas y no avanza, con lo que se permite tomar decisiones al respecto.
- Reunión Diaria SCRUM (Dayly SCRUM Meeting) es una tarea iterativa que se realiza todos los días que dure La lista de tareas Iterativa (Spring Backlog) con el equipo de desarrollo, se trata de una reunión operativa, informal y ágil, de un máximo de 15 minutos, en la que se le hace 3 preguntas a cada integrante del equipo:
- ¿Qué tareas ha realizado desde la última reunión (que he hecho)?
- ¿Sobre qué va a trabajar en el día actual (que voy a hacer hoy)?
- ¿Qué obstáculos o riesgos impiden o pueden impedir el normal avance (que ayuda necesito)?
Se puede aprender mucho de SCRUM pero, lo más importante, es quedarse con la base de los principios para pensar que se pueden cambiar las dinámicas y mejorar tanto la formas de trabajar como los resultados. Todo ello llevará a muchas empresas a realizar las tareas de una forma más ágil y con menos errores durante el proceso.
Excelente artículo que describe la mejor manera de desarrollar e implementar proyectos de desarrollo de software, me contactaré para el desarrollo de un sistema que tengo en mente, gracias.
Muy buen articulo, muy recomendable! Un cordial saludo.
Great article. I am going through a few of these issues as
well..