LOADING CLOSE

Qué significa Agile? parte 1

Qué significa Agile? parte 1

Tiempo de lectura 3 minutos

Seguro que tratar de hablar de lo que es la metodología Agile abre un estupendo debate. Por ello no pretendo sentar cátedra, más bien lo que quiero es dar mi opinión sobre el concepto de Agilidad. Lo voy a partir en tres partes porque las trilogías tienen tirón y no quiere que nadie se me duerma por el camino.

Agile para mi, más que una metodología es una mentalidad, un cambio cultural con la forma anterior de construir software heredada de otros procesos productivos del siglo XX y que se demostraron completamente inapropiados para desarrollar software de calidad de forma eficiente.

Así pues, la metodología Agile está basada en un enfoque de desarrollo iterativo e incremental en el que los requisitos y las soluciones evolucionan a través de la colaboración entre equipos auto organizados y multifuncionales. Las iteraciones son cortas y al final de las mismas se entrega valor al producto que se está desarrollando, lo que es una gran diferencia con al antiguo método de desarrollo en cascada (waterfall) en el que al final de una largo período de tiempo se entrega el software, muchas de las veces ya anticuado y alejado de las expectativas del cliente. Por ello la satisfacción del cliente no solía ser buena.

Todo esto suena muy bonito, y ahí radica gran parte de su potencia, en la simplicidad. En una gran comunicación y humildad, en pro de alcanzar unos objetivos comunes que todos compartimos. Pero cómo llevarlo a la práctica? Hay mils formas de hacerlo y todas ellas pueden ser buenas o malas. Yo diría que se asemejan a las recetas, ninguna se debe seguir al pie de la letra, y todas hay que adaptarlas a los ingredientes que disponemos y circunstancias por las que atravesamos. No obstante hay grandes ayudas.

Agile Manifesto / Manifiesto Ágil

Casi recién estrenado el siglo XXI, en Febrero de 2001, un grupo de 17 fenómenos en diferentes áreas, se reunió para tratar de poner en común ideas que llevaban practicando con éxito desde hacía ya unos años. A pesar de que lo que promulgaban funcionaba no se había tomado en cuenta seriamente y la industria del software continuaba empecinada en tirar a la basura ingentes cantidades de dinero y esfuerzo. El Manifiesto Ágil marcó un nuevo inicio que marcó un reinicio. Con cuatro sencillo valores se cambiaba el paradigma de la construcción de software. A saber:

  • Individuos e interacciones sobre procesos y herramientas
  • Software funcionando sobre documentación extensiva
  • Colaboración con el cliente sobre negociación contractual
  • Respuesta al cambio sobre ceñirse a un plan

Y sin olvidar que aunque es más importante la parte derecha de cada punto, no hay que olvidar completamente la parte de la derecha, porque de hecho también tiene valor.

Yo miso he sufrido el proceso en cascada, obligados a utilizar determinadas herramientas y no poder modificar nada en lo procesos, gastando meses en análisis en los que se generaban inútiles volúmenes de documentación que nadie quería pero que había que adjuntar por contrato y manteniendo el plan inicial aunque supiéramos que cuando el cliente viera lo que habíamos hecho años después de empezar, ni le iba a servir, ni iba a reflejar la cantidad de esfuerzo que habíamos acumulado. Por todo ello me parece muy potente este cambio cultural en el que también hay que involucrar al cliente. Todos juntos para llegar a alcanzar los mejores resultados.

Iterativo e Incremental

Una imagen vale más que mil palabras y la imagen encima de este texto lo ilustra estupendamente. En un proceso en cascada el cliente quiere un coche y no tiene el coche hasta que está acabado completamente. Durante un largo tiempo no tiene nada útil con lo que poder transportarse, nada, sólo mucho “qué hay de lo mío?” y presión innecesaria. Sin embargo siguiendo los principios ágiles el cliente va a tener pequeños incrementos que le dan valor, desde tempranas fases del desarrollo va a ir teniendo alguna funcionalidad, no es el resultado final, de acuerdo, pero es mejor algo que nada. En cada iteración el cliente va a tener algo más, va a ser consciente del progreso y va a poder hacer sugerencias. De este modo la satisfacción va a ser mucho más alta y al final del proceso va obtener un coche deportivo mucho mejor de lo que inicialmente había imaginado.

Así pues mentalidad ágil promueve un trabajo iterativo e incremental. Y los principios básicos del manifiesto inciden en la colaboración directa con el cliente, la adaptación a los cambios que pueden ir apareciendo, una estupenda relación entre las personas que trabajan en el equipo y en obtener software que está funcionando como medida fundamental de avance.

Aún así hay doce principios ágiles que ayudan mucho a desarrollar el agilismo, pero eso ya lo dejamos para la siguiente entrega.

Deja un comentario

UA-31091003-1