Introducción al Análisis Estructurado

MTP Tema 2: Introducción al Análisis Estructurado MTP Tema 2: Introducción al Análisis Estructurado Objetivos Contenidos: ■ ◆ Introducción. ◆
Author:  Rodrigo Toro Ruiz

15 downloads 92 Views 212KB Size

Story Transcript

MTP

Tema 2: Introducción al Análisis Estructurado

MTP

Tema 2: Introducción al Análisis Estructurado

Objetivos

Contenidos:





Introducción.



Diagrama de Flujo de Datos.





Elementos en un DFD.



Explosión de un Proceso.



Niveles de DFDs.



Guías para realizar los DFDs.



Diccionario de Datos.



Especificación de Procesos.



Realización de un ejercicio.



EUI-FI UPV

MTP

Tema 2: Introducción al Análisis Estructurado

El alumno conocerá el Análisis Estructurado como técnica para llevar a cabo la primera fase del ciclo de vida clásico. El alumno aprenderá qué es el Análisis Estructurado y qué herramientas utiliza. El alumno aprenderá a interpretar el Análisis de un sistema especificado mediante la metodología Estructurada.

EUI-FI UPV

1

Tema 2: Introducción al Análisis Estructurado

MTP

Bibliografía

2

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado Introducción



Bibliografía básica: ◆ ◆ ◆



Metodología y Tecnología de la Programación. Capítulo 8. SPUPV97.498, 1997. Ingeniería del Software. Capítulos 5, 6 y 7. R. Pressman. McGraw Hill, 1993 (3ª ed.) y 1997 (4ª ed.). Ejercicios Solucionados de Metodología y Tecnología de la Programación. SPUPV-97.960, 1997.

Propósitos del Análisis de Requisitos ◆ ◆ ◆



Bibliografía complementaria: ◆ ◆ ◆

Análisis Estructurado Moderno. E. Yourdon. Prentice Hall, 1994. Software Engineering. Capítulos 4, 5, 6. I. Sommerville. AddisonWesley, 1996. The Practical Guide to Structured System Design. M. Page-Jones. Prentice Hall, 1988.

EUI-FI UPV

3

Obtener una descripción lógica del sistema a desarrollar. Descripción del ámbito del sistema. Especificación: • funcional • de datos • de rendimiento • de interfaz • de pruebas

EUI-FI UPV

4

MTP





Introducción al Análisis Estructurado Introducción ■

Analista → entender con precisión lo que el usuario quiere. Usuario → entender con precisión el producto que se le ofrece.

Clave del éxito ◆ Buena comunicación Usuario - Analista

MTP

◆ ◆ ◆ ◆

Qué es el Análisis Estructurado ◆ Técnica de modelado del flujo, contenido y transformación de la información que fluye por un sistema. ◆ Nació como complemento al Diseño Estructurado. ◆ El término “Análisis Estructurado” fue popularizado por DeMarco a fines de los 70, quien presentó y denominó los símbolos gráficos que permitirían al analista crear modelos de flujos de información. ◆ Yourdon, Gane y Sarson y otros presentaron variaciones a la propuesta original. ◆ A mediados de los 80 Ward y Mellor proponen ampliaciones para su aplicación en sistemas de tiempo real. EUI-FI UPV

5

Tema 2: Introducción al Análisis Estructurado

MTP

6

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Introducción

Diagrama de Flujo de Datos (DFD)

Qué Herramientas utiliza el Análisis Estructurado ◆

Tema 2: Introducción al Análisis Estructurado

Introducción

EUI-FI UPV



MTP

Introducción al Análisis Estructurado Desafíos del Análisis ◆



Tema 2: Introducción al Análisis Estructurado



Diagramas de Flujo de Datos (DFD) Diccionario de Datos Especificaciones de Procesos Diagramas Entidad-Relación Diagramas de Transición de Estados

El DFD representa un modelo del flujo de información del sistema y se caracteriza porque: ◆ ◆ ◆ ◆ ◆ ◆ ◆

EUI-FI UPV

7

Muestra el flujo de la información. Muestra las transformaciones aplicadas a los datos desde la entrada hasta la salida. Especifica QUÉ hace el sistema. Es gráfico. Es comprensible por los usuarios. Se puede usar a cualquier nivel de detalle. Permite el particionamiento del sistema en diferentes niveles de detalle. EUI-FI UPV

