Agile (ES)
Metodología ágil de desarrollo es un término general para una serie de enfoques y prácticas basados en los valores del Manifiesto para el Desarrollo Ágil de Software y los 12 principios que lo sustentan. Las metodologías ágiles incluyen, en particular, la programación extrema, DSDM, Scrum, FDD, BDD y otras.
Entre los métodos «ágiles» se incluyen, en particular, XP, DSDM, scrum, FDD y BDD.
La mayoría de los métodos «ágiles» tienen como objetivo minimizar los riesgos dividiendo el tiempo de desarrollo en iteraciones (períodos), que son intervalos de tiempo de duración relativamente corta. Una iteración suele durar de dos a tres semanas, se asemeja a un proyecto de software en miniatura e incluye las siguientes tareas necesarias para lograr un pequeño incremento en la funcionalidad: planificación, análisis de requisitos, diseño, programación, pruebas y documentación. Normalmente, una sola iteración no es suficiente para lanzar una nueva versión del software, pero se entiende que al final de la iteración, la nueva versión del software está lista para ser lanzada. Al finalizar la iteración, el equipo reevalúa las prioridades de desarrollo.
Los métodos «ágiles» se basan en la comunicación cara a cara. La mayoría de las personas trabajan en una misma oficina, a veces llamada en inglés bullpen. En la oficina trabaja como mínimo un «cliente» (en inglés, product owner), que es el cliente del desarrollo de software o un representante del cliente que define los requisitos del software. El rol del «cliente» puede ser desempeñado por un gerente de proyecto, un analista de negocio o el propio cliente. En la oficina también pueden trabajar probadores, diseñadores de interfaz, redactores técnicos y gerentes.
Las métricas de los métodos «ágiles» están relacionadas con el funcionamiento del software que se está creando. Los practicantes de métodos «ágiles» (en comparación con los de otros métodos) se comunican más y escriben menos documentación, por lo que a veces se les considera menos disciplinados.