2. Desarrollo de software adaptativo
• Es una metodología impulsada por Jim Highsmith en 1998 como
una técnica basada en propuestas agiles para construir en un
software y sistemas muy complejos. No ofrece un ciclo de vida
estático (planear-diseñar-construir), ya que nos ofrece un ciclo de
vida iterativo, donde cada ciclo puede ser modificado al tiempo
que otro es ejecutado.
3. Características
1. Trabajo orientado y guiado por la misión del proyecto
2. Orientado a los componentes software mas que a las tareas.
3. Tolerante a los cambios.
4. Guiado por los riesgos.
5. La revisión de los componentes sirve para aprender de los
errores y volver a iniciar el ciclo de desarrollo.
4. Su ciclo utilizado es conocido como:
• Especular-colaborar-aprender, el
cual está dedicado a un constante
aprendizaje y colaboración entre
desarrollador y cliente.
COLABORACION
APRENDIZAJE
ESPECULACION
5.
6. Especulación
1. Inicio, para determinar la misión del proyecto.
2. Fijación del marco temporal del proyecto.
3. Determinación de número de iteraciones y
la duración de cada una.
4. Definición de objetivo de cada iteración.
5. Asignación de funcionalidad de cada iteración.
7. Colaboración
• Su Componente es como un grupo de funcionalidades o
entregables a ser desarrollados durante un ciclo iterativo.
Puede existir la posibilidad de explorar nuevas alternativas,
realizar pruebas de concepto, pudiendo eventualmente alterar
el rumbo del proyecto profundamente.
8. Aprendizaje
En cada iteración se revisa:
1. Calidad del producto desde el punto de vista del cliente.
2. Calidad del producto desde el punto de vista de los
desarrolladores.
3. Funcionalidad desarrollada.
4. Estado del proyecto
9. Ventajas
• Se utiliza para poder aprender de los errores e iniciar nuevamente
el ciclo de desarrollo.
• Utiliza información disponible acerca de todos los cambios para
poder mejorar el comportamiento del Software.
• Promulga la colaboración y la interacción de personas.
• Apunta hacia el Rapid Application Development (RAD), el cual
enfatiza velocidad de desarrollo para crear un producto de alta
calidad, bajo mantenimiento involucrando al usuario lo más
posible.
10. Desventajas
• Los errores y cambios que no son detectados con
anterioridad afectan la calidad del producto y su costo total.
• Ya que esta es una metodología ágil, no permite realizar
procesos que son requeridos en las metodologías
tradicionales.