Conoce la metodología Agile y porqué deberías usarla

· 3 min de lectura
Conoce la metodología Agile y porqué deberías usarla

Un poco de historia...

En la década de los 90, conforme la informática tuvo más presencia en la vida de las empresas, el desarrollo de software vivió una crisis. Los expertos en la industria del desarrollo estimaban que la producción era de unos tres años.

El problema es que las empresas tenían la necesidad de estar en cambios constantes, evolucionar y por ende los proyectos de desarrollo se quedaban varados porque ya no cumplían las necesidades actuales de las empresas.

Jon Kern, un ingeniero que ya estaba frustrado por el método que se usaba en aquella época, el método de cascada. Fue uno de los 17 lideres que comenzaron a hablar sobre formas mas sencillas para el desarrollo de software.
Fue entonces en el año 2001 cuando este grupo de personas se reunieron en una estación de esquí de Utah, incluyendo a representantes de otros métodos y procesos, que simpatizaron con el objetivo, la nueva alternativa de desarrollo. Así nació el Manifiesto Agile.

16hZvHeruYsk0qxafTLxVew
Imagen de AgileLounge

Pero, ¿en qué consiste?
No buscaban remplazar la metodología, querían restaurar la credibilidad de la palabra, buscaban restablecer el equilibrio, adoptaron el modelado, pero no con el fin de que este terminara archivado, se adoptó la documentación, pero de una forma más resumida y que fuera realmente útil.

Buscaban que el software se construyera rápidamente y que se pusiera en manos de los usuarios finales. Este enfoque proporcionó un par de beneficios importantes.

Si permitió a los usuarios obtener los beneficios de forma más rápida, pero también permitió que el equipo de desarrollo pudiera obtener información más rápida sobre el alcance y hacia donde iba la dirección del proyecto que iban a desarrollar.

Los valores del Manifiesto
Desde los inicios el manifiesto se rige por estos 4 valores principales:

  • Individuos e interacciones sobre procesos y herramientas
  • Software funcionando sobre documentación extensiva
  • Colaboración con el cliente sobre negociación contractual
  • Respuesta ante el cambio sobre seguir un plan

methodology-four-core-values
Imagen de Selleo

Principios de Agile
Para poder aplicar la metodología Agile es importante seguir los doce principios establecidos en el manifiesto

1.- Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continua de software con valor.

2.- Aceptamos que los requisitos cambien, incluso en etapas tardías del desarrollo. Los procesos Ágiles aprovechan el cambio para proporcionar ventaja competitiva al cliente.

3.- Entregamos software funcional frecuentemente, entre dos semanas y dos meses, con preferencia al periodo de tiempo más corto posible.

4.- Los responsables de negocio y los desarrolladores trabajamos juntos de forma cotidiana durante todo el proyecto.

5.- Los proyectos se desarrollan en torno a individuos motivados. Hay que darles el entorno y el apoyo que necesitan, y confiarles la ejecución del trabajo.

6.- El método más eficiente y efectivo de comunicar información al equipo de desarrollo y entre sus miembros es la conversación cara a cara.

7.- El software funcionando es la medida principal de progreso.

8.- Los procesos Ágiles promueven el desarrollo sostenible. Los promotores, desarrolladores y usuarios debemos ser capaces de mantener un ritmo constante de forma indefinida.

9.- La atención continua a la excelencia técnica y al buen diseño mejora la Agilidad.

10.- La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado, es esencial.

11.- Las mejores arquitecturas, requisitos y diseños emergen de equipos auto-organizados.

12.- A intervalos regulares el equipo reflexiona sobre cómo ser más efectivo para a continuación ajustar y perfeccionar su comportamiento en consecuencia.

Las reuniones Agile
En la forma Agile, las reuniones del equipo son al incio del día y unicamente son para poner en contexto el estado de las tareas de los proyectos, deben durar de 15 a 20 minutos y todos los responsables de los departamentos deben aportar su estado a la reunión. En caso de que salga a tema una tarea en la que se estancó algun miembro del equipo, el responsable le asignará más personal o personal de ayuda para resolverla, pero nunca se tocará a fondo en la junta matutina.

En resumen...
Agile no es una simple metodología, es el conjunto de valores y principios los cuales evitan los problemas más típicos al momento de desarrollar software y permiten la agilidad y productividad del equipo al momento del desarrollo del proyecto.

Si te gustó déjalo saber en los comentarios, en el siguiente post te hablaré de todos los roles que conforman un equipo en el desarrollo ágil de software.