Modelamiento del SistemaDiagrama de Flujo de Datos (DFD)
NESLON RODRIGUEZ HUALLPA
DIAGRAMA DE FLUJO DE DATOS
CONTENIDO• Introducción al Modelamiento• Aspectos generales• Símbolos usados• Descripción de sistemas• Técnicas de modelamiento de DFD
• Diseño por niveles• Diseño de DFD físico y lógico
• Reglas de diseño• Asignación de nombres
DIAGRAMA DE FLUJO DE DATOS (DFD)ASPECTOS GENERALES
• Un DFD permite visualizar un sistema como un conjunto de procesos conectados entre sí por “conductos” y “almacenamientos de datos “.
• Utilizado en el análisis y diseño de sistemas de información.
• Utilizado como una primera herramienta para modelar los componentes de un sistema.
• Demarco (1978), Gane y Sarson (1979), E.Yourdon (1994)
DIAGRAMA DE FLUJO DE DATOS
ASPECTOS GENERALES• Componentes de un DFD
• Procesos • Almacenes de datos • Flujos de información • Entidades externas
• Características• Son esquemas gráficos• Particionados• Enfasis en el flujo de datos• Lógicos y no físicos• Preciso, conciso y de fácil lectura
3 Calcular
precioProcesos(Burbujas)
X Y
U
V
1P1
DIAGRAMA DE FLUJO DE DATOS
SÍMBOLOS USADOS
• Muestran lo que hace el sistema • Cada proceso tiene una o más entradas de datos • y una o más salidas
DIAGRAMA DE FLUJO DE DATOS
SÍMBOLOS USADOS Almacenes
1P1
2P2
Costos
1 Costos Depósitos de datos Los procesos pueden introducir o recuperar
datos
DIAGRAMA DE FLUJO DE DATOS
SÍMBOLOS USADOS Flujos de datos
Precio Unitario
Modelan los movimientos de información Tienen Lugar :
Entre procesos De un almacén a un proceso De un proceso a un almacén De una unidad externa origen a un proceso De un proceso a una unidad externa destino
DIAGRAMA DE FLUJO DE DATOS
SÍMBOLOS USADOSEntidades externas
Proveedor
1Pago Cuentas
CUENTASxPAGAR
ANTECEDENTESDEL PROVEEDOR
Factura
Cheque
Están fuera del sistema. Usan o proporcionan datos desde y hacia el
sistema. No se tiene control sobre ellas.
DIAGRAMA DE FLUJO DE DATOS
DESCRIPCIÓN DE SISTEMAS
Modelar el problema como único proceso
DIAGRAMA DE CONTEXTO
Se muestran todas las entidades externas que interactuan con el sistema y los flujos de datos entre estas entidades y el sistema
DFD. DESCRIPCIÓN DE SISTEMAS:
DIAGRAMA DE CONTEXTO
Departamento
Proveedores
Dirección
Sistema deControl
Presupuesto
Presupuesto Asignado
Sol. Aprobación Especial
Resumen GastosResp.Aprob.Especial
Gastos Requeridos
Solicitud RechazadaInforme Entrega Pedidos
elementos
Aviso entrega
DFD. DESCRIPCIÓN DE SISTEMAS: DIAGRAMA DE NIVEL SUPERIOR
2Establecer
PresupuestoDepartamentoDirección
1Comprobar
Fondos
3Clasificar
Gastos5
OrganizarAprovisionamiento
Proveedores
4Proporcionar
ResumenGastos
PRESUPUESTOASIGNADO
Gastos Requeridos
Sol.Rechazada
PresupuestoAsignado
Sol. Aprobación Especial
SOLICITUDESSUSPENDIDAS
Informe Entrega
Sol. aprobadaCTASxDEPTO TIPO CUENTAS
Sol. RegistradaPed.
Elem
Aviso entrega
Resum
engastos
Respuesta Aprobación Especial
DFD. DESCRIPCIÓN DE SISTEMAS:
EXPANSIÓN DE UN PROCESO
3.1Clasificarx tipo de
gastos 3.2Actualizar
tipocuenta
TIPO CUENTAS
3.3Sumartotal
3.4ActualizarRegistroDepto
CUENTASxDEPTO
Solicitud
aprobada
Solicitud-clasificada
Solicitud-Actualizada
Solicitud-totalizada
Solicitud-registrada
Expansión proceso : 3 Clasificar Gastos
DIAGRAMA DE FLUJO DE DATOS
DESCRIPCIÓN DE SISTEMAS• Hay que detenerse en algún momento.
• De no ser así podría llegarse a una especificación muy simple (Ej. Sumar dos números).
• Los DFD serían torpes y complicados.• Se puede expandir cada uno de los procesos en
DFD´s más detallados.• Es necesario llegar a un nivel en donde se
especifique cada elemento del DFD• Especificar procesos. • Especificar almacenes y flujos de datos.
DIAGRAMA DE FLUJO DE DATOS
DESCRIPCIÓN DE SISTEMAS3.1
Clasificarx tipo de
gastos
3.2Actualizar
tipocuenta
TIPO-CUENTASSol. Clasificada
Sol. Aprobada
*Por cada elemento pedido en el turnode requerimientos :• Obtener CANTIDAD para el TIPO delalmacenamiento TIPO-CUENTAS• Sumar CANT-TOTAL = CANT-TOTAL + CANTIDAD• Escribir TIPO-CUENTAS recuperado del almacen TIPO-CUENTAS
TIPO-CUENTAS= TIPO + CANT-TOTAL
*2= NUM-DEP+NUM-SOL+ (CANTIDAD + DESC)*
Notación : * Descripción de proceso*1 Descripción de almacén*2 Descripción de flujo
*1
DIAGRAMA DE FLUJO DE DATOSTÉCNICAS DE MODELAMIENTO DE DFD
Métodos
• de nivel (Top-down)• modelo físico y lógicoNiveles• Permiten comenzar con la función de nivel superior y
elaborarla en niveles más detallados.• Proporcionan legibilidad de los DFD. Se debería poder mirar
el DFD y comprender lo que hace el sistema.
• Cada nivel de un DFD es lo suficientemente pequeño como para comprenderlo claramente.
DIAGRAMA DE FLUJO DE DATOS
DISEÑO POR NIVELESBalance de flujos de datos
• Todos los flujos que entran en un proceso deben ser los mismos que entran en sus niveles expandidos.
• Los flujos de datos que salen de un proceso son los mismos que salen de sus niveles expandidos.
DIAGRAMA DE FLUJO DE DATOS
DISEÑO POR NIVELES• Aseguran que no se pierda información entre niveles• Numeración
• Diagrama de contexto tiene el nivel 0• Procesos de nivel superior tienen asociado desde el 1
B
Ext1A
B Ext 2C
Ext1
Ext 2 SistemaAC1P1
2P2
D
Diagramade contexto
Diagrama 1
DIAGRAMA DE FLUJO DE DATOS
DISEÑO POR NIVELES
A BEXT 1 Sistema EXT 2D Diagrama de contexto
1EXT 1A
D5 2
3 4x y w
vds1j k zEXT 2
BDFD de nivel superior
y2.1 2.2 2.3 wp l
Diagrama 2
3.1
3.2 3.3v
fg
zr s
ds2
Diagrama 3
v
kds1
DIAGRAMA DE FLUJO DE DATOS
DISEÑO POR NIVELES Expansión de Flujo de DatosEjemplo : DFD de nivel superior: Establecimiento y dirección de un préstamo
Solicitante 3Hacer
Pregunta2
ActualizarCuenta
1AprobarSolicitud CUENTAS-
PRESTAMOS
Q. Preguntas y respuestasReembolso
Solicitud de
préstamos
C. C
larificacióndel diálogo
R. respuestaa la solicitud
Detalle depréstamos
DIAGRAMA DE FLUJO DE DATOS
DISEÑO POR NIVELESDiagrama Proceso 1: Aprobar Solicitud
Solicitante
1.2ObtenerCódigo
1.1Recibir
Solicitud1.4
Decidir Préstamo
1.3ObtenerSalario
CUENTASPRESTAMOS
Solicictud rechazada (R1)
Solcitud aceptada (R2)
Detalle de préstamos aprobados
Resu
ltado
Solic
itud
Salar
io cla
rifica
doCódigo
Clarificado
SolicitudComprobada
Solicitud préstamo
C1 pedido
Código
C1 Código
C2 Pedido Salario
C2 Salario
1.5Preparar
Respuesta
DIAGRAMA DE FLUJO DE DATOS
DISEÑO DE DFD FÍSICO Y LÓGICO Modelo Físico
AlejandraSr.
GarcíaSr.
González
ARCHIVO-STOCK
Informe-B21
Informe-B21
Informe conHoras extras
Informe con Aumento
Resumen de controlde costos
Orden de compra
Procesos Físicos
Los DFD que muestran componentes físicos se llaman DFD físicos.
DIAGRAMA DE FLUJO DE DATOS
DISEÑO DE DFD FÍSICO Y LÓGICO
Procesos Lógicos
Los DFD que muestran sólo actividades y flujos de informaciónse llaman DFD lógicos.
Modelo Lógico
Ordenamientode stock
DeterminacostosM.O.
Genera Resumende Costos
ARCHIVO-STOCK
Informe-B21
Informe conHoras-extras
Informe-con aumentoOrden-de-
compra
Resumen de-controlde-costosInforme B-21
DIAGRAMA DE FLUJO DE DATOS
REGLAS DE DISEÑOAlgunas preguntas típicas :
• ¿ Cuántos Niveles ?• ¿ Cuántos procesos incluye un DFD?
¡ Muy difícil saberlo !
Se pueden sugerir algunas ideas.• Número ideal de procesos en un DFD es 7 ( 2). • Gran número de procesos DFD difícil de comprender. • Número pequeño incluye poca información para ser
útil.
DIAGRAMA DE FLUJO DE DATOS
REGLAS DE DISEÑO• Las interacciones entre procesos deben ser mínimas• se deben elegir las funciones adecuadas
DIAGRAMA DE FLUJO DE DATOS
REGLAS DE DISEÑO• Al expandir los procesos se hace evidente una mala distribución de la funcionalidad del sistema en el nivel anterior.
DIAGRAMA DE FLUJO DE DATOS
REGLAS DE DISEÑO¿Qué es un buen DFD ? Ausencia de estructuras de diagrama de flujo (condiciones,
iteraciones) Conservación de datos, y Una buena convención de nombres
Se obtienen DFD evidentes, completos y directos
DIAGRAMA DE FLUJO DE DATOS
REGLAS DE DISEÑOUn buen DFD no debería :
Tener flujos de datos que se dividan en un número de otros flujos.
Tener líneas cruzadas. Incluir ciclos sobre los elementos. Incluir flujos de datos que actúen como señales para activar
procesos.
DIAGRAMA DE FLUJO DE DATOSREGLAS DE DISEÑO. FLUJOS
ILEGALES
Obtenerresultado Pérdidas
Ventas Beneficios
Compararcosto
Costo Real
Costo Estándar
real < estándar
real >= estándar
Facturar
TRANSACCIONES
Factura
Fin de mes
AcumularVentas
ObtenerRegistro
Registro Venta
Aún quedan?
Vtas diarias
Caso 1 Caso 2
Caso 3
Caso 4
DIAGRAMA DE FLUJO DE DATOS
REGLAS DE DISEÑODecisión en un DFD
ComprobarDisponibilidad
de elemento
REGISTRO-INVENTARIO= NUM-SOLICITUD + CANT-MANTENIDA
SOLICITUD-NOENCO= NUM-SOLICITUD +NUM-ELEMENTO + CANT-NECESITADA
Aviso no disponibilidad
Aviso entrega
Elemento pedido
= NUM-SOLICITUD+ NUM-ELEMENTO + CANT-NECESITADA
BUSCAR REGISTRO-INVENTARIO conNUM-ELEMENTO en REGISTRO-INVENTARIO = NUM-ELEMENTO en elemento-pedidoIF CAN-MANTENIDA en REGISTRO-INVENTARIO < CANT-NECESITADA en ELEMENTO-PEDIDO THEN escribe SOLICITUD-NOENCO Enviar aviso de no disponibilidad ELSE Enviar aviso de entrega.
DIAGRAMA DE FLUJO DE DATOS
REGLAS DE DISEÑO
CalcularVentasDiarias
Ventas Totales= TOTAL-VENTAS-DIARIAS
Extracto Ventas= NUM-ELEMENTO +CANT-VENDIDA +PRECIO
REPEAT para todos los registros BEGIN CANTIDAD-VENTAS = CANT-VENDIDA * PRECIO TOTAL-VENTAS-DIARIAS = TOTAL-VENTAS-DIARIAS + CANTIDAD-VENTAS END enviar “ventas totales”
Repetición en un DFD
DIAGRAMA DE FLUJO DE DATOS
REGLAS DE DISEÑOConservación de los Datos.Para almacenes
“Lo que sale de un almacén de datos primero debe entrar”.
Para procesos“Un proceso no puede crear datos nuevos, sólo puede
recoger las entradas y transformarlas para obtener la salida en un nuevo formato”.
“Un proceso no debería perder ningún dato”.
DIAGRAMAS DE FLUJO DE DATOS
ASIGNACIÓN DE NOMBRES• DFD legibles Evitar nombres
no significativos
Son nombres inadecuados: Datos necesitados, Operaciones
estándar• Nominación de Procesos
• Usar una frase que describa el proceso• P.e. editar factura, verificar factura
• Usar un nombre general si el proceso describe una función compleja (multifuncional)
• P.e. examinar transacción
DIAGRAMAS DE FLUJO DE DATOS
ASIGNACIÓN DE NOMBRES• Nominación de almacenes
• Válidos los mismos criterios dados para procesos• P.e. nombre general : Datos-usuario nombre específico : Pedido-cliente
• Nominación de Flujos• Deberían nominarse usando una palabra (ideal)• En muchos casos, sin embargo, deben usarse palabras
adicionales, p.e.: factura validada.
DIAGRAMAS DE FLUJO DE DATOS
ASIGNACIÓN DE NOMBRES• Nominación de flujos (procesos almacenes)• Por convención, los flujos que transportan el registro
completo (todos los atributos) no se etiquetan• Pero si el proceso recupera o almacena una parte de
los atributos, éstos se deben identificar
ClienteRegistra
pago cliente
CUENTA-CLIENTErut+fecha+cantidadFACTURAS
Productos a entregar
Rut-cliente+cantidadCheque
F1
A1
E1 P1 E2 P2
E3 P3
P4
A2
F2
F3
F4
F8 F6
F7 F5
F9
F10
F11
F12
F13
F14
F15
F5 Ft1
F2
A1 E1
P1
E2
P3
P2
F3
F7
F1
A2
F4
F9
F8
F10
Ct
F66
F11
P4
F12
F12.1 F12.2
F13