En este modelo los clientes identifican, a grandes rasgos, las funcionalidades que proporcionará el sistema,priorizandolos . Luego se definen varios incrementos en donde cada uno proporciona un subconjunto de la funcionalidad del sistema, entregando primero los de prioridad mas alta. En cada incremento se especifica con mas detalle los requerimientos y al completar cada incremento se entrega un sistema funcionando al cliente.
Ventajas
- En cada incremento los clientes reciben un software funcionando con las funcionalidades mas importantes.
- Los incrementos iniciales permiten afinar los requererimientos de etapas posteriores
- Bajo riesgo de fallo total del proyecto
- Las funcionalidades mas importantes reciben mas pruebas por ser los primeros en ser entregados
Desventajas
- Dificultad para dividir los requerimientos en incrementos de tamaño ideal
- Dificultad para identificar recursos comunes a todos los incrementos