Contratos ágiles

Las ventajas de acordar la realización de proyectos cerrados con metodologías Ágiles.

La parte más complicada del ciclo de vida de un proyecto es establecer un contrato entre un cliente que quiere un producto o una solución digital y la empresa de desarrollo que le presta el servicio.

En innumerables ocasiones hay que alcanzar compromisos sobre entregas, funcionalidades, niveles de rendimiento o de ausencia de errores que van suceder muchos meses después de la firma del contrato. Esto se ve acentuado por el hecho de que los requerimientos del proyecto evolucionan en el tiempo y requiere una alta capacidad de adaptación.

Hay muchos casos en los que el producto desarrollado no coincide en todos sus detalles con lo acordado en el contrato. Esto obliga al equipo a sobreesfuerzos no entendidos y obteniendo a cambio gran insatisfacción por parte de los clientes porque sus expectativas funcionales y temporales no se ven satisfechas.

Procesos complejos

El desarrollo de productos y servicios digitales es un proceso de carácter puramente humano, definido e implementado por personas. Se requiere de conocimiento, con una alta carga de trabajo intelectual, lo cual lo convierte en un proceso donde la incertidumbre es inevitable. Históricamente, esa incertidumbre se ha cubierto a través de una protección de los recursos principales, pudiendo incluso sobredimensionar los mismos.

La adopción de una filosofía ágil para afrontar de forma global este tipo de proyecto cambia drásticamente esta perspectiva. Los contratos no desaparecen: se transforman en contratos ágiles que reducen la importancia de estos a cambio de un mayor compromiso, transparencia y colaboración con nuestros clientes.

El contrato se crea con unos requisitos, un presupuesto y una duración determinada. Y, en la medida de lo posible, el equipo de desarrollo pondera las funcionalidades y requisitos que aparecen en dicho contrato. De la misma manera que lo hará con las entradas del Backlog durante la ejecución del proyecto. En el caso de que el equipo de desarrollo no esté disponible, o aun no haya sido decidido en este momento del proyecto, la revisión conjunta de esta lista ponderada de requisitos será una de las primeras actividades a realizar.

Nueva aproximación

Al comenzar el desarrollo ágil, la implicación del cliente permite que estos requisitos iniciales no sean inmutables. De hecho, se espera que no lo sean, pudiendo intercambiarse por otros requisito de peso equivalente. Siempre de forma transparente y colaborativa.

Somos partidarios de incorporar una capa de seguridad al alcance inicialmente especificado en el contrato. Pero con esta nueva aproximación, esto se convierte en un beneficio. El cliente se garantiza que el producto obtenido al final del proceso será aquel con el mayor valor de negocio posible. Y en caso de que esa capa no sea utilizada, no supondrá un coste añadido para el cliente.

Contrato Ágil vs Time and Materials

No hay que confundir el contrato ágil con un entorno de trabajo sobre las bases time and materials. En nuestro caso, los compromisos adquiridos con nuestros clientes son constantes, antes y después de cada iteración, y mucho más férreos al ser más realistas y tener la implicación de todas las partes. Se podría ver como la sustitución de un contrato a largo plazo, por múltiples contratos reflejados, por un lado, en el BackLog y por otro lado en las reuniones de Sprint, tanto para su planificación como para su revisión.

En definitiva, el paradigma de los contratos ágiles se sustenta en unos requisitos iniciales intercambiables, un incremento constante de valor, una evaluación continua del producto o servicio y un marco de colaboración absolutamente transparente.

Estos cambios en el paradigma nos llevan a alcanzar una manera diferente de definir y afrontar los proyectos. Usando contratos ágiles y anteponiendo la colaboración a los contratos y poniendo el foco en el valor de los resultados.