Tema 4' Diseo Estructurado - PowerPoint PPT Presentation

1 / 55
About This Presentation
Title:

Tema 4' Diseo Estructurado

Description:

... de izquierda a derecha y de arriba abajo (Piattini et al. 96) ... La posici n de la flecha (hacia arriba o hacia abajo) indica el sentido de la comunicaci n. ... – PowerPoint PPT presentation

Number of Views:89
Avg rating:3.0/5.0
Slides: 56
Provided by: juanantoni82
Category:

less

Transcript and Presenter's Notes

Title: Tema 4' Diseo Estructurado


1
Fundamentos de Ingeniería del Software
  • Tema 4. Diseño Estructurado.

Asignatura Fundamentos de Ingeniería del
Software Titulación Ingeniera Técnica de
Informática de Gestión Curso Académico
2004-2005 Curso 3º Cuatrimetres
Primero Créditos 6(33) Página Web
dis.um.es/lopezquesada Profesor Juan Antonio
López Quesada Departamento Informática y
Sistemas
2
Tema 4. Diseño Estructurado. Índice de
Contenidos.
  • El proceso de diseño.
  • Diseño estructurado.
  • Diagramas de estructura.
  • Estrategias de diseño
  • Análisis de transformaciones.
  • Análisis de transacciones.

3
Tema 4. Diseño Estructurado. 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).

4
  • Tema 4. Diseño Estructurado. Métrica 3 (II).
    Estructura

5
  • Tema 4. Diseño Estructurado. Métrica 3 (II). 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)

6
  • Tema 4. Diseño Estructurado.DSI.
  • Diseño del Sistema de Información (Proceso
    DSI)

7
  • Tema 4. Diseño Estructurado. Métrica 3 (II). DSI
  • DSI 5.- Diseño de la Arquitectura de módulos del
    Sistema
  • Objetivo para cada uno de los subsistemas se
    diseña la estructura modular de los procesos que
    lo integran.
  • Pto. de partida modelo de procesos obtenido en
    ASI 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.

8
Visión Panorámica
9
  • Tema 4. Diseño Estructurado.
  • 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.
  • Proceso iterativo a través del cual se traducen
    los requisitos en una representación del software.

10
  • Tema 4. Diseño Estructurado.
  • El Proceso de Diseño.

Análisis (Qué) Lenguaje comprensible por el
usuario
E-R
DFD
Organización lógica
Enfoque funcional
Diseño de alto nivel (arquitectónico)
Enfoque de datos
Arquitectura de procesos Estructura detallada
programas y módulos
Modelo lógico de datos Modelo físico de datos
Diseño (Cómo)
Diseño de bajo nivel (detallado)
Decisiones concretas organización y rendimiento
Esquema de BD y ficheros
Cuadernos de carga
(Piattini et al. 96)
Implementación Lenguaje comprensible por la
máquina
Codificación y pruebas
11
  • Tema 4. Diseño Estructurado.
  • El Proceso de Diseño.
  • Diseño de datos. Transforma el modelo del dominio
    de la información del análisis en las estructuras
    de datos necesarias para la implementación.
    Esquema Lógico de Datos Modelo Relacional.
  • Diseño arquitectónico. Estructura modular del
    programa/aplicación. Diagramas de Estructuras.
  • Diseño de interfaz. Interfaces del sw. con otros
    sistemas y con los usuarios.
  • Diseño procedimental. Descripción procedimental
    de los componentes del sw.

12
  • Tema 4. Diseño Estructurado. Métrica 3 (II). DSI
  • DSI 1.- Definición de la arquitectura del
    sistema.
  • Se define la arquitectura general del SI
  • particiones físicas
  • descomposición lógica en subsistemas de diseño
  • ubicación de cada subsistema en cada partición
  • especificación detallada de la infraestructura
    tecnológica

13
  • Tema 4. Diseño Estructurado. Métrica 3 (II). DSI
  • DSI 1.- Definición de la arquitectura del
    sistema.
  • Definición de niveles en la arquitectura
  • definición de las ppales. particiones físicas del
    SI (nodos y comunicaciones entre nodos)
  • gestores de datos
  • tipos de puesto cliente
  • tipos de dispositivos de impresión
  • monitores de teleproceso
  • servidores
  • comunicaciones
  • se usa un diagrama de representación (formato
    libre) o de despliegue UML

14
  • Tema 4. Diseño Estructurado. Métrica 3 (II). DSI
  • DSI 1.- Definición de la arquitectura del
    sistema. Ejemplo.

15
  • Tema 4. Diseño Estructurado. Métrica 3 (II). DSI
  • DSI 1.- Definición de la arquitectura del
    sistema.
  • Identificación de subsistemas de diseño
  • normalmente, evolución directa de los subsistemas
    de análisis, aunque se pueden adoptar otros
    criterios.
  • en diseño estructurado, se describen con un
    diagrama de estructura de alto nivel
  • subsistemas específicos funcionalidades propias
    del SI
  • subsistemas de soporte servicios comunes, que
    proporcionan un acceso transparente a los
    recursos
  • Se ubican los subsistemas en nodos
  • Se especifica el entorno tecnológico
  • se determina la implementación concreta de los
    nodos y comunicaciones especificados

