SDLC – Modelo Iterativo

Anuncios

En el modelo Iterativo, el proceso iterativo comienza con una simple implementación de un pequeño conjunto de los requisitos del software y mejora iterativamente las versiones en evolución hasta que el sistema completo se implementa y está listo para ser desplegado.

Un modelo de ciclo de vida iterativo no intenta comenzar con una especificación completa de los requisitos. En su lugar, el desarrollo comienza especificando e implementando sólo una parte del software, que luego se revisa para identificar otros requisitos. Este proceso se repite, produciendo una nueva versión del software al final de cada iteración del modelo.

Modelo iterativo – Diseño

El proceso iterativo comienza con una simple implementación de un subconjunto de los requisitos del software y mejora iterativamente las versiones en evolución hasta que se implementa el sistema completo. En cada iteración, se realizan modificaciones de diseño y se añaden nuevas capacidades funcionales. La idea básica de este método es desarrollar un sistema a través de ciclos repetidos (iterativo) y en porciones más pequeñas a la vez (incremental).

La siguiente ilustración es una representación del modelo Iterativo e Incremental –

El desarrollo Iterativo e Incremental es una combinación tanto del diseño iterativo o método iterativo como del modelo de construcción incremental para el desarrollo. «Durante el desarrollo de software, más de una iteración del ciclo de desarrollo de software puede estar en curso al mismo tiempo». Este proceso puede describirse como un enfoque de «adquisición evolutiva» o de «construcción incremental»»

En este modelo incremental, todo el requisito se divide en varias construcciones. Durante cada iteración, el módulo de desarrollo pasa por las fases de requisitos, diseño, implementación y pruebas. Cada versión posterior del módulo añade funciones a la versión anterior. El proceso continúa hasta que el sistema completo está listo según el requisito.

La clave para un uso exitoso de un ciclo de vida de desarrollo de software iterativo es la validación rigurosa de los requisitos, y la prueba de verificación & de cada versión del software contra esos requisitos dentro de cada ciclo del modelo. A medida que el software evoluciona a través de ciclos sucesivos, las pruebas deben repetirse y ampliarse para verificar cada versión del software.

Modelo iterativo – Aplicación

Al igual que otros modelos de SDLC, el desarrollo iterativo e incremental tiene algunas aplicaciones específicas en la industria del software. Este modelo se utiliza con mayor frecuencia en los siguientes escenarios –

  • Los requisitos del sistema completo están claramente definidos y comprendidos.

  • Los requisitos principales deben ser definidos; sin embargo, algunas funcionalidades o mejoras solicitadas pueden evolucionar con el tiempo.

  • Hay una restricción de tiempo para el mercado.

  • Se está utilizando una nueva tecnología y el equipo de desarrollo la está aprendiendo mientras trabaja en el proyecto.

  • Los recursos con los conjuntos de habilidades necesarios no están disponibles y se planea utilizarlos en base a contratos para iteraciones específicas.

  • Hay algunas características y objetivos de alto riesgo que pueden cambiar en el futuro.

Modelo iterativo – Ventajas y desventajas

La ventaja de este modelo es que hay un modelo de trabajo del sistema en una etapa muy temprana del desarrollo, lo que hace más fácil encontrar defectos funcionales o de diseño. Encontrar los problemas en una fase temprana del desarrollo permite tomar medidas correctivas con un presupuesto limitado.

La desventaja de este modelo de SDLC es que sólo es aplicable a proyectos de desarrollo de software grandes y voluminosos. Esto se debe a que es difícil dividir un pequeño sistema de software en otros pequeños incrementos/módulos útiles.

Las ventajas del Modelo SDLC Iterativo e Incremental son las siguientes –

  • Algunas funcionalidades de trabajo pueden ser desarrolladas rápidamente y al principio del ciclo de vida.

  • Se obtienen resultados temprana y periódicamente.

  • Se puede planificar el desarrollo paralelo.

  • Se puede medir el progreso.

  • Es menos costoso cambiar el alcance/requisitos.

  • Se facilita la prueba y depuración durante la iteración más pequeña.

  • Los riesgos se identifican y se resuelven durante la iteración; y cada iteración es un hito fácil de gestionar.

  • Más fácil de gestionar el riesgo: la parte de alto riesgo se hace primero.

  • Con cada incremento se entrega un producto operativo.

  • Los problemas, retos y riesgos identificados en cada incremento pueden utilizarse/aplicarse al siguiente.

  • El análisis de riesgos es mejor.

  • Soporta los requisitos cambiantes.

  • El tiempo de funcionamiento inicial es menor.

  • Se adapta mejor a los proyectos grandes y de misión crítica.

  • Durante el ciclo de vida, el software se produce con antelación, lo que facilita la evaluación y los comentarios del cliente.

Las desventajas del Modelo SDLC Iterativo e Incremental son las siguientes –

  • Se pueden requerir más recursos.

  • Aunque el coste del cambio es menor, no es muy adecuado para los requisitos cambiantes.

  • Se requiere más atención de la dirección.

  • Pueden surgir problemas de arquitectura o diseño del sistema porque no se recogen todos los requisitos al principio del ciclo de vida completo.

  • La definición de los incrementos puede requerir la definición del sistema completo.

  • No es adecuado para proyectos pequeños.

  • La complejidad de la gestión es mayor.

  • Puede que no se conozca el final del proyecto, lo que supone un riesgo.

  • Se necesitan recursos muy cualificados para el análisis de riesgos.

  • El progreso de los proyectos depende en gran medida de la fase de análisis de riesgos.

Anuncios

.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.