8

MTP



Tema 2: Introducción al Análisis Estructurado

MTP

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Diagrama de Flujo de Datos (DFD)

Elementos de un DFD

Un ejemplo de DFD

Entidades Externas ◆ Algo o alguien que envía o recibe información. ◆ Marcan los límites del sistema. ■ Notación

Libros Editores Cliente

pedido

detalle libro

Nombre de Entidad Externa

dirección

Estado de crédito

2.2 Crear Petición a editores

2.1 Verificar si el pedido es válido

pedido valido Clientes

orden de compra

pedido por lote



Ejemplos Departamento de ventas

Editor

Jefe de Personal

Cliente

Proveedor

Pedidos Pendientes

EUI-FI UPV

MTP

EUI-FI UPV

9

Tema 2: Introducción al Análisis Estructurado

MTP

10

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Elementos de un DFD

Elementos de un DFD

Almacenes de datos ◆ Depósito (computacional o no) donde se guardan datos para uso posterior. ◆ P.e. Un fichero, una Base de Datos, un archivador ■ Notación

Procesos ◆ Algo o alguien que transforma y/o manipula flujos de datos. Número ■ Notación identificador

Nombre del almacén ■ ■

Ejemplos

n Nombre del proceso

del proceso

Ejemplos Solicitudes de becas

Proveedores

EUI-FI UPV

Facturas pendientes

11

1.2 Actualizar Inventario

5.3.1 Imprimir Expediente EUI-FI UPV

3 Calcular Retención

1.1 Pedir Nombre de Usuario 12

MTP

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Elementos de un DFD

Conexiones permitidas en un DFD

Entidades Procesos Almacenes ✓ Entidades X X ✓ ✓ ✓ Procesos ✓ Almacenes X X

flujo de datos

Ejemplos

DNI Válido

Nombre de usuario

Informe de Ventas del mes

EUI-FI UPV

MTP

■ ■ ■

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado Flujos de datos ■ Representan movimientos de información dentro del sistema. ■ Pueden tener 2 o más destinos simultáneamente. ■ Notación Nombre del



MTP

EUI-FI UPV

13

Tema 2: Introducción al Análisis Estructurado

MTP

14

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Explosión de un proceso

Explosión de un proceso

Consiste en desagregar un proceso padre en un nuevo DFD de mayor detalle. Se produce a medida que se conocen más actividades internas a dicho proceso. Normas a seguir al explosionar un proceso: ✦





Numeración: Al explosionar el proceso “n”, se numerarán los procesos hijos como n.1, n.2, ... DFD Balanceado: Todos los flujos que entraban o salían del proceso padre deberán entrar y salir del conjunto de procesos hijos. Del DFD obtenido por explosión pueden surgir nuevos flujos correspondientes al tratamiento de errores y excepciones. Asimismo pueden aparecer almacenes de datos privados. EUI-FI UPV

15



Otras normas de construcción de DFDs ◆

No debe tenerse en cuenta aspectos de iniciación o terminación de funciones.



Generalmente, no habrá almacenes de datos en los que sólo se escriba.



Todos los procesos, almacenes de datos, flujos de datos y entidades deben tener asignado un nombre.



Todos los procesos deben tener al menos un flujo de entrada y otro de salida.



Los DFD deben ser independientes de la implementación.

EUI-FI UPV

16

MTP

Tema 2: Introducción al Análisis Estructurado

MTP

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Niveles de un DFD

Niveles de un DFD



La cantidad de niveles depende de la complejidad y magnitud del sistema.



Un proceso no debe explosionarse si lo que realiza se puede describir con detalle en no más de media página.



Normalmente en los DFDs de último nivel se muestra el tratamiento de errores y excepciones.









EUI-FI UPV

Diagrama de Contexto (Nivel 0) ◆ Es un resumen genérico del sistema. ◆ Un único proceso y las entidades externas. DFD 0 (Nivel 1) ◆ Modelo con toda la funcionalidad del sistema. DFD 1,..., DFD 2,... (Nivel 2) ◆ DFDs que corresponden a la explosión de cada proceso padre del Nivel 1. Niveles Adicionales (3, 4,...) ◆ DFDs que representan la explosión de procesos contenidos en los DFDs del nivel inmediatamente anterior. EUI-FI UPV

