Ir al contenido principal

Lecciones militares aplicadas a los proyectos de software: Avanza de forma estable

En 1944 durante la segunda guerra mundial, el ejercito aliado intentó arrebatar Holanda al ejercio aleman. Para ello diseñó un plan extremadamente complejo, en el éxito de cada objetivo era necesario para el éxito global. Tres grupos paracaidistas tomarían cinco grandes puentes en Holando y una columna acorazada avanzaría por esos puentes en dirección norte hasta curzar el Rinh, liberar el puerto de Amsterdam y abrir una ruta directa al corazon de Alemania.

Los aliados tomaron cuatro de los cinco puentes, y las fuerzas acorazadas cumplieron con su cometido. Tras sólo nueve días y a punto de haber conseguido completar con éxito la operación fué evidente que no se podría completar la operación.

En torno al 80% de los objetivos del plan se consiguieron. La columna acorazada estableció contacto con los paracaidistas britanicos que intentaban tomar el quinto puente (parte de ellos pudieron cruzar el rio a nado para unirse a las fuerzas blindadas). Sin embargo la toma del quinto puente era imposible: los paracaidistas britanicos habían sido sorprendidos por tropas blindadas Alemanas que estaban de transito en la zona, sus carros de combate aseguraron el puente. Cualquier intento de asalto de los carros aliados sería un ejercicio de tiro al pato para los alemanes, que en última instancia podrían volar el puente, y cortar el avance aliado.

Por desgracia para los aliados sin el quinto puente era imposible cruzar el Rinh y establecer una posición fuerte al norte de Alemania. Todas las fuerzas aliadas implicadas en la operación estaban enormemente expuestas, se habían extendido las líneas más de cien kilómetros por una autopista de un sólo carril imposible de defender con la esperanza de liberar Amsterdam. La operación falló por muy poco, y los aliados tuvieron que retirarse de vuelta a sus puntos de partida. A pesar el esfuerzo, y un gran número de bajas, no se consiguió ningún avance estratégico.

Tocaron el éxito con la punta de los dedos, pero a pesar de ello: no consiguieron absolutamente nada. El plan aliado dependía completamente del éxito absoluto, y hacía gala de un extraordinario optimismo obviando que ningún plan nunca sale tal y como esta previsto.

Los tradicionales ciclos de vida suelen adolecer de la misma devilidad. Un fallo de análisis, un cambio de plazos o de presupuesto que recorte el presepuesto en un 80% puede dejar completamente inservible el resultado entregable. Por suerte los ciclos de vida ágiles son una buena manera de contenter estos riesgos. En un proyecto guíado por sprints, cada poco tiempo se obtendrá un producto viable; de tal forma que si el proyecto sólo consigue llegar al 80% del resultado, se tendrá un producto incompleto pero viable.

Aun con las metodologías ágiles en mente, no es raro ver sprints que se echan a perder por planificar una ambiciosa refactorización que no consigue completarse dentro del tiempo establecido, y que no deja ningún resultado aprovechable para el resto del proyecto.

Más importante que un brillante plan ambicioso, lleno de pequeñas piezas; es tener un plan comedido, que se base en pequeños y constantes avances.

Comentarios