Post on 11-Jul-2015
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 1/29
Análisis Estructurado yDiseño de Software
• Análisis Estructurado (metodología de Yourdon)
• Diseño (general)
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 2/29
YourdonEdward Yourdon es ampliamente reconocido como el líder del
desarrollo de los métodos estructurados de análisis y diseño en
los 70´s y al comienzo de los 80´s. Fue realmente exitoso al
extender, al ámbito del Análisis y Diseño, los conceptos de laProgramación Estructurada.En 1974 Yourdon fundó YOURDON Inc destinada a poveerservicos educacionales, de publicaciones y de consultoría.YOURDON Inc formó en métodos estructurados a más de
250,000 profesionales en el mundo. La división editorial (ahoraparte de Prentice Hall), editó más de 150 libros relacionados con
el desarrollo de software.
Semi retirado, en la actualidad, Yourdon es asesor en software"best-practices" en el US Department of Defense.
Yourdon escribió más de 200 artículos técnicos relevantes y 24libros de desarrollo de software desde 1967.Ed Yourdon recibió un B.S. in Applied Mathematics en el MIT;sus estudios de post grado (maestría) los desarrolló en elPolytechnic Institute of New York.
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 3/29
Método de Yourdon“Análisis Estructurado Moderno”, “Just Enough Structured Analysis”de Edward Yourdon
1. Modelo Esencial
1.1. Modelo Ambiental
1.2. Modelo de Comportamiento1.2.1. Modelo de Datos
1.2.2. Modelo de Procesos
2. Modelo de Implementación2.1. Modelo de Implementación del usuario2.2. Modelo de Implementación del sistema
2.2.1. Modelo de Procesadores2.2.2. Modelo de Tareas
2.3. Modelo de Implementación de programas
ANALISIS
DISEÑO
TRANSICION A-D
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 4/29
1. Modelo Esencial
El Ambiente
El Sistema Modelo deComportamiento
Modelo
Ambiental
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 5/29
1. Modelo Esencial
1.1. Modelo Ambiental (Frontera del sistema)
- Descripción de propósito
- Lista de eventos- Diagrama de Contexto
1.2. Modelo de Comportamiento (Req. Internos de comp.)
DD DFD
DER
DTE
Espec.de Procesos
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 6/29
I.- Declaración de propósitos
“El propósito del Sistema de Procesamiento de
la Asociación de Perros ZZZ es administrar elregistro genealógico, el registro de la propiedad
y los concursos que organiza la Asociación
ZZZ ”
Modelo Ambiental
1.1. Modelo Ambiental
- Descripción de
propósito- Lista de eventos- Diagrama de
Contexto
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 7/29
Modelo Ambiental
Sistema
EntidadExterna
Personas,organizaciones ysistemas con los que secomunica el sistema,
Datos que el sistemarecibe del mundoexterior y que debenprocesarse de algunamanera
Datos que el sistemaproduce y que seenvían al mundoexterior
II.- Diagrama de contexto
1.1. Modelo Ambiental
- Descripción de
propósito- Lista de eventos- Diagrama de
Contexto
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 8/29
II.- Diagrama de contexto
Modelo Ambiental
SistemaAsociación PerrosZZZ
AMO
ASOCIACION
EntradasAMO-Sistema
Entradas
ASOCIACION-Sistema
RespuestasASOCIACION-
Sistema
RespuestasAMO-Sistema
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 9/29
III.- Lista de acontecimientos
• Lista narrativa de eventos que ocurren en el ambiente ya los cuales el sistema debe dar una respuesta.
Ejemplo:– El amo inscribe un perro en la asociación.
– La asociación requiere un reporte mensual de losnacimientos producidos durante el mes.
– La asociación solicita listado de hembras.
– …
Modelo Ambiental
1.1. Modelo Ambiental
- Descripción de propósito- Lista de eventos
- Diagrama de Contexto
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 10/29
• Descubrir eventos examinando efecto de terminadores.
“El pedido del cliente es recibido” -> NO
“El cliente hace un pedido” -> SI
• No “empaquetar” eventos“El cliente hace un pedido” Y
“El vendedor tramita un pedido del cliente”
• Incluir eventos relacionados a falla debida a terminadores.
¿El sistema necesita responder si el evento no ocurre como
se esperaba?
III.- Lista de acontecimientos
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 11/29
Tipos de acontecimientos:de flujo (F), temporales (T), de control (C).
III.- Lista de acontecimientos
SistemaControladorde Ascensor
Sensor desobrecarga
sobrecarga
Sistema Asociación Perros ZZZ
-“La asociación requiere un reportemensual de los nacimientos
producidos durante el mes. (T)”
- “El amo inscribe un perro en laasociación. (F)”
- “El sensor de sobrecarga delascensor detectó sobrepeso (C).”
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 12/29
• Cualquiera de los dos. Consistentes!
• Usuarios con buen conocimiento sobre E/S o existencia de versión
actual de DC,– DC => LE.
• DC sistema actual no disponible,
– DER => LE => DC.
• Empezar construcción de DD.
El Modelo Ambiental¿Qué primero, la lista o el DC?
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 13/29
1. Modelo Esencial
1.1. Modelo Ambiental- Descripción de propósito- Lista de eventos- Diagrama de Contexto
1.2. Modelo de Comportamiento- Modelo de Datos (DER)- Modelo de Procesos (DFD)- DTE, posiblemente.- Completado del DD
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 14/29
Modelo EsencialModelo de Comportamiento
Modelo de Procesos (DFD)
Enfoques de Construcción :
– Clásico descendente (top-down)
– Partición por acontecimiento
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 15/29
El Modelo de ComportamientoEnfoque Clásico Descendente
ELSISTEMA
E1E2
E3
a b
c
Diagrama de
Contexto
1
PA2
PB
4
PD
3
PC
a
z
b
yx
c
w
v
Figura 0: EL SISTEMA
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 16/29
• No es ni puramente descendente ni puramente ascendente.
1. Dibujar un proceso por cada evento en la lista.2. Nombrar el proceso describiendo la respuesta del sistema al
evento.
3. Dibujar las entradas y salidas necesarias para que el proceso puedadar la respuesta requerida, mas los almacenes para lacomunicación entre burbujas.
4. Controlar completitud y consistencia entre DFD inicial (red de
mini DFDs), Diagrama de contexto, DD y lista de eventos.5. Nivelación ascendente.
6. Posible partición descendente.
El Modelo de ComportamientoEnfoque de Partición por Acontecimientos
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 17/29
El Modelo de ComportamientoEnfoque de Partición por Acontecimientos
Ejemplo de mini DFD
Evento 5: “El amo inscribe un perro en un concurso”.
INSCRIBIRCONCUR-SANTE
AMO CONCURSOS
PERROS
COMPETENCIAS
Id_Perro
Respuesta_Inscripción
Datos_Concurso
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 18/29
El Modelo de Comportamiento
E2*
E1*
E1
E1*
E1*
E1*
E2
E2*
E2*
E2E1
E1* E2*
Versión inicial del DFDDiagrama de Contexto
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 19/29
El Modelo de Comportamiento
Nivelación ascendente del DFD inicial
A1
A1
A2
A2
A3
A3
1
1.1
1.3
1.2
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 20/29
El Modelo de ComportamientoPosible nivelación descendente del DFD inicial
DFDpreliminar
(63burbujas)
1erresultado de
nivelación
ascendente(9 burbujas)
Figura 0
(3 burbujas)
Resultado de lanivelacióndescendente de laburbuja 3.2.2
Burbuja
3.2.2
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 21/29
El Modelo Esencial (Resumen)
• Diagrama de contexto• Lista de eventos
• Declaración de propósito• Conjunto completo de DFDs por niveles.
– Construcción de mini DFDs correspondientes a cada evento => DFD inicial.
– Nivelado ascendente del DFD inicial.
– Nivelado descendente del DFD inicial.
• DTE (si el sistema tiene características de tiempo real).
• Construcción en paralelo de DER con DFD inicial y DD.• Conjunto completo de DTE (si tiene características de tiempo real).• Diccionario de Datos completo.• Conjunto completo de especificaciones de procesos.
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 22/29
Diseño de Software“Ingenieria de Software. Un enfoque práctico”, Roger Pressman (cap. 13, 14, 15 y 16)
ANALISIS DISEÑO
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 23/29
Diseño de SoftwareCaracterísticas
• Proceso– Secuencia de pasos que hacen posible que el diseñador describa
todas los aspectos del software que se va construir.
– Implementa requisitos explícitos en modelo de analisis– Iterativo, partiendo de un alto nivel de abstracción,
• Modelo
– Proporciona diferentes visiones del SW– Sirve de guía para la posterior generación de código.
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 24/29
Diseño de componentes
Modelos de Diseño
Diseño de interfaz
Diseño arquitectónico
Diseño de datos
Modelo de
Analisis
Modelo de Diseño
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 25/29
Diseño de Datos• Los objetos de datos y las relaciones definidas en DER, y
DD proporcionan la base para el diseño de datos.
– Temática tradicional: Modelado de datos, estructuras de datos,Bases de datos
– Para extraer información útil del negocio: Mineria de Datos,Almacén de datos
• En muchas aplicaciones de software, la arquitectura de datostendrá una gran influencia sobre la arquitectura del softwareque debe procesarlo
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 26/29
Diseño ArquitectónicoCentrada en datos
Flujo de datos.
Datos de entrada transformados a travésde componentes computacionales enlos datos de salida.
Orientadas a objetos.
Los componentes de un sistemaencapsulan los datos y las operacionesque se deben realizar para manipular losdatos.
Estratificada
De llamada y retorno
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 27/29
Diseño de Interfaces
• Comunicación de software dentro de sí mismo, con sistemasque interoperan dentro de él y con las personas que lo utilizan.
• DFD proporcionan información para el diseño de interfaz.
• Tres «reglas de oro» para el diseño de la interfaz:
– Dar el control al usuario
– Reducir la carga de memoria del usuario
– Construir una interfaz consecuente
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 28/29
Diseño de Componentes• Transforma los elementos estructurales de la arquitectura delsoftware en una descripción procedimental de los componentes delsoftware.
• El diseño se deberá representar a un nivel de abstracción cercano aun código
• Establece los datos algorítmicos para manipular las estructuras de
datos, efectuar la comunicación entre los componentes del softwarepor medio de las interfaces. e implementar los algoritmos asignadosa cada componente.
• La información que se obtiene de Espec. de Proc. y DTE, y diagr. deflujo de sirve como base para el diseño de los componentes.
5/11/2018 AnalisisEstructurado - slidepdf.com
http://slidepdf.com/reader/full/analisisestructurado 29/29
Principios de un buen diseño• En el proceso de diseño no deberá utilizarse «orejeras».
• El diseño deberá poderse rastrear hasta el modelo deanálisis.
• El diseño no deberá inventar nada que ya esté inventado.
• El diseño deberá presentar uniformidad e integración.• El diseño deberá estructurarse para admitir cambios.
• El diseño no es escribir código y escribir código no es
diseñar.• El diseño deberá evaluarse en función de la calidad mientras se va creando, no después de terminarlo.