17

MTP

Tema 2: Introducción al Análisis Estructurado

MTP

18

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Niveles de un DFD

Guías para construir los DFDs

Diagrama de Contexto b

0

a



Estudio inicial mediante: entrevistas a usuarios, lectura de documentos relacionados con el área en estudio



Identificar: alcance del sistema, información relevante, entidades externas.



Elaborar primer borrador de DFD 0, identificando procesos, flujos, almacenes de datos y entidades externas.



Revisión con el equipo informático. Verificar nombres adecuados en procesos y flujos de datos, verificar que cada proceso y almacén de datos tiene entradas.

DFD del Nivel 0

explosión de proceso 0 DFD 0 d1 1

3 DFD del Nivel 1

2 explosión de proceso 2

DFD 2 2.1

2.2 2.4 EUI-FI UPV

2.3 d2

DFD del Nivel 2

19

EUI-FI UPV

20

MTP

Tema 2: Introducción al Análisis Estructurado

MTP

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Introducción al Análisis Estructurado Guías para construir los DFDs ■

Obtener un segundo borrador de DFD 0 incorporando posibles modificaciones.



Revisión con el usuario para asegurar que el DFD refleja el sistema. Obtener confirmación por parte del usuario.



Elaborar DFDs de segundo nivel.



Confirmar DFD 0 verificándolo con respecto a DFDs de segundo nivel. Verificar que los DFDs están balanceados.



Revisión final para validar DFD 0 y DFDs de más bajo nivel. EUI-FI UPV

MTP







Introducción.



Diagrama de Flujo de Datos. ✦

Elementos en un DFD.



Explosión de un Proceso.



Niveles de DFDs.



Guías para realizar los DFDs.



Diccionario de Datos.



Especificación de Procesos.



Realización de un ejercicio.

EUI-FI UPV

21

Tema 2: Introducción al Análisis Estructurado

MTP

22

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Diccionario de Datos

Diccionario de Datos

El Diccionario de Datos contiene la descripción detallada de cada dato del sistema. ◆ Existirá una entrada por cada flujo de datos o almacén de datos que aparezca en los DFDs del sistema. ◆ Se especificará cada estructura de datos hasta el nivel más elemental. Cada dato debería tener una definición que incluya: ◆ Comentario que explique el significado en el contexto del sistema. ◆ Composición, si no es un dato elemental. ◆ Valores posibles, si es un dato elemental. EUI-FI UPV

23



Notación = + () {} [] ** @ |

está compuesto de concatenación de datos dato opcional repetición selección de una de las alternativas comentario campo clave para un almacén de datos separador de alternativas en el constructor []

EUI-FI UPV

24

MTP



Tema 2: Introducción al Análisis Estructurado

◆ ◆ ◆ ◆ ◆

Introducción al Análisis Estructurado

Diccionario de Datos

Diccionario de Datos

MTP

■ ■



Ejemplos ◆ estado_civil = [s|c|v|d|x|o] ◆

título_cortesía = [Sr| Sra.|Don|Doña] primer_nombre = {caracter_permitido} segundo_nombre = {caracter_permitido} apellido_paterno = {caracter_permitido} apellido_materno = {caracter_permitido} caracter_permitido = [A-Z|a-z|0-9|‘|-| |] EUI-FI UPV



Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado Ejemplos ◆ nombre = título_cortesía + primer_nombre + (segundo_nombre) + apellido_paterno + apellido_materno ◆

MTP

registro_empleado =* datos de un empleado * nombre_empleado + num_empleado + fecha_nacimiento + (num_teléfono) + dirección + estado_civil + {nombre_hijo}

EUI-FI UPV

25

Tema 2: Introducción al Análisis Estructurado

MTP

26

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Especificación de procesos

Lenguaje Estructurado

Son descripciones de la lógica interna de los procesos de los DFDs de último nivel. Definen qué debe hacerse para transformar las entradas en salidas. Herramientas: ◆ lenguaje estructurado o pseudocódigo, ◆ árboles de decisión, ◆ tablas de decisión, ◆ diagramas de Nassi-Schneiderman, ◆ diagramas de flujo, ◆ descripción narrativa.