16
  • Tema 4. Diseño Estructurado. Métrica 3 (II). DSI
  • DSI 5.- Diseño de la arquitectura de módulos del
    sistema.
  • Objetivo para cada uno de los subsistemas se
    diseña la estructura modular de los procesos que
    lo integran.
  • Pto. de partida modelo de procesos obtenido en
    ASI 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.

17
  • Tema 4. Diseño Estructurado. Métrica 3 (II). DSI
  • DSI 6.- Diseño físico de datos.
  • Objetivo definir la estructura física de datos
    que utilizará el sistema, a partir del modelo
    lógico de datos normalizado o del modelo de
    clases
  • Paso a tablas, si se usa un SGBDR.
  • Se analizan los caminos de acceso a los datos
    persistentes, por parte de cada módulo, con el
    fin de mejorar los tiempos de respuesta y
    optimizar recursos.

18
  • Tema 4. Diseño Estructurado. Métrica 3 (II). DSI
  • DSI 7.- Verificación y aceptación de la
    arquitectura del sistema.
  • Objetivos garantizar la calidad de las
    especificaciones del diseño y su viabilidad
  • Verificación de la calidad técnica de cada modelo
  • Aseguramiento de la coherencia entre varios
    modelos
  • Aceptación del diseño por parte de Explotación y
    Sistemas

19
  • Tema 4. Diseño Estructurado. Métrica 3 (II). DSI
  • DSI 8.- Generación de especificaciones de
    construcción.
  • A partir del diseño anterior, se generan las
    especificaciones para la construcción del SI,
    incluyendo
  • Especificación del entorno de construcción
  • herramientas, compiladores, generadores de
    código, etc.
  • Descripción de componentes
  • Especificación detallada de componentes
  • normalmente en pseudocódigo
  • Especificación de la estructura física de datos
  • definición y creación de los elementos del modelo
    físico de datos con el DDL del SGBD escogido

20
  • Tema 4. Diseño Estructurado. Métrica 3 (II). DSI
  • DSI 10.- Especificación técnica del plan de
    pruebas.
  • Se especifica en detalle el plan de pruebas del
    SI, para los niveles de prueba
  • Pruebas unitarias
  • Pruebas de integración
  • Pruebas de implantación
  • Pruebas de aceptación
  • Se especifica el entorno de las pruebas
  • Se definen los casos de prueba

21
  • Tema 4. Diseño Estructurado. Métrica 3 (II). DSI
  • Catálogo de requisitos (se completa)
  • Catálogo de excepciones
  • Catálogo de normas para el diseño y construcción
  • Diseño de la arquitectura del sistema
  • Entorno tecnológico del sistema
  • Procedimientos de operación y administración del
    sistema
  • Procedimientos de seguridad y control de acceso
  • Diseño detallado de los subsistemas de soporte
  • Modelo físico de datos optimizado
  • Asignación de esquemas físicos de datos a nodos
  • Además, en diseño estructurado
  • Diseño de la arquitectura modular
  • Diseño de interfaz de usuario
  • Además, en diseño orientado a objetos
  • Diseño de la realización de los casos de uso
  • Modelo de clases de diseño
  • Comportamiento de clases de diseño
  • Diseño de interfaz de usuario

22
  • Tema 4. Diseño Estructurado.
  • 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

23
  • Tema 4. Diseño Estructurado.
  • El Proceso de Diseño.
  • 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.
  • El esquema lógico de datos del sistema.

24
  • Tema 4. Diseño Estructurado.
  • El Proceso de Diseño.
  • Tareas a realizar
  • Módulos obtenidos en el análisis. Procesos
    Terminales (primitivos).
  • Organizar la estructura de estos módulos y
    definir las conexiones entre los mismos.
  • Describir el pseudocódigo para cada módulo.
    Técnicas descritas en el Tema 2.
  • Se basa en los siguiente Principios
  • Abstracción
  • Modularidad
  • Encapsulamiento y Ocultamiento de información
  • No confundir con programación estructurada.

25
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    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.

26
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Módulos.
  • Aquella parte de código que se puede llamar.
  • (Page-Jones 88).
  • Representa un programa, subprograma o rutina,
    dependiendo del lenguaje que se vaya a utilizar.
  • Admite parámetros de llamada y retorna algún
    valor, si es preciso.
  • Tamaño ideal 40-50 líneas
  • pero hay muchas opiniones!
  • Se representa en el diagrama mediante un
    rectángulo.

27
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Módulos.

MODULO PREDEFINIDO
MODULO
CONECTOR
IMPRIMIR CHEQUE DE PAGO
OBTENER DATOS CLIENTES
1
En Métrica también se dispone de
Almacenes de datos
NOMBRE
Dispositivos físicos
DISPOSITIVO
28
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Conexiones entre Módulos.
  • La conexión entre módulos se representa mediante
    una línea.
  • En la figura
  • A llama a B.
  • B hace su función.
  • B retorna a A, inmediatamente después del lugar
    donde se produjo la llamada de A a B.
  • 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.

