Metodologías ágiles (Scrum)
Las metodologías ágiles (o scrum) son sistemas de gestión que se emplean para coordinar equipos y proyectos haciendo un uso eficiente del tiempo y los recursos, de una manera dinámica y precisa. Consisten en coordinar proyectos complejos en entornos cambiantes, pero que precisan rapidez como, por ejemplo, los proyectos tecnológicos o las startups. El scrum es una de las metodologías ágiles más utilizadas.
Las metodologías ágiles consisten en fasear el proyecto, iterar frecuentemente e ir consiguiendo pequeños hitos en el corto plazo, pero frecuentes, y corregir los errores lo antes posible.
La tecnología avanza a ritmos vertiginosos, por lo que los proyectos no pueden retrasarse en el tiempo ni trabajar con los ritmos y pautas que han venido haciendo los ingenieros y consultores hasta ahora. Es necesario dotar de cierta rapidez, agilidad y flexibilidad a los encargos de los clientes o a lo que demanda el mercado. Este es el motivo por el que surge la necesidad de implementar metodologías ágiles de trabajo. Van muy ligadas a la sistemática del modelo lean startup, del que hablamos en otro post.
Fases del proceso de las metodologías ágiles
Vamos a definir las fases fundamentales de un proceso de trabajo bajo esta metodología:
1-Product backlog (trabajo pendiente)
Consiste en elaborar una lista con las funciones a realizar y la prioridad de cada una de ellas.
2-Sprint backlog (trabajo pendiente para cada sprint)
Consiste en, entre todos los miembros del equipo, seleccionar ciertas funciones para desarrollar y entregar en un corto periodo de tiempo (sprint). Hay que definir tareas, tiempo estimado para cada una y personas encargadas de ello para conseguir una primera entrega al cliente.
3-Daily meetings (reuniones diarias)
Para conseguir resultados en el equipo de trabajo se realizan reuniones cortas diarias que han sido previamente preparadas por cada integrante, donde se expone el trabajo realizado, las dificultades encontradas y lo que se va a continuar haciendo con un límite de tiempo por integrante. De esta manera, se consigue obtener una visión global del proyecto, se definen objetivos, tiempos para cada tarea y se plantean soluciones en conjunto para obtener el mejor resultado a tiempo para la entrega.
4-Sprint review (revisión del spring)
En una reunión previa a la entrega al cliente, se revisan las funciones desarrolladas.
5-Sprint retrospective meeting (reunión retrospectiva)
En esta reunión, se evalúan los objetivos conseguidos y el feedback del cliente. Se hace balance de los puntos satisfactorios, los errores y los problemas encontrados para evitarlos en un futuro o plantear soluciones más eficientes si vuelven a surgir.
Luego, existen diversos agentes dentro de cada equipo de trabajo, los tiempos varían, e incluso las técnicas de trabajo, dependiendo del sector y del proyecto.
Características de las metodologías ágiles
Entre las características de las metodologías ágiles destacan:
- Fomentar el trabajo y la comunicación en equipo por un objetivo común.
- Con este sistema, se consigue optimizar el tiempo de reuniones que son necesarias, pero donde no se pueden permitir perder el tiempo. Cada minuto es dinero. Ya no son necesarias eternas reuniones donde se debate cada punto extensamente, donde se redefinen objetivos constantemente o donde se hablan de temas que no están en el orden del día.
- Mejora la capacidad de autogestión del trabajo y del tiempo de cada miembro del equipo, la asunción de responsabilidades y la disciplina. No es necesario tener un supervisor las 24 horas definiendo tus tareas y revisando si están bien.
- A través de las entregas periódicas al cliente, se puede obtener feedback y mejorar en la siguiente fase sin que sea demasiado tarde y nos cueste más modificar el producto. Ya no hace falta esperar a que esté finalizado para mostrárselo al cliente y que nos dé su opinión. Existe una mayor comunicación y transparencia entre el cliente y los trabajadores.
- Consigue una adecuación más precisa del producto a lo que necesita el cliente. Muchas veces no se sabe con exactitud qué producto quieren. Por eso es necesario trabajar conjuntamente con los desarrolladores y buscar la mejor solución.
- Con este sistema, se pueden minimizar riesgos haciendo frente a cambios de una manera más flexible y menos costosa a todos los niveles.