3. 3
¿Cómo construir un SI?
• Identificar los usuarios
• Definir la arquitectura del sistema
• Definir el software a desarrollar
– Cada vez MÁS COMPLEJO
– Desarrollarlo RÁPIDAMENTE
– Se necesitan métodos mejores de desarrollo
4. 4
El proceso de desarrollo
de software
Proceso de
desarrollo de
software
Requerimientos
del usuario
Sistema de
software
5. 5
El proceso de desarrollo
de software (2)
• Ofrece un marco de trabajo genérico
PARTE
ESTÁTICA
PARTE
DINÁMICA
INTERFAZ
CICLO DE
VIDA
DATOS y ARQUITECTURA
del SISTEMA
PROCESOS
MODELO de REFERENCIA
6. 6
Elementos utilizados en
los distintos procesos
Proceso/Método ->
Técnica o artefacto
SSADM
Merise
Metrica
OMT
/
OORAM
Pr.
Unificado
M.
Estático
M.
Dinámico
Modelo E/R (E)
Vistas externas
Diagrama de Flujo de Datos (DFD)
Modelo Lógico de Datos (MLD)
Historia de la Vida de Entidades (HVE)
Diagrama de clases
Casos de uso
Diagrama de colaboración
7. 7
Tipos de Ciclos de Vida (CV)
CV es MODELO de REFERENCIA para construir software
• Sin prototipos
– En cascada (Waterfall)
• Con prototipos
– desechables
– no desechables
• Incremental
• evolutivo
• En espiral
• Iterativo e incremental
8. 8
Ciclo de vida en
cascada
• El más común y el más antiguo (1970)
• Se basa en completar un paso antes de
comenzar con el siguiente
9. 9
Ciclo de vida en
cascada
Definir Requisitos
Sistema
Definir Requisitos
software
Diseño
preliminar
Diseño
detallado
Codificar & debug
Test y
Pre-operación
Operación y
Mantenimiento
Integrar el
software en
el sistema
Codificar
módulos e
integrarlos
Desarrollo de SI
Diseño de alto nivel
Diseño de los algoritmos
10. 10
Valoración CV en cascada
(-)LAS ESPECIFICACIONES NUNCA SON CORRECTAS
(-)CLIENTES/USUARIOS NO SABEN LO QUE QUIEREN
(-)EL CLIENTE NO VE RESULTADOS HASTA EL FINAL
(+)IDENTIFICACIÓN DE CIERTAS TAREAS: requisitos,
análisis, diseño, implementación, pruebas
11. 11
Ciclo de vida con
prototipos
Prototipo:
MODELO DEL SISTEMA QUE SE ESTÁ CONSTRUYENDO
¿Por qué?
FACILITA LA COMUNICACIÓN ENTRE CLIENTES Y
DESARROLLADORES
12. 12
Características CV con
prototipos
• Alto grado de participación del usuario
– Evalúa prototipos
– Propone mejoras
– Detalla requisitos
– Aprende a usar el sistema
• Proporciona más información (feedback) a los
desarrolladores
– No se puede indicar los requisitos sin tener experiencia con el sistema
– El prototipo da mayor conocimiento al usuario y analistas
– El prototipo se modifica hasta que los requisitos del usuario queden
claros
13. 13
CV en cascada con
prototipos
Investigación
preliminar
Diseño
y realización
Diseño
...
Definir requisitos
OK
KO
Evaluación
Modificación
Breve análisis
y especificación
14. 14
CV con prototipos
• PROTOTIPOS DESECHABLES
– No se utilizan para construir el sistema final.
– Programación “Quick & Dirty” (Perl, awk, csh, …)
– Sistemas RAD (rapid application development)
• Herramientas de programación visual
• PROTOTIPOS NO DESECHABLES
– Los prototipos van formando el sistema final