Tema 1: Introducción al
análisis y diseño de
aplicaciones software
1
Sistema de información
INFORMACIÓN
Organización
+ +
SOFTWARE HARDWARE PERSONAS
DATOS 2
¿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 3
El proceso de desarrollo
de software
Requerimientos Proceso de
Sistema de
del usuario desarrollo de
software
software
4
El proceso de desarrollo
de software (2)
• Ofrece un marco de trabajo genérico
PARTE DATOS y ARQUITECTURA
ESTÁTICA del SISTEMA
PARTE
DINÁMICA PROCESOS
INTERFAZ
CICLO DE
VIDA
MODELO de REFERENCIA
5
Elementos utilizados en
los distintos procesos
OMT / OORAM
Pr. Unificado
M. Dinámico
M. Estático
SSADM
Metrica
Merise
Proceso/Método ->
Técnica o artefacto
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
6
Diagrama de colaboración
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
7
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
8
Ciclo de vida en cascada
Definir Requisitos
Sistema
Desarrollo de SI
Definir Requisitos
software
Diseño Codificar
preliminar módulos e
Diseño integrarlos
Diseño de alto nivel detallado
Integrar el
software en
Codificar & debug
el sistema
Diseño de los algoritmos Test y
Pre-operación
Operación y
Mantenimiento 9
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
10
Ciclo de vida con
prototipos
Prototipo:
MODELO DEL SISTEMA QUE SE ESTÁ CONSTRUYENDO
¿Por qué?
FACILITA LA COMUNICACIÓN ENTRE CLIENTES Y
DESARROLLADORES
11
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
12
CV en cascada con
Investigación
prototipos
preliminar
Definir requisitos
Breve análisis
y especificación
Diseño
y realización
Evaluación
OK
KO
Modificación
Diseño
...
13
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
14