iadsi - ciclos de vida

Upload: natanael-macias

Post on 10-Mar-2016

218 views

Category:

Documents


0 download

DESCRIPTION

modelos de IADSI

TRANSCRIPT

Presentacin de PowerPoint

11/01/20161CICLOS DE VIDA DEL SOFTWAREVer. 2.0 Enero - 2016 Elaborado por:

Cuerpo Acadmico Grupo de Desarrollo de Proyectos de IngenieraCICLOS DE VIDA DEL SOFTWARE11/01/20162CICLOS DE VIDA DEL SOFTWARE2LINEALLas etapas son realizadas en forma lineal (una tras otra).Cada etapa se realiza una sola vez.Es fcil dividir las tareas y prever los tiemposCada etapa debe ser independiente y no tener retroalimentacin.

11/01/20163CICLOS DE VIDA DEL SOFTWARELINEALVentajasSencillez en su gestinAdministracin econmicaPara programas muy pequeos

DesventajasUsual para sistemas ABCNo apto para sistemas con requerimientos de retroalimentacin entre etapas11/01/20164CICLOS DE VIDA DEL SOFTWARECASCADA PUROPropuesto por Wiston Royce en 1970, admite iteraciones, contrario a la creencia de que es un ciclo de vida secuencial como el lineal.

Despus de cada etapa se realizan revisiones para comprobar si se puede pasar a la siguiente.

Es un modelo rgido, poco flexible y con muchas restricciones.11/01/20165CICLOS DE VIDA DEL SOFTWARECASCADA PURO

11/01/20166CICLOS DE VIDA DEL SOFTWARECASCADA PUROVentajasPlanificacin sencillaElevado grado de calidadPersonal poco calificadoAdecuado para un producto con funcionalidades conocidas

DesventajasSe deben tener todos los requerimientos al inicioEs costosa y difcil la correccin de erroresLos resultados son visibles hasta el final del proyecto11/01/20167CICLOS DE VIDA DEL SOFTWARECICLO EN VDiseado por Alan Davis, contiene las mismas fases que el ciclo en cascada. A este se le agregaron 2 subetapas de retroalimentacin entre las etapas de anlisis y mantenimiento y entre las de diseo y debugging.11/01/20168CICLOS DE VIDA DEL SOFTWARE

CICLO EN VLas ventajas y desventajas de este modelo son las mismas del ciclo anterior, con el agregado de los controles cruzados entre etapas para lograr una mayor correccin.

Se puede utilizar en aplicaciones simples que requieren de una confiabilidad muy alta.11/01/20169CICLOS DE VIDA DEL SOFTWARESASHIMIEs parecido al ciclo en cascada puro, con la diferencia de que en este se pueden solapar las etapas, con lo cual se aumenta la eficiencia ya que la retroalimentacin entre etapas se encuentra implcita en el modelo.11/01/201610CICLOS DE VIDA DEL SOFTWARE

SASHIMIVentajasGanancia de calidad en el producto finalNo es necesaria una documentacin tan detalladatil para aplicaciones desarrolladas en capas

DesventajasDifcil gestionar el inicio y fin de cada etapaProblemas de comunicacin

11/01/201611CICLOS DE VIDA DEL SOFTWARE

CASCADA C/ SUBPROYECTOSSigue el ciclo de vida en cascada. Cada una se divide en subetapas independientes que se pueden desarrollar en paralelo11/01/201612CICLOS DE VIDA DEL SOFTWARECASCADA C/ SUBPROYECTOSVentajasSe puede tener mas gente trabajando de forma simultneaSe reducen los tiempos de entrega del producto

DesventajasPueden surgir dependencias entre las subetapasMs difcil de administrar11/01/201613CICLOS DE VIDA DEL SOFTWAREITERATIVODerivado del ciclo en cascada, busca reducir el riesgo que surge entre las necesidades del usuario y el producto final por malos entendidos durante la etapa de solicitud de requerimientos.

Es la iteracin del ciclo en cascada. Al final de cada iteracin se entrega al cliente una versin mejorada o con mayores funcionalidades del producto.

Estas se repiten hasta que el cliente obtenga un producto que le satisfaga11/01/201614CICLOS DE VIDA DEL SOFTWAREITERATIVO11/01/201615CICLOS DE VIDA DEL SOFTWARE

ITERATIVOVentajastil en proyectos en los que los requerimientos no son claros.til para aplicaciones medianas y grandes.Para aplicaciones en las que el usuario no necesita de toda la funcionalidad del sistemaIdeal para sistemas que se deben migrar paulatinamente11/01/201616CICLOS DE VIDA DEL SOFTWAREPROTOTIPOSSi no se conoce como desarrollar un producto determinado las especificaciones precisas, suele recurrirse a especificaciones iniciales para hacer un prototipo.

El objetivo es lograr un producto intermedio, antes de realizar el producto final, para conocer mediante el prototipo como respondern las funcionalidades previstas en el producto final.11/01/201617CICLOS DE VIDA DEL SOFTWAREPROTOTIPOSSi no se conoce como desarrollar un producto determinado las especificaciones precisas, suele recurrirse a especificaciones iniciales para hacer un prototipo.

El objetivo es lograr un producto intermedio, antes de realizar el producto final, para conocer mediante el prototipo como respondern las funcionalidades previstas en el producto final.11/01/201618CICLOS DE VIDA DEL SOFTWAREPROTOTIPOS11/01/201619CICLOS DE VIDA DEL SOFTWARE

PROTOTIPOSVentajasPara el desarrollo de productos con innovaciones importantes.Productos con tecnologas nuevas o poco usadas.Apto para desarrollo de proyectos con conocimiento a posteriori

