Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Los modelos
encadenan las diversas
actividades
1
Modelos -Procesos
2
Modelos de desarrollo
3
Modelos de desarrollo de software
• La cascada
Separa y secuencia las fases
• Evolutivo
5
¿Cuál modelo han usado?
Análisis de
Requerimientos
Mantenimiento Diseño del
Sistema
Liberación
Diseño de
Programas
Validación
del Sistema
Integración Construcción
de Programas
6
Validación
de componentes
Modelo de la cascada
Análisis de
• Encadenamiento requerimientos
secuencial de las
Diseño
actividades
• Cada etapa produce Implementación
8
Variante del modelo de la cascada
Análisis de
requerimientos
Diseño
Implementación
Validación de
componentes
Integración y
validación del
Prototipaje sistema
Liberación y
mantenimiento
9
Ejemplo de un Modelo de Cascada
Modelo de desarrollo
de software Análisis de
requerimientos
Prototipaje
Método 1 Método n
Etapas vs actividades
Especificación
Implementación
Un ejemplo
10
Modelo de la Cascada
Requirements
definition
System and
software design
Implementation
and unit testing
Operation and
maintenance
11
©Ian Sommerville 2000 Software Engineering, 6th edition.
Modelo de la cascada: Ventajas-desventajas
12
Modelo en espiral
I II
Análisis Prototipo
de riesgo
Análisis
de riesgo Prototipo 3
Prototipo 2
Prototipo 1
Requerimientos, Simulac
ión, mod
plan del ciclo de Incepción elación
vida Requerimientos Diseño
Diseño detallado
Plan de Validación
desarrollo Código
de req.
Test
Unitario
IV Integración y Validación
plan de test del diseño
Revisión de Integración
resultados y y test III
liberación
Planificación de la Desarrolla, 14
siguiente fase verifica
Desarrollo en espiral
15
Modelo en espiral
Determine objectives
Evaluate alternatives
alternatives and identify, resolve risks
constraints Risk
analysis
Risk
analysis
Risk
analysis Opera-
Prototype 3 tional
Prototype 2 protoype
Risk
REVIEW analy sis Proto-
type 1
Requirements plan Simulations, models, benchmarks
Life-cycle plan Concept of
Operation S/W
requirements Product
design Detailed
Requirement design
Development
plan validation Code
Design Unit test
Integration
and test plan V&V Integr ation
Plan next phase test
Acceptance
Service test Develop, verify
next-level product
16
©Ian Sommerville 2000 Software Engineering, 6th edition.
Modelo Evolutivo
• Se construye el núcleo de la
aplicación –prototipo - requerimientos
• Se incrementa el prototipo
con el desarrollo de otras
partes
• Cada parte se valida y su
feedback aclara los
requerimientos
• Se basa en el desarrollo
incremental y en un
desarrollo de las partes por Prototipaje es una
etapas (iterativo). herramienta en el
proceso de comprender
Fuente: Ghezzi &al, “Fundamentals of Software Engineering”. los requerimientos 17
PrenticeHall, 1991
Modelo Evolutivo (cont.)
Requerimientos
18
Desarrollo evolutivo
• Desarrollo exploratorio
Explorar los requerimientos y evolucionar a un
sistema final desde un bosquejo de la descripción
inicial. Puede comenzar sin comprenderse bien los
requerimientos. Comienza con las partes que se
comprenden mejor
• Prototipaje desechable
Comprender los requerimientos del sistema, los
cuales no están bien definidos.
19
Desarrollo evolutivo
Concurr ent
activities
Initial
Specification
version
Outline Intermediate
Development
description versions
Final
Validation
version
20
©Ian Sommerville 2000 Software Engineering, 6th edition.
Modelo Basado en ensamblaje de
componentes
• Se basa en la reutilización de componentes
• Requiere de una librería de componentes
• La reutilización puede ser de componentes de
especificación, de programas, etc.
• La reusabilidad permite reducir el tiempo y los
costos asociados a la construcción de
productos de software
• Requiere de herramientas de asistencia para
las nuevas actividades que se generan.
21
Modelo basado en ensamblaje de
componentes
Desarrollo CON Reusabilidad
Asistente de Reusabilidad
Recuperación Adaptación
Evaluación
Administrador de la Base
Asistente de
Base de Componentes Construcción de Componentes Desarrolladores
Reusables Clasificación Reingeniería
Calificación
• Modificación de requerimientos
• Desarrollo e integración
Proceso Unificado
25
¿Qué modelo?
28
Proceso Iterativo
Ciclo iterativo
de desarrollo
Tiempo
Desarrollo iterativo
• Pequeños pasos, feeback y refinamiento.
• Iterativo, incremental.
• Evolutivo, espiral, . . .
Iteration Iteration
...
1 2
2 semanas
30
Desarrollo incremental
Desarrollo incremental
Desarrollo iterativo
. . .
. . .
32
Ventajas del desarrollo incremental
33