CICLO DE VIDA Y MODELO EN CASCADA

14

Transcript of CICLO DE VIDA Y MODELO EN CASCADA

Page 1: CICLO DE VIDA Y MODELO EN CASCADA
Page 2: CICLO DE VIDA Y MODELO EN CASCADA

DESCRIPCIONEl término ciclo de vida del software describe el

desarrollo de software, desde la fase inicial hasta la fase final. El propósito de este programa es definir las distintas fases intermedias que se requieren para validar el desarrollo de la aplicación, es decir, para garantizar que el software cumpla los requisitos para la aplicación y verificación de los procedimientos de desarrollo: se asegura de que los métodos utilizados son apropiados.

Estos programas se originan en el hecho de que es muy costoso rectificar los errores que se detectan tarde dentro de la fase de implementación. El ciclo de vida permite que los errores se detecten lo antes posible y por lo tanto, permite a los desarrolladores concentrarse en la calidad del software, en los plazos de implementación y en los costos asociados.

Page 3: CICLO DE VIDA Y MODELO EN CASCADA

Definición de objetivos: definir el resultado del proyecto y su papel en la estrategia global.

Análisis de los requisitos y su viabilidad: recopilar, examinar y formular los requisitos del cliente y examinar cualquier restricción que se pueda aplicar.

Diseño general: requisitos generales de la arquitectura de la aplicación.

Diseño en detalle: definición precisa de cada subconjunto de la aplicación.

Programación (programación e implementación): es la implementación de un lenguaje de programación para crear las funciones definidas durante la etapa de diseño.

Prueba de unidad: prueba individual de cada subconjunto de la aplicación para garantizar que se implementaron de acuerdo con las especificaciones.

El ciclo de vida básico de un software consta de los

siguientes procedimientos:

Page 4: CICLO DE VIDA Y MODELO EN CASCADA

Integración: para garantizar que los diferentes módulos se integren con la aplicación. Éste es el propósito de la prueba de integración que está cuidadosamente documentada.

Prueba beta (o validación), para garantizar que el software cumple con las especificaciones originales.

Documentación: sirve para documentar información necesaria para los usuarios del software y para desarrollos futuros.

Implementación Mantenimiento: para todos los procedimientos correctivos

(mantenimiento correctivo) y las actualizaciones secundarias del software (mantenimiento continuo).

El orden y la presencia de cada uno de estos procedimientos en el ciclo de vida de una aplicación dependen del tipo de modelo de ciclo de vida acordado entre el cliente y el equipo de desarrolladores.

Page 5: CICLO DE VIDA Y MODELO EN CASCADA

Distribución del coste del ciclo de vida:

Page 6: CICLO DE VIDA Y MODELO EN CASCADA

El mantenimiento del software es una importante tarea que habitualmente requiere entre el 70% y 80% del coste del ciclo de vida del producto. Esto es debido a múltiples factores, entre los que podemos encontrar:

Inexistencia de métodos, técnicas y herramientas que puedan proporcionar una solución global al mantenimiento.

La complejidad de los sistemas se incrementa paulatinamente por la realización de continuas modificaciones.

La documentación del sistema es defectuosa e inexistente. Se considera el mantenimiento como una actividad poco

creativa, a diferencia del desarrollo. Las actividades de mantenimiento se suelen realizar bajo

presión de tiempo. Poca participación del usuario durante el desarrollo del

sistema.

Page 7: CICLO DE VIDA Y MODELO EN CASCADA

MODELO EN CASCADAEl ciclo de vida inicialmente propuesto por

Royce en 1970, fue adaptado para el software a partir de ciclos de vida de otras ramas de la ingeniería. Es el primero de los propuestos y el más ampliamente seguido por las organizaciones (se estima que el 90% de los sistemas han sido desarrollados así).

Page 8: CICLO DE VIDA Y MODELO EN CASCADA
Page 9: CICLO DE VIDA Y MODELO EN CASCADA

DESCRIPCIÓN Este modelo admite la posibilidad de hacer iteraciones, es

decir, durante las modificaciones que se hacen en el mantenimiento se puede ver por ejemplo la necesidad de cambiar algo en el diseño, lo cual significa que se harán los cambios necesarios en la codificación y se tendrán que realizar de nuevo las pruebas, es decir, si se tiene que volver a una de las etapas anteriores al mantenimiento hay que recorrer de nuevo el resto de las etapas.

Después de cada etapa se realiza una revisión para comprobar si se puede pasar a la siguiente.

Trabaja en base a documentos, es decir, la entrada y la salida de cada fase es un tipo de documento específico. Idealmente, cada fase podría hacerla un equipo diferente gracias a la documentación generada entre las fases. Los documentos son:

Page 10: CICLO DE VIDA Y MODELO EN CASCADA

Análisis: Toma como entrada una descripción en lenguaje natural de lo que quiere el cliente. Produce el S.R.D. (Software Requirements Document).

Diseño: Su entrada es el S.R.D. Produce el S.D.D. (Software Design Document)

Codificación: A partir del S.D.D. produce módulos. En esta fase se hacen también pruebas de unidad.

Pruebas: A partir de los módulos probados se realiza la integración y pruebas de todo el sistema. El resultado de las pruebas es el producto final listo para entregar.

Page 11: CICLO DE VIDA Y MODELO EN CASCADA

VENTAJASLa planificación es sencilla. La calidad del producto resultante es alta. Permite trabajar con personal poco

cualificado.

Page 12: CICLO DE VIDA Y MODELO EN CASCADA

INCONVENIENTESLo peor es la necesidad de tener todos los

requisitos al principio. Lo normal es que el cliente no tenga perfectamente definidas las especificaciones del sistema, o puede ser que surjan necesidades imprevistas.

Si se han cometido errores en una fase es difícil volver atrás.

No se tiene el producto hasta el final, esto quiere decir que:

Page 13: CICLO DE VIDA Y MODELO EN CASCADA

Si se comete un error en la fase de análisis no lo descubrimos hasta la entrega, con el consiguiente gasto inútil de recursos.

El cliente no verá resultados hasta el final, con lo que puede impacientarse .

Es comparativamente más lento que los demás y el coste es mayor también.

Page 14: CICLO DE VIDA Y MODELO EN CASCADA

TIPOS DE PROYECTOS PARA LOS QUE ES ADECUADO

Aquellos para los que se dispone de todas las especificaciones desde el principio, por ejemplo, los de reingeniería.

Se está desarrollando un tipo de producto que no es novedoso.

Proyectos complejos que se entienden bien desde el principio.