English Spanish

miércoles, 5 de noviembre de 2014

Hablemos de Metodologías Ágiles

Usamos el enfoque de gestión ágil de proyectos para abordar proyectos que el enfoque “tradicional” o “en cascada” no puede resolver de manera óptima y eficiente. Generalmente son proyectos con poca o ninguna definición de procesos, con poco detalle del producto resultante del proyecto, con alta posibilidad de cambios en los procesos y el producto, con procesos complejos, etc.   Sin embargo, existen varias formas de gestionar los proyectos de manera ágil y por esta razón fue que en el 2001 se firmó el manifiesto ágil, en respuesta a los diversos y múltiples mecanismos y formas que emergieron para dar respuesta a los proyectos que se deben gestionar con el enfoque ágil.  Desde antes de la firma del manifiesto existían un conjunto de Métodos Ágiles para abordar proyectos con las características citadas hace un momento.  De eso hablaremos en esta ocasión, de las metodologías ágiles de gestión de proyectos.

Que es una Metodología?

Según algunos autores, una metodología es un conjunto de procesos y prácticas usados en una forma específica para lograr obtener un resultado.  El diccionario de la real academia española lo define como un conjunto de métodos que se siguen  en una investigación científica o en una exposición doctrinal.  Todo lo descrito es correcto, sin embargo, prefiero definir metodología como una mezcla interesante de roles, herramientas, técnicas, procesos, prácticas y actividades que se conjugan y actúan sobre un modelo organizacional específico.

Que son las Metodologías Ágiles ?

La gestión tradicional de proyectos se enfoca mayormente en mejores prácticas y cuando hablamos de Ágil recurrimos a las metodologías ágiles.  La diferencia entre ambos enfoques es que las mejores prácticas son una sugerencia de cómo hacer las cosas producto de la extensa experiencia y buenos resultados obtenidos usando esas prácticas, las metodologías sugieren una forma en particular de hacer las cosas donde si dejan algo fuera el resultado no será el esperado, es decir, debe hacerse lo indicado por la metodología como requerido (no es una sugerencia, es que hay que hacerlo así).  Obviamente veremos más adelante que se pueden hacer ajustes a las metodologías ágiles para adaptarlas a las situaciones y contextos de nuestra empresa, pero siguen siendo una metodología.

Las Metodologías Ágiles tienen la peculiaridad de que el tiempo y los recursos (personas, materiales y equipos) son fijos, invariables, es decir, no cambian.  En cambio el conjunto de características y especificaciones del producto o servicio que se desea construir es totalmente flexible, ajustable, cambiante.



Las Metodologías Ágiles surgieron antes incluso de la firma del Manifiesto Ágil, algunas sufrieron algunos cambios posterior a ese momento, otras surgen después de la firma del referido manifiesto y otras continúan siendo exactamente igual que hace 13 años.  Dentro de la Metodologías Ágiles de renombre podemos citar las siguientes:
  • Scrum
  • eXtreme Programming (XP)
  • Crystal Family
  • Lean Software Development
  • Agile Unified Process (AUP)
  • Feature Drive Development (FDD)
  • Test Drive Development (TDD)
  • Dynamic Systems Development Method (DSDM)
  • Kanban

Desde hace más de diez años diferentes organizaciones miden el uso de estas metodologías por los diferentes equipos de desarrollo de productos que trabajan con el enfoque ágil.  Un estudio realizado por la empresa Version One en el 2014 (8va encuesta anual sobre el uso de metodologías ágiles) arrojo el siguiente resultado:


Esto nos indica que Scrum es la metodología ágil más usada  (por mucho) dentro de los equipos de proyectos que trabajan con ágil, seguido por el híbrido de Scrum + eXtreme Programming.

Más adelante hablaremos de cada uno de estos métodos ágiles en detalle.  Hasta la próxima.