Está en la página 1de 35

Bloque 2.

-
2.- Desarrollo de Sw.
Tema 4. Diseño Estructurado.

Departamento de Informática y Sistemas


Facultad de Informática
Campus Universitario de Espinardo - Murcia
Índice de Contenidos

1.-
1.- Métrica 3 y Diseño Estructurado.
2.-
2.- El proceso de diseño.
3.-
3.- Diseño estructurado.
3.1.- Diagramas de estructura.
3.1.-
3.2.-- Estrategias de diseño:
3.2.
3.2.1.- Análisis de transformación.
3.2.1.-
3.2.1.-- Análisis de transacción.
3.2.1.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 2


Bibliografía
 (Piattini et al. 96) Capítulo 8. Apartado 8.1.
 (Molina et al. 97) A. Molina, P. Letelier, P.Sánchez, J. Sánchez.
“Metodología y Tecnología de la Programación”. Servicio de
Publicaciones. UPV. 1997.
 (Pressman 01) Capítulo 13 y aptdos. 14.5 a 14.8.
 (MAP 95) Ministerio de Administraciones Públicas. Guía de Técnicas
de Métrica v.2.1. 1995.
 (MAP 01) Guía de técnicas y prácticas de Métrica v.3.
http://www.map.es/csi/metrica3
 (Page-Jones 88) M. Page-Jones. “The Practical Guide to Structured
Systems Design”. Yourdon Press. 1988.
 Métrica 3: Diseño del Sistema de Información (Proceso DSI).

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 3


1.-
1.- Métrica 3 y Diseño Estructurado.
Métrica 3 . Estructura
Estructura..

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 4


1.-
1.- Métrica 3 y Diseño Estructurado.
Métrica 3 . Objetivo DSI.
 Objetivo. Especificación de la construcción del
sistema:
 Definición de la arquitectura del sistema
arquitecturas multinivel (p.ej. C/S)
 Definición del entorno tecnológico.
 Especificación detallada de los componentes del
SI:
 Especificación técnica del plan de pruebas.
 Definición de los requisitos de implantación.
 Diseño de los procedimientos de migración y carga inicial
(cuando proceda).

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 5


1.-
1.- Métrica 3 y Diseño Estructurado.
Métrica 3 . DSI.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 6


1.-
1.- Métrica 3 y Diseño Estructurado.
Métrica 3. DSI 5: Diseño de la Arquitectura de
 OBJETIVO
OBJETIVO:: Módulos del Sistema.
 Para cada uno de los subsistemas se diseña la estructura
modular de los procesos que lo integran.
 Pto. partida:: Modelo de procesos obtenido en ASI 1-3-7
Pto. de partida
y catálogo de requisitos.
 Técnica: Diagrama de Estructura de Cuadros de
Constantine (DEC).
 Se realiza el diseño detallado de la interfaz de usuario, de
pantalla e impresa.
 El interfaz de usuario debe corresponderse con la
estructura modular.
ACTIVIDAD DSI 5: DISEÑO DE LA ARQUITECTURA DE MÓDULOS DEL
SISTEMA
 Tarea DSI 5.1: Diseño de Módulos del Sistema
 Tarea DSI 5.2: Diseño de Comunicaciones entre Módulos
 Tarea DSI 5.3: Revisión de la Interfaz de Usuario

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 7


2.-
2.- El Proceso de Diseño.
Diagrama de B DESTINO
flujo de datos Z PROC
X
PROC PROC
V
Y Paso al
FUENTE A PROC W diseño
PROC D ALMACÉN DE
DATOS Diagrama de
estructuras

Descrip. Descripción Definición


E. E. del FD
del proceso Diagrama E-R
(o DED)

Diccionario
de Datos
Definiciones
de la BD

Definiciones de
los módulos
2.-
2.- El Proceso de Diseño.
 “El proceso de aplicar distintas técnicas y
principios con el propósito de definir un
dispositivo, un proceso o un sistema con
suficiente detalle como para permitir su
realización física
física”.
 Proceso iterativo a través del cual se
traducen los requisitos en una representación
del software.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 9