DesventajasAltamente costosoDifcil para la administracin temporal11/01/201620CICLOS DE VIDA DEL SOFTWAREEVOLUTIVOEste modelo acepta que los requerimientos del usuario puedan cambiar en cualquier momento.

Es difcil obtener todos los requerimientos al inicio del proyecto, por diversas razones.

Este ciclo afronta el problema mediante una iteracin de ciclos requerimientos desarrollo evaluacin.11/01/201621CICLOS DE VIDA DEL SOFTWAREEVOLUTIVO11/01/201622CICLOS DE VIDA DEL SOFTWARE

EVOLUTIVOVentajastil cuando se desconocen la mayora de requerimientos iniciales o no estn completos.

DesventajasDifcil determinar cuando se terminar el proyectoDifcil estimar el costo del proyecto.11/01/201623CICLOS DE VIDA DEL SOFTWAREINCREMENTALSe basa en la filosofa de construir incrementando las funcionalidades del programa.

Se hace mediante la construccin de mdulos que cumplen las diferentes funciones del sistema. Lo que permite incrementar gradualmente las capacidades del software.

Es una repeticin del ciclo en cascada aplicada a cada funcionalidad del sistema.11/01/201624CICLOS DE VIDA DEL SOFTWAREINCREMENTAL11/01/201625CICLOS DE VIDA DEL SOFTWARE

INCREMENTALVentajasConstruir un sistema pequeo es menos riesgoso que construir un sistema grande.Como se desarrollan independientemente las funcionalidades es mas fcil revelar los requerimientos del usuario.Si se detecta un error grave solo se deshecha la ultima iteracinFacilita la labor con la filosofa Divide y Vencerstil cuando se necesitan entregas rpidas aunque sean parciales.11/01/201626CICLOS DE VIDA DEL SOFTWAREESPIRALEs una variacin del prototipado, diseado por Boehm en 1988. Se basa en una serie de ciclos repetitivos para ir ganando madurez en el producto final.

Toma los beneficios del incremental y de prototipos, pero tiene mas en cuenta el concepto de riesgo debido a las incertidumbres e ignorancias en los requerimientos al inicio del proyecto.11/01/201627CICLOS DE VIDA DEL SOFTWAREESPIRAL11/01/201628CICLOS DE VIDA DEL SOFTWARE

ESPIRALVentajasSe puede iniciar con un alto grado de incertidumbreRiesgo bajo de retraso por la deteccin de errores.

DesventajasCosto temporal que suma cada vuelta de la espiralNecesidad de la presencia y comunicacin continua del cliente11/01/201629CICLOS DE VIDA DEL SOFTWAREESPIRALVentajasSe puede iniciar con un alto grado de incertidumbreRiesgo bajo de retraso por la deteccin de errores.

DesventajasCosto temporal que suma cada vuelta de la espiralNecesidad de la presencia y comunicacin continua del cliente11/01/201630CICLOS DE VIDA DEL SOFTWAREAGRUPAMIENTO (CLUSTER)Los desarrollos orientados a objetos estn basados en el producto, a diferencia de los estructurados que estn basados en el proyecto.

Para la cultura del proyecto se propone el modelo de agrupamiento. En el que la fase de generalizacin aparece combinada con la fase de validacin.

El concepto clave es el agrupamiento que es un conjunto de clases relacionadas con un objetivo comn.11/01/201631CICLOS DE VIDA DEL SOFTWAREAGRUPAMIENTO (CLUSTER)11/01/201632CICLOS DE VIDA DEL SOFTWARE

REMOLINODefinido por Rumbaugh en 1992, seala que las metodologas de desarrollo, no ofrecen una visin real del mismo, que es mucho mas desordenada e implica mltiples iteraciones.

El modelo en cascada asume solo una dimensin de iteracin consistente en la fase de proceso, pero pueden identificarse otras dimensiones como:11/01/201633CICLOS DE VIDA DEL SOFTWAREREMOLINOAmplitud.- Tamao del desarrollo.

Profundidad.- Nivel de abstraccin o detalle.

Madurez.- Grado de complecin, correccin y elegancia.

Alternativas.- Diferentes soluciones a un problema.

Alcance.- En cuanto a adjetivos del sistema, ya que los requisitos cambian a lo largo del tiempo.11/01/201634CICLOS DE VIDA DEL SOFTWAREPINBALLPropuesto por Ampler en 1994, la pelota representa un proyecto

El jugador es el equipo de desarrollo

Se procede de forma iterativa a encontrar clases, atributos, mtodos e interrelaciones y definir colaboraciones, herencia, agregacin y subsistemas.

Por ultimo se pasa a la programacin, prueba e implantacin.11/01/201635CICLOS DE VIDA DEL SOFTWAREPINBALLHay dos formas de jugar:

Seguro -> Tecnologas y mtodos probadosAl lmite -> Mayor riesgo, mas ventajas

En este ciclo de vida el factor ms importante es la habilidad del equipo de desarrollo.11/01/201636CICLOS DE VIDA DEL SOFTWAREFUENTEDefinido por Henderson Sellers y Edwards en 1990.

Es el ms conocido en el desarrollo OO.

Presenta alto grado de iteracin y solapamiento

En la base esta el anlisis de requerimientos, a partir del cual va creciendo el ciclo de vida, cayendo solo para mantenimiento.

La piscina sera el repositorio de clase.11/01/201637CICLOS DE VIDA DEL SOFTWAREFUENTE11/01/201638CICLOS DE VIDA DEL SOFTWARE