Ciclos de Vida
Ciclos de Vida
Ciclos de Vida
Ingeniería en TIC
7ª 2020-1
Generalidades:
El modelo en cascada es un proceso de desarrollo secuencial, en el que el desarrollo
de software se concibe como un conjunto de etapas que se ejecutan una tras otra. Se
le denomina así por las posiciones que ocupan las diferentes fases que componen el
proyecto, colocadas una encima de otra, y siguiendo un flujo de ejecución de arriba
hacia abajo, como una cascada.
Características:
La característica es que este modelo asume que todo se lleva a cabo y tiene lugar tal
y como se había planeado en la fase anterior, y no es necesario pensar en asuntos
pasados que podrían surgir en la siguiente fase. Este modelo no funcionará
correctamente si se dejan asuntos de lado en la fase previa. La naturaleza secuencial
del modelo no permite volver atrás y deshacer o volver a hacer acciones.
Etapas del modelo:
Requisitos del software: En esta fase se hace un análisis de las necesidades
del cliente para determinar las características del software a desarrollar, y se
especifica todo lo que debe hacer el sistema sin entrar en detalles técnicos.
Hay que ser especialmente cuidadoso en esta primera fase, ya que en este
modelo no se pueden añadir nuevos requisitos en mitad del proceso de
desarrollo.
Diseño: En esta etapa se describe la estructura interna del software, y las
relaciones entre las entidades que lo componen.
Descompone y organiza el sistema en elementos que puedan elaborarse por
separado, aprovechando las ventajas del desarrollo en equipo. Como
resultado surge el SDD (Documento de Diseño del Software), que contiene
la descripción de la estructura relacional global del sistema y la
especificación de lo que debe hacer cada una de sus partes, así como la
manera en que se combinan unas con otras.
Eduar Farid Vanegas Galvis
Ingeniería en TIC
7ª 2020-1
Implementación: En esta fase se programan los requisitos especificados
haciendo uso de las estructuras de datos diseñadas en la fase anterior.La
programación es el proceso que lleva de la formulación de un problema de
computación, a un programa que se ejecute produciendo los pasos
necesarios para resolver dicho problema. Al programar, tenemos que realizar
actividades como el análisis de las condiciones, la creación de algoritmos, y
la implementación de éstos en un lenguaje de programación específico.
Verificación: Como su propio nombre indica, una vez se termina la fase de
implementación se verifica que todos los componentes del sistema
funcionen correctamente y cumplen con los requisitos. El objetivo de las
pruebas es el de obtener información de la calidad del software, y sirven
para: encontrar defectos o bugs, aumentar la calidad del software, refinar el
código previamente escrito sin miedo a romperlo o introducir nuevos bugs,
etc.
Instalación y mantenimiento: Una vez se han desarrollado todas las
funcionalidades del software y se ha comprobado que funcionan
correctamente, se inicia la fase de instalación y mantenimiento. Se instala la
aplicación en el sistema y se comprueba que funcione correctamente en el
entorno en que se va a utilizar.
A partir de ahora hay que asegurarse de que el software funcione y hay que
destinar recursos a mantenerlo. El mantenimiento del software consiste en la
modificación del producto después de haber sido entregado al cliente, ya sea
para corregir errores o para mejorar el rendimiento o las características.
Ventajas y desventajas:
Ventajas
Eduar Farid Vanegas Galvis
Ingeniería en TIC
7ª 2020-1
El tiempo que se pasa en diseñar el producto en las primeras fases del
proceso puede evitar problemas que serían más costosos cuando el proyecto
ya estuviese en fase de desarrollo.
La documentación es muy exhaustiva y si se une al equipo un nuevo
desarrollador, podrá comprender el proyecto leyendo la documentación.
Al ser un proyecto muy estructurado, con fases bien definidas, es fácil
entender el proyecto.
Ideal para proyectos estables, donde los requisitos son claros y no van a
cambiar a lo largo del proceso de desarrollo.
Desventajas:
Este ciclo de vida es indicado para proyectos cortos y de baja complejidad por que en este
ciclo no hay tantas validaciones entre las etapas.
Aunque este ciclo de vida esta encaminado a la satisfacción plena de los usuarios finales se
queda corto en cuanto a cumplimiento para proyectos de grandes dimensiones puesto que
los requisitos principales pueden llegar a variar por que el proyecto tomara mas tiempo y
pueden surgir nuevos requisitos o variación el ellos.
Ciclo de vida en V
1.Generalidades:
El modelo de vida en “V” es un modelo hecho para mejorar las deficiencias que se
presentaban en el ciclo de vida en cascada.
Muestra las relaciones en las fases de desarrollo y pruebas del software.Y está hecho
para sistemas especialmente de desarrollo de tecnologías y donde están claramente
definidos los requerimientos del sistema propuesto
2.Caracteristias:
En cada etapa, se crea la planificación de las pruebas y los casos de pruebas para
verificar y validar el producto según los requisitos de la etapa. Por ejemplo, en la
etapa de recogida de requisitos, el equipo de evaluadores prepara las pruebas de
caso correspondientes a los requisitos. Más tarde, cuando el producto se desarrolla
y está preparado para ser evaluado, las pruebas de caso en esta etapa verifican el
software y su validez según sus requisitos.
Eduar Farid Vanegas Galvis
Ingeniería en TIC
7ª 2020-1
Esto hace que tanto la verificación como la validación vayan en paralelo. Este
modelo también se conoce como modelo de validación y verificación.
4.Ventajas y desventajas:
VENTAJAS
DESVENTAJAS:
Eduar Farid Vanegas Galvis
Ingeniería en TIC
7ª 2020-1
Este ciclo de vida a comparación con el anterior esta un poco mas centrado en las
validaciones de las etapas con esto en busca de si hay un error en alguna etapa no se tenga
que esperar hasta el último ítem para la validación, con estas validaciones el ciclo asegura
cumplimiento al 100% de los requerimientos antes de pasar a la siguiente etapa.
Generalidades:
El modelo de diente de sierra muestra las percepciones del sistema por parte del usuario y
el desarrollador de software en diferentes niveles de abstracción a lo largo del tiempo.
Eduar Farid Vanegas Galvis
Ingeniería en TIC
7ª 2020-1
Al inicio del proyecto los desarrolladores y los usuarios están en el mismo nivel de
abstracción, es decir, los requerimientos del sistema como se describen en el enunciado del
problema
Características:
Es como el modelo v modificado que incluye intersecciones para evaluar cada uno
de los prototipos de las etapas
Se llama modelo de diente de sierra porque cada demostración del prototipo da
como resultado un diente
La punta de cada diente es una intersección con el nivel de abstracción del diente
Etapas:
Ventajas y desventajas:
Ventajas:
Eduar Farid Vanegas Galvis
Ingeniería en TIC
7ª 2020-1
Las pruebas de cada fase ayudaran a corregir posibles errores sin tener que
esperar a que sean rectificados en la etapa final del proceso
Con las pruebas unitarias y de integración se consigue obtener exactitud en
los programas
Desventajas:
Este tipo de ciclo de vida están creados para proyectos de mediana y gran magnitud
y que involucren gran cantidad de colaboradores.
Este ciclo de vida esta encaminado a cumplir con el diseño centrado en el usuario ya
que durante todo el desarrollo del software se va a estar en contacto con el cliente
para que revise cada validación o entregable del proyecto y su etapa final es la
aprobación por parte del cliente.
Generalidades:
Características:
Incluye algunas mas actividades que el modelo de sierra, pero el enfoque es el mismo.
Eduar Farid Vanegas Galvis
Ingeniería en TIC
7ª 2020-1
Etapas:
Ventajas y desventajas:
En este ciclo se tiene muy en cuenta la opinión del cliente por eso se tiene constante
contacto para la revisión de cada validación.
Modelo en espiral:
Eduar Farid Vanegas Galvis
Ingeniería en TIC
7ª 2020-1
Descripción:
es un modelo de proceso de software evolutivo donde se conjuga la naturaleza de
construcción de prototipos con los aspectos controlados y sistemáticos del MODELO
LINEAL y SECUENCIAL. Proporciona el potencial para el desarrollo rápido de versiones
incrementales del software que no se basa en fases claramente definidas y separadas para
crear un sistema.
Características
• Es un modelo de proceso evolutivo cuyas actividades se conforman en un espiral.
• Permite la evaluación de riesgos ya que pasa por diferentes fases.
• El proceso de fases se repite ciclo a ciclo hasta que permite su construcción.
Etapas:
Comunicación con el cliente: Comunicación entre el desarrollador y el cliente.
Planificación: Las tareas requeridas para definir recursos, el tiempo y otras
informaciones relacionadas con el proyecto.
Análisis de riesgos: las tareas requeridas para evaluar riesgos técnicos y otras
informaciones relacionadas con el proyecto.
Ingeniería: las tareas requeridas para construir una o más representaciones de
la aplicación.
Construcción y entrega: las tareas requeridas para construir, probar, instalar y
proporcionar soporte al usuario.
Ventaja
Demanda una consideración directa de los riesgos técnicos en todas las etapas del
proyecto, y, si se aplica adecuadamente, debe reducir los riesgos antes de que se
conviertan en problemáticos
Desventajas
se debe aplicar el modelo para todos aquellos proyectos en que sea necesaria una fuerte
gestión del proyecto y sus riesgos, técnicos o de gestión.
Descripción:
Eduar Farid Vanegas Galvis
Ingeniería en TIC
7ª 2020-1
Características:
Desarrollo iterativo.
Forma disciplinada de asignar tareas y responsabilidades (quién hace qué, cuándo y
cómo).
Pretende implementar las mejores prácticas en Ingeniería de Software.
Administración de requisito.
Uso de arquitectura basada en componentes.
Control de cambios.
Modelado visual del software.
Verificación de la calidad del software.
Etapas:
Bibliografía:
https://smartsoftcolombia.com/portal/index.php/blog/49-rup
https://leopa16.wixsite.com/isw-blog-es/single-post/2014/11/26/MODELO-DE-
DESARROLLO-DE-SOFTWARE-RUP
https://prezi.com/p/exp51lcav3yq/modelo-de-ciclo-de-vida-en-el-diseno-ihc/
Eduar Farid Vanegas Galvis
Ingeniería en TIC
7ª 2020-1