2.-
2.- El Proceso de Diseño.
ERS Análisis (Qué)
Lenguaje comprensible
por el usuario
E-R DFD
Diseño de alto nivel Enfoque Organización
(arquitectónico)
Enfoque de lógica
funcional
datos
Arquitectura de
Modelo lógico de datos
procesos
Diseño: DSI 5-6

Estructura detallada:
Modelo físico de datos programas y módulos

Diseño de bajo nivel Decisiones concretas:


(detallado) organización y
Esquema de BD Cuadernos de rendimiento
y ficheros carga

(Piattini et al. 96) Implementación


Codificación y Lenguaje comprensible por la
máquina
pruebas
2.-
2.- El Proceso de Diseño.
datos.. Transforma el modelo del dominio de la información
Diseño de datos
del análisis en las estructuras de datos necesarias para la
implementación. Esquema Lógico de Datos “Modelo Relacional”.

Arquitectónico. Estructura modular del programa/aplicación.


Diseño Arquitectónico.
Diagramas de Estructuras. DSI 5.

Interfaz. Interfaces del sw. con otros sistemas y con los


Diseño de Interfaz
usuarios.

Procedimental. Descripción procedimental de los componentes


Diseño Procedimental.
del sw.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 11


2.-
2.- El Proceso de Diseño.
 Objetivos:
Desarrollar la estructura modular del programa.
Definir las relaciones entre módulos.
 Técnica Principal: Diagrama de Estructura.
 Documentación de partida: DFDs – Análisis
Estructurado.
 Estrategias de diseño - Tipos de Esquemas:
Análisis de transformaciones.
Análisis de transacciones.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 12


2.- El Proceso de Diseño.
2.-
 Se dispone de:
Las entradas que suministran al sistema las
entidades externas.
Las salidas aportadas por el sistema a dichas
entidades externas.
Las funciones descompuestas que se han de
realizar en ese sistema. Diagrama de flujo de
Datos
El esquema lógico de datos del sistema.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 13


2.-
2.- El Proceso de Diseño.
 Actividades y tareas a realizar:
 Módulos obtenidos en el análisis. Procesos
Terminales (primitivos). DFD Primitivos.
 Organizar la estructura de estos módulos (procesos) y
definir las conexiones entre los mismos.
Diagramas de Estructuras.
 Describir el pseudocódigo para cada módulo.
Técnicas descritas en el Tema 2. Diccionario de Datos

 Principios que guían el proceso de Diseño:


 Abstracción.
 Modularidad.
 Encapsulamiento y Ocultamiento de información.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 14


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de Estructura (Diagrama de
3.1.
estructura de cuadros de Constantine
Constantine).
).
 Diseño de la Arquitectura del Sistema: Diagrama de
módulos funcionales.
 Identifica qué módulos se necesitan, así como sus
inputs/outputs (caja negra).
 Refleja la comunicación de datos y control y la
jerarquía entre módulos.
 Diagrama de estructura. Elementos constituyentes :
 Módulos.
 Conexiones.
 Comunicaciones.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 15


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de estructura (Diagrama de
3.1.
estructura de cuadros de Constantine
Constantine).
). Módulos

MODULO
 “Aquella parte de código que se PREDEFINIDO
MODULO
puede llamar”. (Page -Jones 88). OBTENER
CONECTOR
IMPRIMIR
 Representa un programa, DATOS
CLIENTES
CHEQUE DE 1
subprograma o rutina, PAGO

dependiendo del lenguaje que


se vaya a utilizar. En Métrica también se dispone de:
 Admite parámetros de llamada
y retorna algún valor, si es Almacenes de datos NOMBRE
preciso.
 Se representa en el diagrama
Dispositivos físicos
mediante un rectángulo. DISPOSITIVO

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 16


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de estructura (Diagrama de estructura
3.1.
de cuadros de Constantine
Constantine).
). Conexión entre Módulos

 La conexión entre módulos se


representa mediante una línea.
 En la figura: A MODULO QUE LLAMA
 A llama a B.
 B hace su función. CONEXION
 B retorna a A, inmediatamente
después del lugar donde se
produjo la llamada de A a B. B MODULO LLAMADO

 El diagrama no dice nada sobre


