Está en la página 1de 14

DESCRIPCION

 El 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.
El ciclo de vida básico de un software
consta de los siguientes
procedimientos:
 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.
 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.
Distribución del coste del
ciclo de vida:
 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.
MODELO EN CASCADA
 El 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í).
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:
 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.
VENTAJAS
 La planificación es sencilla.
 La calidad del producto resultante es alta.
 Permite trabajar con personal poco cualificado.
INCONVENIENTES
 Lo 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:
 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.
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.

También podría gustarte