EUI-FI UPV

27



Lenguaje estructurado ◆ Implica utilizar el lenguaje natural con algunas restricciones. ◆ Equilibrio entre la precisión de un lenguaje formal y la informalidad y legibilidad del lenguaje natural. ◆ Una sentencia del lenguaje estructurado debería ser: ✦ una ecuación algebraica, p.e. X = (Y*Z)/(Q+14) ✦ una sentencia imperativa consistente de un verbo y un objeto. ✦ Combinación de constructores estructurados.

EUI-FI UPV

28

MTP







Tema 2: Introducción al Análisis Estructurado

MTP

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Lenguaje Estructurado

Lenguaje Estructurado

Verbos tipo: obtener (aceptar o leer) mover borrar poner (escribir) reemplazar ordenar encontrar (buscar o localizar) calcular validar Objetos: ✦ elementos descritos en el Diccionario de Datos ✦ datos locales al proceso. Constructores estructurados SI condición sentencias-1 SI NO sentencias-2 FINSI EUI-FI UPV

MTP

Ejemplo Nombre Proceso: Verificar_Crédito Id_cliente Número : 3.5 pedido_de_pago_previo Definición : Decidir tratamiento de pago para pedidos. Sin pedidos previo pago o si debe 3.5 pedidos_con_crédito_ok pedirse el pago al cliente. Verificar Crédito Entradas : pedidos historia_de_pagos Salidas : pedido_de_pago_previo historia_de_pagos pedidos_con_credito_ok pedido_rechazado pedido_rechazado ■

EUI-FI UPV

29

Tema 2: Introducción al Análisis Estructurado

MTP

Introducción al Análisis Estructurado

30

Tema 2: Introducción al Análisis Estructurado

Introducción al Análisis Estructurado

Lenguaje Estructurado Lógica Interna:

Árboles de decisión ■

INICIO LEER historia_de_pagos

Se recomienda el uso del árbol de decisión cuando el número de acciones es pequeño y no son posibles todas las combinaciones. primer orden más de 12 días

EN CASO

hacer pedido

CASO cliente es nuevo ENVIAR pedido_de_pago_previo CASO cliente es corriente (*promedio de dos pedidos mensuales*) OBTENER balance

total órdenes < 100

SI balance esta vencido más de dos meses

total órdenes >= 100

ENVIAR pedido_rechazado SI NO ENVIAR pedido_con_credito_ok FIN_SI FINCASO TÉRMINO EUI-FI UPV

primer orden 12 días o menos

descuento editor

sin descuento editor 31

esperar

calcular descuento y hacer pedido hacer pedido

EUI-FI UPV

32

MTP

Tema 2: Introducción al Análisis Estructurado

MTP

Tema 2: Introducción al Análisis Estructurado

Ejercicio: Construir el Diagrama de Contexto

Introducción al Análisis Estructurado Tablas de decisión ■

CLIENTES

Se utiliza la tabla de decisión cuando existen muchas combinaciones. 1

2

3

4

5

6

7

8

edad > 21

Y

Y

Y

Y

N

N

N

N

sexo

V

V

M

M

V

V

M

M

peso > 60

Y

N

Y

N

Y

N

Y

N

Medicamento 1

X

Medicamento 2

X X

Medicamento 3 Ninguno

1. Leer Pedido

X

MTP

No_existe

Artículos

X 33

Tema 2: Introducción al Análisis Estructurado

Ejercicio: Construir el Diagrama de Contexto

CLIENTES Línea_pedido

Línea_impresión SISTEMA

EUI-FI UPV

Cod_cliente

6. 7. 4. Formatear %_Descuento Calcular Ver Importe Importe Descuento Importe_Neto Neto Neto Cliente

35

No_existe

Importe_Total

Importe_Total

Cod_Artículo 3. 5. Importe_Artículo 2. Válido Calcular Calcular Validar Importe Importe Artículo Artículo Total

X

EUI-FI UPV

Importe Neto Formateado

Cantidad Cod_Artículo

X X

8. Escribir Línea_Impresión Imp. Neto Formateado

Línea_Pedido

X X

Tarifa_Descuentos

CLIENTES

Tarifa_Artículos EUI-FI UPV

34

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.