el código de A ni sobre el de B, lo
único que sabe es que en A
existe una sentencia del tipo
CALL B.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 17


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de estructura (Diagrama de estructura
3.1.
de cuadros de Constantine
Constantine).
). Conexión entre Módulos

B C

Orden de ejecución de los módulos: de izquierda a


derecha y de arriba abajo (Piattini et al. 96).

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 18


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de estructura (Diagrama de estructura
3.1.
de cuadros de Constantine
Constantine).
). Conexión entre Módulos

Ejemplo típico de menú:


Menú login

Procesos para Procesos para Procesos


Agentes externos departamentos Generales

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 19


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de estructura (Diagrama de estructura
3.1.
de cuadros de Constantine
Constantine).
). Conexión entre Módulos

campo alfabético correcto EOR

 Los signos para llevar a cabo la Obtener datos clientes


comunicación entre módulos son:

campo campo correcto

campo
Flags o controles EOR

Obtener campo Validar campo


siguiente alfabético
Datos

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 20


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de estructura (Diagrama de estructura
3.1.
de cuadros de Constantine
Constantine).
). Controles o flag
flag..

 Mediante los “flags” o controles, se puede representar


representar::

Paso de control entre módulos: un


módulo comunica a otro módulo que ha
terminado su proceso y traspasa al
módulo llamado el control del sistema.

Comunicación de que se ha producido


un error en el proceso.

Comunicación/indicación de operación
correcta.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 21


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de estructura (Diagrama de estructura
3.1.
de cuadros de Constantine
Constantine).
). Controles o flag
flag..

Los flags/controles
Los datos se procesan. indican al módulo
Los flags/controles
que llama la
sólo sirven para
terminación EOF, o
comunicar
un error del módulo
condiciones entre
Los datos son l a llamado, y deben ir
los módulos.
información siempre en sentido
compartida por los ascendente.
módulos. La posición
de la flecha (hacia
arriba o hacia abajo)
indica el sentido de la Los flags tienen
comunicación. importancia en la
comunicación de
información en el
Los datos tienen interior; son los que
importancia para el sincronizan la
mundo exterior, están operativa de los
relacionados con el módulos.
problema.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 22


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de estructura (Diagrama de estructura
3.1.
de cuadros de Constantine
Constantine).
). Parámetros.

Se pueden representar mediante tablas de interfaz:

Valor
Módulo Parámetro Entrada Salida Significado
Referencia

Fecha de
F(x,y) X Si no Valor
Nacimiento

Y no Si Referencia Edad

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 23


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de estructura (Diagrama de estructura de cuadros
3.1.
de Constantine
Constantine).
). Ejemplo.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 24


EMISIÓN CHEQUES
3.-
3.- Diseño Estructurado. DE PAGO
3.1.-- Diagrama de estructura (Diagrama de
3.1.
estructura de cuadros de Constantine
Constantine).
). NÚMERO EMPLEADO
Ejemplo. NOMBRE EMPLEADO
REGISTRO PAGO
PAGO NETO JORNALERO
PAGO NETO EMPLEADO IMPORTE PAGO
FIN REGISTROS
REGISTRO PAGO JORNALERO
REGISTRO PAGO EMPLEADO

OBTENER CALCULAR PAGO CALCULAR PAGO IMPRIMIR


REGISTRO PAGO NETO JORNALEROS NETO EMPLEADOS CHEQUE PAGO

DEDUCCIONES NORMALES
RETRIBUCIÓN DIARIA SUELDO BASE
PAGO BRUTO EMPLEADO
PAGO BRUTO JORNALERO

JORNADAS TRABAJADAS COMPLEMENTOS


IRPF
IRPF
CALCULAR PAGO CALCULAR CALCULAR PAGO
BRUTO JORNALEROS DEDUCCIONES BRUTO EMPLEADOS
NORMALES

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 25


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de estructura (Diagrama de estructura de cuadros
3.1.
de Constantine
Constantine).
). Ejemplo.

program EMISION_CHEQUES ; procedure OBTENER_REG_PAGO ( var rp : treg_pago; var fin_reg : boolean ) ;


