Desarrollo de software adaptativo - Evolución

Los modelos SDLC anteriores están más orientados a las prácticas de estabilidad, previsibilidad y rendimientos decrecientes. La industria, como las plataformas de Internet, se ha estado moviendo para aumentar los entornos de retorno, enfoques impredecibles, no lineales y rápidos.

El desarrollo de software adaptativo (ASD) ha evolucionado para abordar estos problemas. Se centra en la emergencia como el factor más importante desde la perspectiva de la administración, para mejorar la capacidad de administrar el desarrollo de productos.

En palabras de Jim Highsmith, “El marco de desarrollo de software adaptativo se basa en años de experiencia con metodologías tradicionales de desarrollo de software, consultoría, práctica y escritura sobre técnicas de desarrollo rápido de aplicaciones (RAD) y trabajo con compañías de software de alta tecnología en la gestión del desarrollo de sus productos. prácticas ".

Se encuentra que el modelo de cascada se caracteriza por la linealidad y la previsibilidad, con una escasa retroalimentación. Se puede ver como una secuencia de Plan → Construir → Implementar .

Modelo de cascada

Los modelos del ciclo de vida evolutivo, como el modelo espiral, trasladaron el enfoque determinista al adaptativo, con Plan → Construir → Revisar ciclos .

Ciclo de vida evolutivo

Sin embargo, la mentalidad de los practicantes se mantuvo determinista con una previsibilidad a largo plazo que se convirtió en previsibilidad a corto plazo. Las prácticas de los modelos del ciclo de vida evolutivo, como RAD, son menos deterministas.

El ciclo de vida adaptativo

El modelo adaptativo se construye desde un punto de vista diferente. Aunque cíclico como el modelo evolutivo, los nombres de la fase reflejan la naturaleza impredecible de sistemas cada vez más complejos.

El desarrollo adaptativo va más allá de su herencia evolutiva en dos formas clave:

  • Reemplaza explícitamente el determinismo con la emergencia.

  • Va más allá de un cambio en el ciclo de vida a un cambio más profundo en el estilo de gestión.

Ciclo de vida de desarrollo adaptativo S / W

Las tres fases en el ciclo de vida de desarrollo de software adaptativo son:

  • Speculate : Speculate reemplaza la planificación de palabras determinista, la planificación de especificaciones de productos o la planificación de tareas de gestión de proyectos.

  • Colaborar : colaborar representa un equilibrio entre

    • Gestión en el sentido tradicional de gestión de proyectos, y

    • Crear y mantener el entorno colaborativo necesario para la emergencia.

  • Las actividades de colaboración crean productos, manteniendo el ritmo de los cambios en el medio ambiente.

  • Learn : Learn tiene como objetivo, tanto a los desarrolladores como a los clientes, utilizar los resultados de cada ciclo de desarrollo para aprender la dirección del siguiente.