Dada la amplia variedad de metodologías ágiles disponibles, puede ser complicado descubrir la adecuada para tu equipo. En este artículo ofrecemos un panorama general sobre la gestión ágil (Agile) de proyectos a través de los 12 principios ágiles que integran el Manifesto Agile. Actualización 10/11/2022: En esta actualización hemos incluido más información sobre el Manifesto Agile o Manifiesto Ágil para que puedas comprender mejor en qué consiste este marco de trabajo.
En el ámbito de la gestión de proyectos, hay una gran diversidad de marcos de trabajo que se pueden aplicar. Normalmente, en los proyectos se mantiene un comportamiento lineal en el que cada tarea sigue a otra anterior. Por lo común, a esto se lo conoce como modelo en “cascada” (waterfallen inglés).
En 2001, a medida que el desarrollo de software se volvió mucho más común, esta visión cambió por completo. El método lineal en cascada no resultaba efectivo para los equipos que trabajaban con software porque todo cambiaba constantemente y las necesidades de los clientes también se modificaban. Así es como surgieron las metodologías ágiles, que se concretaron en The Agile Manifesto (Manifiesto Ágil), un compendio de 4 valores y 12 principios que revolucionaron el modo en el que se gestionaban los proyectos de desarrollo de software.
La metodología Agile no solo es útil para los proyectos de software, sino que hay equipos de todo tipo que han tenido éxito gracias a esta metodología dinámica. Este marco de trabajo además ha ido evolucionando con el tiempo, de forma que, en la actualidad, existe un marco de trabajo Agile a gran escala denominado SAFe. Si quieres comenzar a implementarla, este es el sitio indicado para empezar.
El esquema ágil es una metodología iterativa, es decir, se realizan entregas cíclicas y en cada entrega se realizan todas las fases del ciclo: desde toma de requerimientos, diseño, verificación y entrega. La mayor diferencia de las metodologías ágiles frente a los antiguos modelos waterfall es que en los procesos ágiles se entrega valor constantemente y se recibe feedback también durante todo el proyecto.
Las metodologías ágiles son estructuras de trabajo para la gestión de proyectos en las que los proyectos se dividen en muchas fases dinámicas, normalmente conocidas como “sprints”. Después de cada sprint, los equipos reflexionan y observan lo que ha sucedido. Evalúan si hay algo que se podría mejorar para poder ajustar la estrategia para el siguiente sprint.
Plantilla gratuita para planificación de sprintsEn 2001 un grupo de 17 desarrolladores de software (Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas) se reunieron en un retiro en Utah para debatir sobre los problemas a los que se enfrentaba la industria e intentar encontrar soluciones a los mismos.
Este grupo de desarrolladores detectó que uno de los principales problemas a los que se enfrentaba la industria eran las entregas prolongadas, poco ágiles y poco flexibles del software. La gestión de proyectos de desarrollo de software se había convertido en procesos rígidos que terminaban en productos que no atendían a las necesidades del cliente.
Así, entendieron que debían idear un proceso que permitiera la realización de cambios de forma rápida sin tener que esperar a tener el producto acabado con el objetivo de poder aportar valor al cliente en cualquier momento. El Agile Manifesto es el resultado de este encuentro que cambiaría la forma de entender la gestión de proyectos actual.
El Manifiesto Ágil es un documento que se centra en los 4 valores y 12 principios del desarrollo de software con metodologías ágiles. Lo publicaron, en febrero de 2001, 17 desarrolladores de software que necesitaban contar con una alternativa al proceso de desarrollo de productos más lineal y orientado a procesos.
Tal como se detalla en el Agile Manifesto, hay 4 valores principales de la gestión ágil de proyectos:
1. Individuos e interacciones sobre procesos y herramientas. Valorar más a los individuos y sus interacciones que a los procesos y las herramientas. Los equipos que trabajan con metodologías ágiles valoran más la colaboración en equipo y trabajar juntos, que trabajar de manera independiente y hacer las cosas “al pie de la letra”. Esta regla trata de impulsar la comunicación entre las personas del equipo para que estos colaboren unos con otros y, de esta forma, se obtenga el mejor resultado posible.
2. Software funcionando sobre documentación extensiva. Valorar más el software en funcionamiento que la documentación exhaustiva. El software que desarrollan los equipos ágiles debe funcionar. El trabajo extra, como la documentación, no es tan importante como desarrollar un buen software. Lo que prima en el Agile Manifesto es entregar al consumidor el producto que quieren por encima de otros trabajos que no se consideran imprescindibles.
3. Colaboración con el cliente sobre negociación contractual. Valorar más la colaboración con el cliente que la negociación contractual. Los clientes son sumamente importantes para las metodologías Agile. Los equipos que trabajan con estas metodologías dejan que los clientes marquen la dirección en la que se debe orientar el software. Por lo tanto, la colaboración con el cliente es más importante que los detalles más específicos de la negociación contractual.
4. Respuesta ante el cambio sobre seguir un plan. Valorar más la respuesta ante el cambio que seguir un plan. Uno de los principales beneficios de las metodologías ágiles de proyectos es que permiten que los equipos sean flexibles. Esta estructura ofrece la posibilidad de que los equipos cambien rápido de estrategia sin afectar al proyecto entero. En el Agile Manifesto el contrato con el cliente debe ser flexible ya que lo más importante es entregar un producto que aporte valor al cliente.
Los 4 valores son los pilares de la metodología ágil. A partir de esos valores, el equipo desarrolló 12 principios. Estos principios se pueden adaptar fácilmente para adecuarlos a las necesidades de cada equipo. Si los valores ágiles fueran los pilares fundamentales de una casa, los 12 principios serían las habitaciones que se pueden construir dentro.
Los 12 principios del Manifiesto Ágil que se aplican en las metodologías ágiles son:
Satisfacer a los clientes a través de la entrega temprana y continua. Cuando los clientes reciben actualizaciones con regularidad, es más probable que vean los cambios que desean dentro del producto. La consecuencia es que los clientes son más felices y están más satisfechos; además de que hay más recaudación recurrente. En el Agile Manifesto es clave deleitar al cliente.
Aceptamos que los requisitos cambien, incluso en etapas tardías del proyecto. El eje fundamental de los esquemas ágiles es la adaptabilidad. En procesos iterativos como los ágiles, la flexibilidad causa más bien que mal.
Hacemos entregas valiosas con frecuencia. Este principio es similar al primero, efectuamos entregas valiosas a los clientes con frecuencia y por eso es menos probable que los perdamos.
Rompemos con el aislamiento en los proyectos. La colaboración es la clave de la estrategia ágil. El objetivo es que las personas superen sus propios proyectos individuales y colaboren juntas con mayor frecuencia.
Desarrollamos proyectos con personas motivadas. La metodología ágil funciona mejor cuando los integrantes de los equipos se sienten comprometidos con lo que hacen y trabajan activamente para alcanzar algún objetivo.
El modo más eficiente de comunicar es con conversaciones cara a cara. Si bien es cierto que el trabajo ha cambiado radicalmente desde 2001 a la fecha, la percepción con respecto a esta declaración aún tiene vigencia. Si trabajas en un equipo descentralizado, dedica tiempo a comunicarte de maneras que incluyan algún tipo de comunicación cara a cara, como las videollamadas por Zoom.
El software en funcionamiento es el principal indicador del progreso. Lo más importante es que los equipos se esfuercen (con la aplicación de estos esquemas de trabajo ágiles) por desarrollar los productos. En el Agile Manifesto se estable un objetivo prioritario: la entrega de software que funciona por sobre cualquier otra cosa.
Mantenemos un ritmo de trabajo constante. Algunos aspectos de las metodologías ágiles pueden tener un ritmo acelerado, pero nada debería ser tan rápido como para que los miembros del equipo terminen padeciendo agotamiento. El objetivo es mantener la constancia a lo largo del proyecto.
La excelencia continua favorece la agilidad. Si el equipo desarrolla un código excelente en un sprint, podrá basarse en ese mismo código para el siguiente desarrollo. La generación continua de trabajos de excelencia permite que los equipos avancen más rápido a medida que transcurre el tiempo.
La simplicidad es esencial. A veces, la solución más simple es la mejor. Las metodologías ágiles apuntan a no complicar demasiado las cosas y a hallar respuestas simples para problemas complejos.
La organización interna y autónoma de los equipos genera resultados más valiosos. En cierto modo, es similar al quinto principio. Los equipos en los que se trabaja con proactividad producen activos más valiosos para la empresa, ya que se esfuerzan por aportar ese valor.
Con regularidad, el equipo reflexiona y adapta las formas de trabajo para favorecer la efectividad. Las reuniones para análisis retrospectivo son muy comunes en las prácticas ágiles. Es tiempo dedicado a que los equipos miren hacia atrás, reflexionen sobre su desempeño y adapten los comportamientos para el futuro.
Normalmente, la gestión ágil de proyectos se utiliza para el desarrollo de aplicaciones o de otros tipos de software. El motivo es que el software cambia constantemente y las necesidades de los productos, a la par. Es la razón por la que los métodos lineales de gestión de proyectos, como el modelo en cascada o waterfall, han resultado menos efectivos.
Gestiona equipos ágiles con AsanaA continuación, compartimos algunos de los motivos sobre por qué los equipos eligen la metodología Agile:
Hay un motivo en particular por el cual las metodologías se llaman “ágiles”. Uno de los principales beneficios de aplicar procesos ágiles para el desarrollo de software es la posibilidad que ofrecen de cambiar de estrategias rápidamente, sin interrumpir el flujo de un proyecto. Por eso es una de las ventajas más significativas de poner en práctica el Agile Manifesto.
Dado que con el método tradicional en cascada las fases pasan de una a otra, el cambio de estrategias es muy complicado y puede interferir en el resto de la hoja de ruta del proyecto. El desarrollo de software es un campo mucho más versátil, en el que se gestionan cambios rápidos en los proyectos, que para la percepción tradicional puede resultar muy complejo. Es parte del motivo por el cual se prefiere la gestión ágil de proyectos para el desarrollo de software.
Uno de los principios del Agile Manifesto determina que la manera más efectiva de comunicarse con el equipo es cara a cara. Combinado con el principio de que conviene romper con el aislamiento en los grupos de trabajo, obtienes la receta para la colaboración en equipo.
A pesar de que la tecnología ha evolucionado desde 2001 y de que el trabajo ha cambiado desde entonces por políticas mejor adaptadas al trabajo remoto, la idea de trabajar cara a cara no sigue siendo la misma.
Lee: 10 pasos sencillos para fomentar la colaboración en los equiposUno de los aspectos particulares del desarrollo de software es que los equipos se pueden centrar en las necesidades de los clientes mucho más estrechamente que en otro tipo de sectores. Con el surgimiento del software basado en la nube, los equipos pueden recibir los comentarios y opiniones de clientes reales con rapidez.
La satisfacción de los clientes es un factor clave para el desarrollo de software. Entonces, resulta bien sencillo entender por qué se la incluyó en el Manifesto Agile. Al trabajar en colaboración con los clientes, los equipos ágiles pueden priorizar las funciones en las que se centran las necesidades de los consumidores. Cuando esas necesidades cambian, los equipos pueden optar por un enfoque ágil e inclinarse por un proyecto diferente.
En el marco del Agile Manifesto, se desarrollaron una gran diversidad de variaciones diferentes para la gestión de proyectos ágiles. A continuación, compartimos algunas de las metodologías Agile más comunes que han partido de los 12 principios del Agile Manifesto. El project management actual ha integrado así los principios ágiles y definido, gracias a ellos, herramientas de trabajo útiles que permiten a los equipos comunicarse y realizar cambios de forma ágil y flexible a lo largo de todos los procesos.
Kanban ofrece un enfoque visual para la aplicación de las prácticas ágiles. Los equipos usan herramientas en línea con tableros Kanban para representar ciertas tareas dentro del proceso de desarrollo. Las tareas se ven representadas en forma de tarjetas dentro de un tablero y las etapas, en columnas. A medida que los distintos miembros del equipo trabajan con esas tareas, las “tarjetas” pasan de la columna de trabajo pendiente a la que representa a la nueva etapa en la que se encuentra la tarea.
El método es muy bueno para que los equipos puedan identificar obstáculos y visualizar cuánto trabajo se está llevando a cabo.
Lee: Guía para principiantes sobre el uso de tableros KanbanLa metodología Scrum es muy común para la aplicación de prácticas ágiles en equipos pequeños. Hay un Scrum Master que es quien lidera el equipo, cuya función principal es la de despejar todos los obstáculos para que los demás puedan ocuparse de sus trabajos cotidianos. El trabajo se efectúa en sprints y los equipos que trabajan con Scrum se reúnen a diario para analizar las tareas activas, los obstáculos y cualquier otra cosa que pueda afectar al desarrollo del equipo.
Lee: ¿Scrum es algo nuevo para ti? Qué es y por qué funciona tan bienEl marco de proyecto adaptativo (AFP), también conocido como gestión adaptativa de proyectos (APM), surgió a partir de la idea de que, en cualquier etapa de un proyecto, pueden surgir factores desconocidos que lo afecten. Esta técnica se aplica principalmente para proyectos de TI en los que no funciona otro tipo de técnicas tradicionales para la gestión de proyectos.
Este marco se basa en la idea de que los recursos de un proyecto pueden cambiar en cualquier momento. Por ejemplo, el presupuesto puede cambiar, el cronograma también o incluso los miembros que trabajan en el equipo encargado del proyecto pueden pasar a trabajar en otros equipos. El marco de proyecto adaptativo se centra en los recursos que hay para el proyecto, en contraposición a los recursos que se necesitan para el proyecto.
Este tipo de gestión de proyectos, por lo general, se aplica a proyectos muy complejos con un nivel muy elevado de incertidumbre. El criterio abarca la adaptación constante de los procesos hasta que alcanzan el resultado deseado. Estos proyectos incluyen muchos cambios espontáneos y es normal que los equipos cambien de estrategias de una semana a la siguiente.
Para aplicar la gestión extrema de proyectos hay que tener una amplia flexibilidad. Es uno de los motivos por el cual los sprints son tan cortos, como máximo duran unas pocas semanas. La metodología ofrece la posibilidad de realizar cambios con mucha frecuencia, de abordar prácticas de prueba y error para resolver problemas, y de implementar muchas iteraciones para autocorrección.
Lee: Cómo entender los procesos iterativos (con ejemplos)Esta metodología ágil brinda a los equipos la posibilidad de adaptarse rápidamente a los cambios. El objetivo principal del proceso es la adaptación continua. Las fases de este tipo de proyectos —teorizar, colaborar y aprender— favorecen el aprendizaje continuo a medida que el proyecto avanza.
No es poco común que los equipos que aplican el desarrollo adaptativo de software trabajen en las tres fases a la vez. Ya que, dada su estructura no lineal, es muy común que las etapas se superpongan. Además, debido a la fluidez de esta clase de gestión, hay más posibilidades de que la repetición constante de estas tres etapas sea de gran utilidad para que los miembros del equipo identifiquen y resuelvan problemas con mayor rapidez de lo que lo habrían hecho con métodos estándar de gestión de proyectos.
El método de desarrollo de sistemas dinámicos es un método ágil que se centra en el ciclo de vida completo de un proyecto. Este es el motivo por el cual este método tiene una estructura y bases más rígidas, a diferencia de lo que sucede con los demás métodos ágiles.
Las 4 fases principales del método de desarrollo de sistemas dinámicos son las siguientes:
Iteración del modelo funcional o prototipos
Diseño e iteración de la estructura
Implementación
El desarrollo basado en funcionalidades combina las diferentes mejores prácticas ágiles. Si bien es un método iterativo de gestión de proyectos, este modelo se centra más en las funciones exactas de un software en las que trabaja el equipo para desarrollarlas. El desarrollo basado en funcionalidades depende mayormente de la opinión de los clientes, ya que las funciones que prioriza el equipo son las que necesita el cliente.
Con este modelo los equipos también pueden actualizar los proyectos con frecuencia. Si hay un error, se incorpora rápido al ciclo y la corrección se implementa al mismo tiempo que las fases de este método se encuentran en constante movimiento.
Con frecuencia, los equipos de desarrollo de software son los que hacen referencia a procesos ágiles, pero, en realidad, cualquier equipo puede trabajar con metodologías ágiles. Si quieres trabajar con un marco más flexible para la gestión de proyectos, prueba la metodología Agile.
Independientemente del tipo de Metodología Agile que apliques, tu equipo necesitará contar con una fuente única de referencias en la que se encuentre toda la información del proyecto. Asana puede ayudarte. Con Asana, los equipos pueden elaborar tableros Kanban o gestionar sprints de Scrum con una herramienta flexible y que favorece la colaboración.
Gestiona equipos ágiles con Asana