type function CALCULAR_NETO_JORN ( rj : treg_jornalero ) : real ;
treg_pago : RECORD...END ; function CALCULAR_NETO_EMPL ( re : treg_empleado ) : real ;
treg_jornalero : RECORD...END ;
function CALCULAR_BRUTO_JORN ( ret_diaria, jorn_trab : real ) : real ;
treg_empleado : RECORD...END ;
var function CALCULAR_BRUTO_EMPL ( sueldo_base, complem : real ) : real ;
importe : real ; function CALCULAR_DEDUCCIONES ( pago_bruto, irpf : real ) : real ;
importe_pago_jorn, importe_pago_empl : real ; procedure IMPRIMIR_CHEQUE_PAGO( num_emp : integer ; nom_emp : string;
registro_pago : treg_pago ; importe : real ) ;
registro_empleado : treg_empleado ;
registro_jornalero : treg_jornalero ;
fin_registros : boolean ;
numero_empleado : integer ;
nombre_empleado : string ;
begin
OBTENER_REGISTRO_PAGO (registro_pago, fin_registros) ;
...
importe_pago_jorn := CALCULAR_NETO_JORN (registro_jornalero) ;
...
importe_pago_empl := CALCULAR_NETO_EMPL (registro_empleado) ;
...
IMPRIMIR_CHEQUE_PAGO( numero_empleado, nombre_empleado, importe) ;
...
end.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 26


3.-
3.- Diseño Estructurado.
3.1.-- Diagrama de estructura (Diagrama de estructura
3.1.
de cuadros de Constantine
Constantine).
). Descripción de los Módulos

Herramientas
complementarias:
Diagramas de flujo, Nassi-
Nassi-
Pseudo-código. Schneiderman,, Tablas y
Schneiderman
árboles de decisión.

Interfaz-función (módulo,
entradas, salidas, función).

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 27


3.-
3.- Diseño Estructurado.
3.2.-- Estrategias de Diseño.
3.2.
 Dos estrategias:
 Análisis de transformaciones.
 Análisis de transacciones.
 Importante: diseñar el DE de forma que:
 Los módulos de nivel superior toman las decisiones de ejecución
(coordinan). → Llamadas a rutinas.
 Los de nivel inferior realizan la mayor parte del trabajo de entrada, de
cálculo y de salida. → Procesos Primitivos
 Determinar si el DFD tiene características de transformación o
de transacción.
 indica expresamente la característica del DFD!
 Según sea de transformación o transacción:
a) Aislar el centro de la transformación, especificando los límites del flujo de
llegada y de salida
...o bien...
b) Identificar el centro de la transacción y las características del flujo de cada
camino de acción.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 28


3.-
3.- Diseño Estructurado.
3.2.-- Estrategias de Diseño.
3.2.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 29


3.-
3.- Diseño Estructurado.
3.2.-- Estrategias de Diseño.
3.2.
3.2.1.-- Análisis de Transformación.
3.2.1.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 30


3.-
3.- Diseño Estructurado.
3.2.-- Estrategias de Diseño.
3.2.
3.2.1.-- Análisis de Transformación. 1º Nivel de Factorización
3.2.1.

Módulos de
Coordinación

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 31


3.-
3.- Diseño Estructurado.
3.2.-- Estrategias de Diseño.
3.2.
3.2.1.-- Análisis de Transformación. 2º Nivel de Factorización
3.2.1.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 32


3.-
3.- Diseño Estructurado.
3.2.-- Estrategias de Diseño.
3.2.
3.2.2.-- Análisis de Transacción.
3.2.2.
DFD XX

Procesos Primitivos

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 33


3.-
3.- Diseño Estructurado.
3.2.-- Estrategias de Diseño.
3.2.
Transacción.. 1º Nivel de Factorización
3.2.2.-- Análisis de Transacción
3.2.2.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 34


3.-
3.- Diseño Estructurado.
3.2.-- Estrategias de Diseño.
3.2.
Transacción.. 2º Nivel de Factorización
3.2.2.-- Análisis de Transacción
3.2.2.

Profesor: Juan Antonio López Quesada Tema 4: Diseño Estructurado 35

También podría gustarte