MODULO QUE LLAMA
CONEXION
MODULO LLAMADO
B
29
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Conexiones entre Módulos.

A
C
B
Orden de ejecución de los módulos de izquierda a
derecha y de arriba abajo (Piattini et al. 96). ?
Según (Molina et al. 97) el orden no importa.
30
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Conexiones entre Módulos.

Ejemplo típico de menú
Menú login
Procesos Generales
Procesos para departamentos
Procesos para Agentes externos
31
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Comunicación entre Módulos.
  • Los signos para llevar a cabo la comunicación
    entre módulos son

Flags o controles
Datos
32
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Flag o Controles.
  • Mediante los flags o controles, se puede
    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 de que se puede proceder a una
    operación concreta.

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

34
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Parámetros.
  • Se pueden representar mediante tablas de interfaz.

Uso P ? procesado M ? modificado (...)
35
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Ejmeplo.

36
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Ejemplo.

Jerarquía Iterativa
Cuerpo del Bucle
EL ENTERO ES VÁLIDO
CONSEGUIR ENTERO VÁLIDO ... LEER_ENTERO(
fin_fichero, entero ) ... if VALIDAR_ENTERO(
entero ) then ... ...
FIN DE FICHERO
37
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Ejemplo.

38
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Ejemplo.
  • program EMISION_CHEQUES
  • type
  • treg_pago RECORD...END
  • treg_jornalero RECORD...END
  • treg_empleado RECORD...END
  • var
  • importe real
  • importe_pago_jorn, importe_pago_empl real
  • registro_pago treg_pago
  • 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)
  • ...

procedure OBTENER_REG_PAGO ( var rp treg_pago
var fin_reg boolean ) function
CALCULAR_NETO_JORN ( rj treg_jornalero ) real
function CALCULAR_NETO_EMPL ( re
treg_empleado ) real function
CALCULAR_BRUTO_JORN ( ret_diaria, jorn_trab
real ) real function CALCULAR_BRUTO_EMPL (
sueldo_base, complem real ) real function
CALCULAR_DEDUCCIONES ( pago_bruto, irpf real )
real procedure IMPRIMIR_CHEQUE_PAGO( num_emp
integer nom_emp string importe real )
39
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Especificación de los Módulos.
  • Interfaz-función (módulo, entradas, salidas,
    función).
  • Pseudo-código.
  • Más preciso que el usado en análisis
  • Deja cierto grado de libertad al programador
  • No trata aspectos de eficiencia, a menos que
    estén directamente relacionados con requisitos
  • Permite verificar la calidad del diseño
  • Herramientas complementarias
  • Diagramas de flujo
  • Nassi-Schneiderman
  • Tablas y árboles de decisión

40
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Estrategias de Diseño.
  • A veces hay que refinar el DFD de partida.
  • 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).
  • Los de nivel inferior realizan la mayor parte del
    trabajo de entrada, de cálculo y de salida.

41
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Estrategias de Diseño.
  • Revisar el modelo fundamental del sistema
  • DFD procesos primitivos
  • no hace falta crear el DFD de procesos
    primitivos
  • se añaden procesos, si hace falta
  • recomendado, como mínimo, tener 3 niveles de
    profundidad
  • Determinar si el DFD tiene características de
    transformación o de transacción.
  • indica expresamente la característica del DFD!

42
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Estrategias de Diseño.
  • Según sea de transformación o transacción
  • 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.
  • indica expresamente los elementos anteriores!

43
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Estrategias de Diseño.
  • Realizar el primer corte del diagrama de
    estructuras.
  • Realizar el segundo nivel de factorización.
  • Refinar la estructura del programa.
  • Asegurarse del trabajo realizado por el diseño
    obtenido.

44
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Análisis de Transformación.

45
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Análisis de Transformación. 1º
    Nivel de Factorización.

46
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Análisis de Transformación. 2º
    Nivel de Factorización.

47
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Análisis de Transacción.

48
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Análisis de Transacción. 1º Nivel
    de Factorización.

49
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Análisis de Transacción. 2º Nivel
    de Factorización.

50
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Análisis de Transformación. Ejemplo.

51
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Análisis de Transformación. Ejemplo.

52
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Análisis de Transacción. Ejemplo.

53
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Análisis de Transacción. Ejemplo.

54
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Centros de Transacción.
  • Normalmente el esquema de transacción no es tan
    claro
  • el proceso de transacción no aparece
    explícitamente en el DFD
  • ? solución examinar el diagrama de contexto y la
    lista de eventos para determinar los tipos de
    transacciones en el sistema

55
  • Tema 4. Diseño Estructurado. Diagrama de
    estructura (Diagrama de estructura de cuadros de
    Constantine). Centros de Transacción.

(Molina et al. 97) p.172
...
  • Seleccione la opción deseada
  • Realizar venta
  • Realizar devolución
  • Admitir pago
Write a Comment
User Comments (0)
About PowerShow.com