Agilismo

Resultado de imagen de agilismo

¿Qué es?

Es la habilidad para adaptarse a los cambios que vayan surgiendo durante el desarrollo del producto.

¿Por qué surge?

El agilismo es una respuesta a los fracasos y las frustraciones del modelo en cascada.

¿Cuando surge?

En el año 2001, diecisiete representantes de nuevas metodologías y críticos de los modelos de mejora basados en procesos se reunieron, convocados por Kent Beck, para discutir sobre el desarrollo de software.

Entre todo sacan en común el Manifiesto Ágil:

Individuos e interacciones sobre procesos y herramientas

Software que funciona sobre documentación exhaustiva

Colaboración con el cliente sobre negociación de contratos

Responder ante el cambio sobre seguimiento de un plan

Esto es, aunque los elementos a la derecha tienen valor, nosotros valoramos por encima de ellos los que están a la izquierda.

Además se extraen los 12 Principios del Manifiesto Ágil para entender ésta filosofía.

¿Que método sigue?

El abanico de metodologías ágiles es amplio, existiendo métodos para organizar equipos y técnicas para escribir y mantener el software.

¿Qué reconoce?

  • Que el software es propenso a errores por la naturaleza de quienes lo fabrican y lo que hace es tomar medidas para minimizar sus efectos nocivos desde el principio.
  • Que los humanos nos equivocamos con frecuencia y propone técnicas
    que nos aportan confianza a pesar ello. La automatización de procesos
    es uno de sus pilares.

¿Qué se consigue?

  • Reducir los problemas clásicos de los programas.
  • Dar más valor a las personas que componen el equipo de desarrollo del proyecto.

¿Por cuantas fases pasa un proyecto Ágil?

Al igual que en el modelo tradicional, existen fases de análisis, desarrollo y pruebas pero, en lugar de ser consecutivas, están solapadas. Esta combinación de etapas se ejecuta repetidas veces en lo que se denominan iteraciones.

En cada iteración se realizan las siguientes acciones:

  • Hablar con el cliente para analizar requerimientos
  • Escribir pruebas automatizadas
  • Escribir líneas de código nuevas
  • Mejorar código existente.

Al finalizar cada iteración se le muestra al cliente los resultados para comprobar su aceptación e incidir sobre los detalles que se estimen oportunos.