No es fácil componer un criterio objetivo sobre la gestión ágil de proyectos.
La sobrecarga informativa que sobre nuevos modelos, marcos, procesos, métodos podemos encontrar en artículos, blogs, foros, cursos, charlas, webinars, libros, etc. puede terminar confundiendo más que aclarando.
Este post expone los conceptos subyacentes para comprender y situar mejor los diferentes modelos o metodologías.
Concepto 1: Gestión de proyectos predictiva y evolutiva
Gestión de proyectos predictiva
Planifica el proyecto de inicio a fin. Estima el esfuerzo y tiempo necesario para su ejecución completa.
La meta es entregar el producto completo en el plazo y con el coste previsto
Tiene por objetivo la previsibilidad: conocer cuánto va a costar el proyecto (en tiempo y recursos) y gestionar su desarrollo para entregar en la fecha prevista con los costes previstos el trabajo encargado por el cliente.
Gestión de proyectos evolutiva
Comienza el desarrollo del sistema con una visión general del objetivo y información inicial detallada suficiente para la primera entrega, pero no para todo el proyecto. A partir de ahí se van construyendo y entregando de forma continua partes parciales disponiendo en cada momento de la información necesaria para cada una.
Concepto 2: Ingeniería concurrente y agilidad
Ingeniería concurrente
- Desarrollo basado en procesos: la calidad del resultado depende de la calidad del proceso.
- Trabajo gestionado.
- Ciclo de vida: evolutivo e incremental con solapamiento de fases.
Agilidad
- Desarrollo basado en personas: la calidad del resultado depende del conocimiento tácito de las personas implicadas.
- Trabajo autogestionado.
- Ciclo de vida: evolutivo e incremental con solapamiento de fases.
Concepto 3: Incremento iterativo o continuo
Para mantener un ritmo de entrega continuo y sostenido, la gestión de proyectos evolutiva emplea dos patrones:
Incremento iterativo
Avance incremental del proyecto basado en iteraciones o sprints.
Las entregas parciales (incrementos) se realizan en ciclos de tiempo breves, de duración prefijada, normalmente entre una semana y un mes y medio. Al inicio de cada iteración se estima cuánto trabajo se puede realizar y qué parte del proyecto se realizará
Incremento continuo
Entrega continua de funcionalidades al ritmo que se van produciendo, manteniendo un flujo continuo, sin tiempos muertos ni cuellos de botella.