Académique Documents
Professionnel Documents
Culture Documents
Re- espicificacin
Incremental y Espiral
Ingeniera del Software, 7 Edicin, por Ian Sommerville, 4.1.2. Desarrollo Evolutivo: se basa en la idea de desarrollar una implementacin inicial, exponindola a los comentarios del usuario y refinndola a travs de las diferentes versiones hasta que se desarrolla un sistema adecuado. Las actividades de especificacin, desarrollo y validacin se entrelazan, en vez de separarse, con una rpida retroalimentacin entre stas.
Figura Ilustrativa
Iteracin de procesos
Ian Sommerville, 4.2
Los cambios son inevitables en todos los proyectos de software grandes. Hay cambios cuando: El negocio cambia por presiones externas. Las prioridades de gestin cambian. Cuando se dispone de nuevas tecnologas, cambian los diseos y la implementacin.
Iteracin de procesos
El proceso del software no es un proceso nico. Las actividades del proceso se repiten regularmente a medida que el sistema se va rehaciendo, en respuesta a peticiones de cambios. Hay dos modelos de procesos para apoyar esta iteracin : 1. Entrega incremental. La especificacin, el diseo y la implementacin del software se dividen en una serie de incrementos, que se desarrollan por turnos. 2. Desarrollo en espiral. El desarrollo del sistema gira en espiral hacia fuera, empezando con un esbozo inicial y terminando con el desarrollo final.
Iteracin de procesos
En los procesos iterativos, la especificacin se desarrolla junto con el software. Inconvenientes => conflictos en los contratos de desarrollo de software; donde se requiere una especificacin completa del sistema previa, como etapa de evaluacin del del contrato. En el enfoque incremental, no existe una especificacin completa del sistema hasta que llegamos al incremento final.
Desarrollo en espiral
Figura Ilustrativa
Desarrollo en espiral
La consideracin del RIESGO
La diferencia principal entre el modelo en espiral y los otros modelos es la consideracin explcita del riesgo en el modelo en espiral. El riesgo significa sencillamente que algo puede ir mal. Por ejemplo, si se quiere utilizar un nuevo lenguaje de programacin, un riesgo es que los compiladores disponibles sean poco fiables o que no produzcan cdigo objeto suficientemente eficiente.