El desarrollo incremental de software propone un enfoque evolutivo para el desarrollo de software mediante la implementación de la funcionalidad en incrementos iterativos, lo que permite entregas parciales y oportunidades para realimentación temprana. Fue propuesto por Harlan Mills en 1980 para reducir la repetición de trabajo y aplazar decisiones sobre requisitos hasta adquirir experiencia con el sistema. Cada incremento produce una mejora al software al agregar nueva funcionalidad o requisitos.
3. Surgió como una forma de reducir la repetición del
trabajo en el desarrollo y dar oportunidad de
retrasar la toma de decisiones en los requisitos
hasta adquirir experiencia con el sistema.
También se conoce como:
• Método de las comparaciones limitadas
sucesivas.
• Ciencia de salir del paso.
• Método de atacar el problema por ramas.
4. Aplica secuencias lineales de forma escalonada
mientras progresa el tiempo en el calendario. Cada
secuencia lineal produce un incremento del
software.
5. • Con un paradigma incremental se
reduce el tiempo de desarrollo inicial,
ya que se implementa la funcionalidad
parcial.
• También provee un impacto ventajoso
frente al cliente, que es la entrega
temprana de partes operativas del
software.
• El modelo proporciona todas las
ventajas del modelo en Cascada
realimentado, reduciendo sus
desventajas sólo al ámbito de cada
incremento.
• Resulta más sencillo acomodar
cambios al acotar el tamaño de los
incrementos.
6. • El modelo incremental no es
recomendable para casos de
sistemas de tiempo real, de alto nivel
de seguridad, de procesamiento
distribuido y/o de alto índice de
riesgos.
• Requiere de mucha planeación,
tanto administrativa como técnica.
• Requiere de metas claras para
conocer el estado del proyecto.
• Difícil de evaluar el coste total.
• Los errores en los requisitos se
detectan tarde.
7. Un modelo incremental lleva a pensar en un desarrollo
modular, con entregas parciales del producto Software
denominados "incrementos" del sistema, que son
escogidos en base a prioridades predefinidas de algún
modo.
El modelo permite una implementación con ampliación o
mejoras sucesivas.
Con cada incremento se agrega nueva funcionalidad o se
cubren nuevos requisitos o bien se mejora la versión
previamente implementada del producto software.