Ciclo de vida software

rene5254 692 views 24 slides Jun 23, 2021
Slide 1
Slide 1 of 24
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24

About This Presentation

Definición Ciclo de vida software y su clasificación


Slide Content

1

Ciclo de Vida del Desarrollo
de Software
René Guamán-Quinche
Carrera de Ingeniería en Sistemas/Computación
Junio, 2021
Loja, Ecuador

3
1.Ciclo de Vida del Desarrollo de Software
2.Ciclo de Muerte del Software
3.Ciclo de Vida Cascada
4.Ciclo de Vida Espiral
5.Ciclo de Vida Prototipo
6.Ciclo de Vida en V
7.Ciclo de Vida Incremental
8.Ciclo de Vida Evolutivo
Agenda

4
Ciclo de Vida del Desarrollo de Software
Alan Davis define Ingeniería de Software
“La aplicación de principios científicos para la transformación ordenada de
un problema en una solución operativa de software y el subsecuente
mantenimiento de ese sw hasta el final de su vida útil.”
El ingeniero de sw debe realizar una serie de actividades adicionales a la
programación. Adicionalmente introduce un concepto conocido como “vida
útil” del sw

5
Ciclo de Vida del Desarrollo de Software
Alan Davis define Ingeniería de Software
Las actividades requeridas en el proceso de desarrollo, en ocasiones, se
repiten reiteradamente durante toda la “vida útil” del software. Estas
actividades conforman entonces un ciclo, el ciclo de vida del desarrollo del
software
Se podría pensarse que el sw no se “estropea” o “envejece”, los sistemas de
sw sufren grandes transformaciones durante su tiempo de utilización y en
muchas ocasiones es retirado de operación o modificado ampliamente luego
de varios años de trabajo. El sw como un ser vivo, un tiempo de vida

6
Ciclo de Muerte del Software

7

El ciclo de muerte propuesto por Rigby y Norris permite ilustrar
claramente el concepto de vida útil del software

Norris y Rigby plantean el énfasis de los modelos tradicionales a
preocuparse principalmente por las fases de construcción del software
dejando a un lado el proceso de operación y mantenimiento de las
aplicaciones. Curiosamente, las fases de operación y mantenimiento, por lo
general, son mucho más largas y costosas que las etapas iniciales
Ciclo de Muerte del Software

8

El ciclo de muerte del sw se centra en los criterios para dar de “baja” un
sistema: el costo/beneficio de mantener un sistema comparado con el costo/
beneficio de construir uno nuevo

La premisa básica que sostiene el modelo es que el mantenimiento de un
sistema entregado cuesta dinero y tiene que ser compensado con los
beneficios que se obtienen del software

El costo de posesión comienza a sobrepasar el beneficio y el neto se torna
negativo. En este momento el software debe ser retirado de uso
Ciclo de Muerte del Software

9
Ciclo de Vida Cascada

Conocido como ciclo de vida lineal
o básico

Cada fase empieza cuando d termina la fase anterior,
para lo cual es necesario conseguir todos los objetivos
de la etapa previa

Ayuda a prevenir que se sobrepasen las fechas de
entrega y los costes esperados

Al final de cada fase el personal técnico y los usuarios tienen la
oportunidad de revisar el progreso del proyecto.

10
Ciclo de Vida Cascada
Ventajas
•Planificación sencilla
•Calidad de producto alta
Críticas:

No refleja realmente el proceso de desarrollo del software

Se tarda mucho tiempo en pasar por todo el ciclo

Acentúa el fracaso de la industria del software en su comunicación con el usuario
final

Se convierten las especificaciones en implementaciones de manera informal

El mantenimiento se realiza en el código fuente

Las revisiones de proyectos de gran complejidad son muy difíciles

Impone una estructura de gestión de proyectos

Síndrome del 90%

11
Ciclo de Vida Espiral
Modelo de proceso de software evolutivo
que combina la naturaleza iterativa de
construcción de prototipos con los
aspectos controlados y sistemáticos del
modelo lineal secuencial
El software se desarrolla en una serie de
versiones incrementales
●Durante las primeras iteraciones, la
versión incremental podría ser un
modelo en papel o un prototipo.
●Durante las últimas iteraciones, se
producen versiones cada vez más
completas del sistema diseñado

