Metodologías Agile

Metodologías / 20.03.20180 comments

Metodologías Agile

Este post una introducción breve sobre algo que se oye ahora con tanta frecuencia pero que no es nuevo: “Metodologías Agile”.

Hoy en día, la información, los productos, los procesos,… todo se mueve y cambia a una velocidad vertiginosa. Para poder estar alineados con las necesidades cambiantes de la sociedad y de los usuarios, las empresas necesitan ser ágiles para moverse al mismo ritmo reduciendo así los tiempos de respuesta y ganando ventajas competitivas.

Esto es posible abandonando las estructuras tradicionales y jerarquizadas y adaptando metodologías agile a cada uno de los procesos y productos de cada empresa.

Vale, ¿pero qué es esto de agile?

Se llaman metodologías agile a aquellas que sirven para gestionar y desarrollar proyectos de una forma más ágil, completa, verificada y rápida.

Se basan en un desarrollo iterativo e incremental, es decir, se van realizando entregas continuas y se van validando estas, de forma que si se quiere corregir o mejorar algo se puede abordar antes, no se ha de esperar a que esté todo el proyecto terminado y sólo se hacen cambios sobre la parte implicada. Así mismo, los requisitos se van detallando por partes y evolucionan según avanza el desarrollo.

Son lo contrario a las metodologías tradicionales tipo cascada o similar, donde había que tener la definición de requisitos, el análisis funcional y todos los recursos disponibles antes de comenzar el desarrollo. Esto hacía que un proyecto de, por ejemplo, sólo uno o dos años, saliera estando, en parte, obsoleto (acorde a las últimas tendencias tecnológicas y de mercado) o sin estar al día de las necesidades de los usuarios. Esto suponía volver a rehacer partes del proyecto durante mucho tiempo por lo que se volvía a estar en la misma situación.

Por ejemplo, comenzamos un nuevo proyecto y lo dividimos en operativas, a su vez estas operativas en funcionalidades y cada una de estas funcionalidades en tareas. Planificamos que vamos a hacer entregas cada 3 semanas (sprints). Así que, en cada uno de estos sprints incluimos varias de estas tareas de forma que en cada sprint se desarrollarán dichas tareas y se comenzará con el análisis en detalle de las tareas del siguiente. Y cada vez que se acabe un sprint se validarán las tareas desarrolladas y se tomarán decisiones de mejora o evolución de algunas de ellas. De forma que el proyecto se va desarrollando, testeando y evolucionado paulatinamente. Además, es posible acordar otras entregas que comprendan varios sprints, de forma que en cada una de estas entregas totales se obtenga un producto mínimo viable que se puede sacar al mercado mientras se va desarrollando el resto de funcionalidades u operativas que lo vayan ampliando. Así se obtiene feedback del mercado, y se puede modificar o eliminar algo que estaba planeado.

Por tanto, las metodologías agile agilizan el proceso de desarrollo y permiten reducir sensiblemente el tiempo del mismo y sobre todo aseguran mayor calidad del producto porque se van testeando con cada entrega que es cada poco tiempo. Además, otra de las ventajas es que el equipo es multidisciplinar pero la organización del trabajo de todos es sencilla y clara.

La metodología agile más conocida es Scrum. Últimamente, cada vez se habla más de Lean (y Lean Startup) y de Extreme Programing (XP).

Cada empresa (sea del tipo que sea) adapta la metodología agile que haya elegido conforme a sus necesidades. Un ejemplo de esto y un caso de éxito claro es Spotify. En otro post hablaré de ello.

Si te ha gustado, ¡comparte!

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>