Método Agile para desarrollo de software

Método AGILE en informática

En el mundo de la informática, así como en prácticamente cualquier otro sector, los proyectos se han gestionado, tradicionalmente, en forma de cascada. Esto se traducía en que los trabajos, necesariamente, tenían que ser secuenciales e ir en una sola dirección. Sin embargo, como sabrá cualquiera que haya practicado esta disciplina, esto no es así en la inmensa mayoría de los casos. Es por ello que un método como AGILE ha pasado a ocupar un lugar de tanta importancia en la actualidad.

¿Qué es el método AGILE?

Hasta la invención del método AGILE, cualquier proyecto informático empezaba por la definición de sus requerimientos para, a continuación, analizarlos y sintetizarlos, plantear una hipótesis en torno a ellos, implementarlos y, finalmente, entregarlos a producción. Sin embargo, esto acarreaba una gran cantidad de problemas, por lo general, derivados del ‘briefing’, el cual podía estar mal estructurado o incompleto, por ejemplo. Pero también por los cambios de opinión del cliente, los cuales podían provocar tener que realizar modificaciones sobre la marcha.

Puesto que, en un proyecto informático, debido a que cada cambio implica la rectificación de pasos dados anteriormente, nunca se puede seguir una línea secuencial, el modelo anterior no es válido. De hecho, esto provoca que, cuanto más se acerca la fecha de entrega, mayor es la carga de trabajo. Seguro que a muchos les suena la situación en la que, pocos días antes de entregar un proyecto, el informático tiene que pasarse las noches prácticamente en vela para poder hacerlo a tiempo.

El método AGILE se usa para definir, como es obvio, una metodología propia aplicada a la informática y a disciplinas que guardan estrecha relación con ella y que se basa en la premisa de que el desarrollo de cualquier proyecto es dinámico y está abierto a cambios puesto que sus problemas no pueden definirse por completo desde el principio. Se basa en el manifiesto del mismo nombre publicado en 2001 y que aboga por el ‘work in progress’, la actitud positiva frente a los cambios y la responsabilidad que cada individuo tiene en el desarrollo del proyecto. De estas bases nace Scrum, del cual hablaremos más adelante.

Siguiendo con el tema del método AGILE, hay que decir que engloba una gran variedad de técnicas aplicables al desarrollo de ‘software’ y a la informática en general basadas por completo en ciclos iterativos. Esto quiere decir que los problemas y las soluciones evolucionan y llegan mediante la colaboración existente entre todos los equipos que forman parte del proyecto en su conjunto.

Esto se traduce en la necesidad continua de inspeccionar y revisar el código que es satisfecha mediante la disciplina que promueve un sistema organizado enfocado a la auto-organización, al trabajo en equipo y a la comunicación con el cliente. También comprende una serie de prácticas de desarrollo que permite aligerar los tiempos de entrega. El resultado es, por lo general, de la máxima calidad y, además, se evitan las prisas de última hora.

‘Framework’ de procesos, elemento clave para el método AGILE en informática

Antes hicimos referencia a Scrum pero no fuimos más allá en su definición. Lo cierto es que, en concreto, se trata de un ‘framework’ que usa la metodología AGILE para operar. Hay muchos otros pero, sin lugar a dudas, este es el más conocido y utilizado, lo cual se debe a que ocupa muy poco espacio en la memoria del equipo y a que ofrece una gran variedad de funcionalidades y herramientas a los profesionales. Asimismo, también es muy funcional y versátil.Pero, ¿qué es un ‘framework’? La respuesta es muy sencilla. En concreto, se trata de un conjunto de prácticas específicas que resultan indispensables para que cualquier proceso sea coherente dentro del proyecto informático que se está tratando de llevar a cabo. Para ello, generalmente, se emplean ciclos de desarrollo. Por su parte, la necesidad de ocupar la menor cantidad posible de memoria se debe a que, a la vez que se mantiene en cabecera, tiene que dejar espacio para que pueda desarrollarse el proyecto en cuestión. Esto propicia una plena optimización de la producción.

Para ilustrar esto que estamos comentando, podemos decir que el método AGILE, a través de su correspondiente ‘framework’, se encarga de estructurar el proyecto en iteraciones, es decir, en objetivos concretos que se reparten entre cada equipo de trabajo y que tienen siempre entre ceja y ceja el usuario final. Evidentemente, cada uno de esos objetivos tiene sus propios requerimientos.

El objetivo de la metodología es que cada una de las iteraciones que forman parte del proyecto funcionen de manera totalmente independiente de las demás. Sin embargo, el desarrollo de estas se hace en base al de los demás. Por lo tanto, cuando hay algún problema en una en concreto, las otras pueden seguir trabajando con esa cuestión ya subsanada sin necesidad de deshacer lo que ya estaba acabado.

Al seguir esta metodología, el proyecto informático evoluciona incrementalmente, no linealmente ni secuencialmente como sucede en el método de cascada. Por su parte, cada una de las iteraciones se limitan en el tiempo a un plazo bastante corto. De este modo, el ‘feedback’ con el cliente puede mantenerse antes y la resolución de problemas llega más rápido. De hecho, en las siguientes fases, al contar con una base sólida, pueden hacer un trabajo más certero y eficaz.

Conclusiones sobre el método AGILE

En definitiva, el método AGILE ha supuesto una revolución dentro del sector de la informática porque consigue solucionar uno de los grandes problemas del método de cascada. Y es que, al hacer que los proyectos crezcan incrementalmente y no secuencialmente, el problema que suponía una rectificación o corrección a última hora y su consecuente revisión de todo el código desaparece por completo. Además, los equipos de trabajo se sienten más libres, autónomos y gozan de una mayor responsabilidad. Sin duda, claves que están empujando a las empresas a adoptar estos mecanismos en su día a día.
Método AGILE en informática
5 (100%) 1 vote