12
Ciclo de Vida Espiral
Diferencias con los métodos más tradicionales (cascada):
●Existe un reconocimiento explícito de las diferentes alternativas para alcanzar los
objetivos de un proyecto
●La identificación de riesgos asociados con cada una de las alternativas
●La división de los proyectos en ciclos.
●El modelo se adapta a cualquier tipo de actividades
Cada ciclo empieza identificando:
●Los objetivos de la porción correspondiente
●Las alternativas
●Restricciones

13
Ciclo de Vida Espiral
●Se evalúan las alternativas respecto a los objetivos y restricciones
●Se formula una estratégia efectiva para devolver la funciones de riesgos (simulación,
prototipo, etc)
●Se plantea el proximo prototipo
●Una vez resuelto los riesgos se sigue el ciclo de en cascada
●Cada ciclo se completa con una revisión que incluye todo el ciclo antererior y el plan
para el siguiente

14
Ciclo de Vida Espiral
Ventajas:
●Permite acomodar otros modelos
●Incorpora objetivos de calidad y gestión de riesgos
●Elimina errores y alternativas no atractivas al comienzo
●Permite iteraciones, vuelta atrás y finalizaciones rápidas
Inconvenientes:
●Es difícil de adaptar a los contratos. Más adecuado para desarrollo interno

15
Ciclo de Vida Prototipo

16
Ciclo de Vida Prototipo
Paradigma de construcción de prototipos:
●Escuchar al cliente
●Construir/revisar maqueta
●Probar maqueta
Los prototipos tienen una doble función:
●El cliente ve el producto y refina sus requisitos
●El desarrollador comprende mejor lo que necesita hacer

17
Ciclo de Vida en V
Contiene las mismas etapas que el ciclo de
vida en cascada
Modelo V tiene 2 subetapas adicionales de
retroalimentación entre las etapas de
analisis y mantenimiento; y entre diseño y
debugging

18
Ciclo de Vida en V
Ventajas
●Se ofrece una mayor garantia de corrección al terminar el proyecto
●La relación entre las etapas de desarrollo y los distintos tipos de pruebas facilitan la
localización de fallos
●Es un modelo sencillo y de fácil aprendizaje
●Hace explícito parte de la iteración y trabajo que hay que revisar
●Especifica bien los roles de los distintos tipos de pruebas a realizar involucra al usuario
de las pruebas
Desventajas
●Son similares a las del modelo cascada
●Es difícil que el cliente exponga explícitamente todos los requisitos
●El cliente debe tener paciencia pués obtendrá el producto al final del cliclo de vida
●Las pruebas pueden ser caras y, a veces, no lo suficiente efectivas
●El producto final obtenido puede que no refleje todos los requisitos del usuario

19
Ciclo de Vida Incremental

20
Ciclo de Vida Incremental
●Se aplican secuencias lineales de forma escalonada mientras progresa el calendario
●Corrige la necesidad de una secuencia no lineal de pasos de desarrollo
●El sistema se crea añadiendo componentes funcionales -> incrementos
●El sistema no se ve como una entidad monolítica con una fecha fija de entrega, sino
que es una integración de resultados sucesivos obtenidos después de cada iteración
●Se ajusta a entornos de alta incertidumbre

21
Ciclo de Vida Incremental
Ventajas:
●Se evitan proyectos largos y se entrega “algo de valor” a los usuarios con cierta
frecuencia
●El usuario se involucra más
●Mayor retorno de la inversión
Inconvenientes:
●Difícil de evaluar el coste total
●Requiere gestores experimentados
●Difícil de aplicar a sistemas transaccionales que tienden a ser integrados y a operar
como un todo
●Los errores en los requisitos se detectan tarde y su corrección resulta costosa

22
Ciclo de Vida Evolutivo

23
Cŕeditos
•Transparencias basadas por:
•Christopher Exposito Izquierdo & AiRam Exposito Marquez & otros
•Maria-Isabel, Sanchez Segura & Arturo, Mora-Soto

Networking académico:
Correo electrónico: [email protected]
Twitter: @rene5254
SlideShare: https://es.slideshare.net/rene5254
24
Gracias