SCRUM, metodologías ágiles para el desarrollo de proyectos
Breve historia de Scrum
A mediados de la década de los 80, Hirotaka Takeuchi y Ikujiro Nonaka definieron una estrategia de desarrollo de Producto o flexible e incluyente en la que el equipo de desarrollo trabaja como una unidad para alcanzar un objetivo común. Hirotaka Takeuchi y Ikujiro Nonaka describieron un enfoque innovador para el desarrollo de Producto os que ellos llaman un enfoque holístico o «rugby», «donde un equipo intenta Llegar hasta el final como una unidad, pasando el balón hacia atrás y adelante.» (where a team tries to go the distance as a unit, passing the ball back and forth.) Ellos basan su enfoque en los estudios de casos de diversas industrias de fabricación. Takeuchi y Nonaka propusieron que el desarrollo de Producto os no debe ser como una carrera de relevos secuencial, sino que debería ser análogo al del juego de rugby en el que el equipo trabaja en conjunto, pasando el balón hacia atrás y hacia adelante a medida que se mueve como una unidad por el campo. El concepto de rugby de un «Scrum» (donde un grupo de jugadores se junta para reiniciar el juego) se introdujo en este artículo para describir la propuesta de los autores de que el desarrollo de Producto os debe implicar «mover al Scrum campo abajo» (moving the Scrum downfield). Ken Schwaber y Jeff Sutherland elaboraron sobre el concepto de Scum y su aplicabilidad al desarrollo de software durante una presentación en la conferencia Object-Oriented Programa ming, Systems, Languages & Applications (OOPSLA) en 1995 en Austin, Texas. Desde entonces, varios practicantes, expertos y autores de Scrum han seguido perfeccionando la conceptualización y metodología de Scrum. En los últimos años, Scrum ha aumentado en popularidad y ahora es la metodología de desarrollo de proyectos preferida por muchas organizaciones a nivel mundial.
Las metodologías ágiles se basan en adquirir una nueva manera de trabajo en equipo, en la que las personas que participan aumentan su motivación y su eficiencia para hacer el doble con la mitad de tiempo.
¡NO SE TRATA DE TRABAJAR MÁS SINO DE HACERLO MEJOR!
¿Qué es SCRUM?
Scrum es una metodología ágil que permite realizar proyectos más orientados a las necesidades de la empresa y de los clientes, de una forma más eficiente y en un menor plazo de tiempo, a través de un marco de trabajo colaborativo que permite generar equipos de alta productividad.
Scrum se basa en una iteración continua, donde se realizan pequeñas actividades para construir un producto o proyecto de forma incremental, entregando en cada iteración una propuesta de valor cada vez más desarrollada. Scrum es la más utilizada de las llamadas metodologías ágiles de desarrollo de proyectos.
Los principios del Scrum son simple pero no fácil de aplicar. Las compañías que consiguen implementarlos, consiguen mejoras de 4 a 10 veces en productividad, time-to-market y competitividad. A pesar de las mejoras que aporta, muy pocas compañías consiguen vencer sus propias resistencias y conseguir todos los beneficios del Scrum.
El nombre Scrum, no es un acrónimo, proviene del Rugby y significa melé, y al igual que en Rugby, todos los jugadores actuan como una unidad para hacer avanzar la pelota. En Scrum todos los componentes de un equipo realizan actividades de forma iterativa e incremental para desarrollar el proyecto.
SCRUM, una forma de trabajar en equipo más productiva
¿Por qué utilizar Scrum?
Algunas de las ventajas principales de la utilización de Scrum en cualquier proyecto son:
1. Adaptabilidad— Control del Proceso Empírico e Entrega Iterativa hacen que los proyectos sean adaptables y abiertos a la incorporación del cambio.
2. Transparencia—Todos los radiadores de información tal como un Tabla de Scrum y Gráfico del Trabajo Consumido del Sprint son compartidos, lo que lleva a un ambiente de trabajo abierto.
3. Retroalimentación Continua—Retroalimentiación continua se proporciona a través de los procesos llamados Realizar un Standup Diario y Demostrar y Validar el Sprint.
4. Mejora Continua —Los entregables se mejoran progresivamente Sprint por Sprint a través del proceso Mantenimiento Priorizado de los Pendientes del Producto o .
5. Entrega Continúa de Valor—los procesos iterativos permiten la entrega continua de valor tan frecuentemente como el Cliente lo requiere a través del proceso Ship Deliverable.
6. Ritmo Sostenible — Los procesos Scrum están diseñados de tal manera que las Personajes o Personas involucradas pueden trabajar a un paso cómodo (Ritmo Sostenible) que, en teoría, se puede continuar indefinidamente.
7. Entrega Anticipada de Alto Valor—El proceso de Crear la Lista de Pendientes del Producto o asegura que los requisitos de mayor valor del Cliente sean los primeros en cubrirse.
8. Proceso de Desarrollo Eficiente— Boxeo Tiempo y la reducción al mínimo de trabajo que no es esencial conduce a mayores niveles de eficiencia.
9. Motivación—Los procesos de Realizar un Standup Diario y Retrospectiva del Sprint conducen a mayores niveles de motivación entre los empleados.
10. Resolución de Problemas de Forma más Rápida— Colaboración y Colocación de equipos multi-funcionales conducen a la resolución de problemas con mayor rapidez.
11. Entregables Efectivos—El procesos de Crear la Lista de Pendientes del Producto o y revisiones periódicas después de la creación de entregables asegura entregas efectivas para el Cliente.
12. Centrado en el Cliente (cliente)— El poner énfasis en el valor del negocio y tener un enfoque de colaboración con los stakeholders asegura un marco orientado al Cliente.
13. Entorno de Alta Confianza—Los procesos de Realizar un Standup Diario and Retrospectiva del Sprint promueven transparencia y colaboración, dando lugar a un ambiente de trabajo de alta confianza, asegurando así una baja fricción entre los empleados
Scrum es un marco de trabajo para desarrollo ágil de software.
Es un proceso en el que se aplican de manera regular un conjunto de buenas prácticas para trabajar colaborativamente, en equipo y obtener el mejor resultado posible de proyectos, caracterizado por:1
- Adoptar una estrategia de desarrollo incremental, en lugar de la planificación y ejecución completa del producto.
- Basar la calidad del resultado más en el conocimiento tácito de las personas en equipos auto organizados, que en la calidad de los procesos empleados.
- Solapar las diferentes fases del desarrollo, en lugar de realizar una tras otra en un ciclo secuencial o en cascada.
Scrum es una herramienta excelente para la gestión de proyectos. A diferencia de la gestión tradicional de proyectos, donde un proyecto puede durar meses o años, en Scrum un proyecto dura un sólo Sprint.
Todas las tareas necesarias para desarrollar el proyecto se realizan durante el Sprint. Así, el diseño, la planificación o el testing son actividades que se realizan dentro de un sólo Sprint, siempre orientado a generar el máximo valor.
El Scrum tiene como punto de partida una lista de objetivos y de requisitos que conforman el plan de proyecto. En Scrum, es el Product Owner quien decide donde y a qué dedicar los recursos, es el que prioriza los objetivos que permiten definir y planificar las iteraciones y las acciones a realizar. Entender esto es muy importante para asegurarse el éxito en la implantación de Scrum en una organización.
Qué es un proyecto SCRUM ?
En Scrum , el PMI o el proyecto se desarrolla en una sucesión de iteraciones de corta duración para incrementar el valor del proyecto, estas iteraciones se denomina Sprints.
Cada Sprint es una entidad en sí misma, por lo general tiene una duración de entre 2 hasta 4 semanas, que es el plazo para presentar el trabajo, recibir feedback y realizar una reflexión para mejorar en cada iteración. La división del proyecto en Sprints permite pivotar en función de las necesidades de los clientes o en los cambios que se produzcan.
Cada Sprint debe proporcionar un resultado con valor, una variación del proyecto que ha de poder ser presentado y entregado al cliente de la forma más rápida y con el menor esfuerzo posible. La suma de todos los Sprints conforma el desarrollo total del proyecto.
REALIZAR UN PROYECTO POR SPRINTS, ES UNO DE LOS CAMBIOS MÁS DIFÍCILES DE ASUMIR PARA UNA ORGANIZACIÓN QUE ESTÁ HACIENDO UNA TRANSICIÓN ÁGIL
Roles del Scrum
En Scrum se definen tres roles principales: El Product Owner, el Scrum Master y el Equipo de desarrollo. Un equipo Scrum está compuesto de 3 a 9 miembros más el Scrum Master. Cada uno de estos roles en Scrum tiene sus responsabilidades muy definidas y rinde cuentas por distintos motivos.
- Product Owner: Es el responsable del proyecto. Habla por el «cliente», y asegura que el equipo entienda y cumpla sus expectativas. Es la función de mayor responsabilidad.
- Scrum Master: Tiene dos funciones, gestionar el proceso Scrum y ayudar a eliminar impedimentos. Lidera las reuniones y ayuda al equipo a minimizar los obstáculos para cumplir con el objetivo del Sprint, es un «facilitador».
- Scrum Team: Son las personas que se encargan de desarrollar las actividades y cumplir con los requerimientos del proyecto. El Equipo está formado por entre 3 y 9 profesionales que se encargan de desarrollar el proyecto. Independientemente de cuales sean sus roles internos, en el equipo solo hay un rol, el de miembro del equipo. El equipo se auto gestiona y decide cual es la mejor manera de conseguir entregar un incremento de producto al final del sprint, asume su propia responsabilidad y rinde cuentas al final de cada sprint.
Metodologia en 10 fases
Os proponemos una guía rápida para aplicar SCRUM en vuestra empresa, una descripción de todo el proceso para poder empezar desde cero.
- SELECCIONAR EL PRODUCT OWNER. Seleccionar la persona que tiene la responsabilidad del proyecto, la voz del cliente y sabe cuáles son los objetivos.
- SELECCIONAR EL SCRUM TEAM PARA DESARROLLAR EL PROYECTO. Seleccionar un equipo de entre 3 y 9 personas para desarrollar todas las actividades previstas.
- SELECCIONAR UN SCRUM MASTER PARA AYUDAR Y LIDERAR EL EQUIPO. Seleccionar la persona que conoce la metodología y se responsabiliza de conducir las iteraciones o sprints definidos.
- ELABORAR LA LISTA DE BLOQUES DEL PROYECTO O BACKLOG DEL PRODUCTO. Son los bloques del proyecto o stories, es decir la lista de todos los objetivos que deben conseguirse en el proyecto.
- PRIORIZAR LOS BLOQUES DEL PROYECTO O BACKLOG DEL PRODUCTO. El equipo prioriza el nivel de importancia de los bloques que componen el proyecto.
- PLANIFICAR EL SPRINT, DEFINIR EL PLAZO Y EL OBJETIVO DE LO QUE SE QUIERE CONSEGUIR. El equipo hace una previsión de cuántos ítems ha de realizar en el sprint para conseguir completar uno de los objetivos definidos. Los sprints duran entre 2 a 4 semanas.
- DEFINIR LA RELACIÓN DE ACTIVIDADES PARA COMPLETAR EL SPRINT DEFINIDO. El equipo deberá ir definiendo las actividades que componen el sprint planificado.
- SCRUM DIARIO, REUNIÓN DIARIA PARA EL SEGUIMIENTO DE LAS ACTIVIDADES. Reunión diaria del equipo Scrum, durante un máximo de 15 minutos para revisar el trabajo realizado el dia anterior y planificar las próximas acciones.
- PANEL DE SEGUIMIENTO PARA HACER QUE EL TRABAJO SEA VISIBLE. Visualizar la actividad del equipo con un panel Scrum en tres columnas: Pendiente (To Do), En Proceso (In Progres) y Hecho (Done).
- REVISIÓN DEL SPRINT Y RETROSPECTIVA DEL SPRINT, PROCESO DE MEJORA CONTINUA. Revisión del sprint es la reunión en la que el equipo muestra lo que ha construido durante el sprint La Retrospectiva del sprint, se realiza para reflexionar sobre todos aquellos aspectos necesarios para mejorar el proceso.
LOS PROCESOS SCRUM
Una vez completada la primera iteración, se continúa con el ciclo de sprints, en un proceso de avance del proyecto y de mejora continua del proceso para mejorar la experiencia y las capacidades del equipo.
Beneficios de un Scrum bien implementado
La implantación de los métodos de trabajo Scrum para el desarrollo de proyecto aporta ventajas respecto a los sistemas tradicionales.
- El cumplimiento de las expectativas del cliente con el proyecto desarrollado gracias a la presentación de las demos de Sprint al cliente (Product Owner) que proporcionan un feedback al equipo.
- Mayor flexibilidad ante los cambios, la metodología está pensada para adaptarse a los cambios, ya sean éstos requerimientos del cliente o modificaciones del mercado.
- Reducción del Time To Market, al desarrollar las partes más importantes al inicio, el cliente dispone de partes de valor que puede empezar a utilizar antes.
- Aumento de la productividad de los equipos de la empresa a los que se les otorga mayor autonomía para organizarse y mayor libertad, reduciendo protocolos y burocracia.
- Reducción de los riesgos debido a que primero se validan las funcionalidades más importantes del proyecto, lo que permite anticiparse a los riesgos que puedan surgir.
Como veis esta metodología o cultura empresarial, no solo es válida para las start-ups o leanstartup, sino válidas para cualquier organización a tener éxito y sobrevivir en entornos VUCA.