Diagrama de Flujo de Datos (DFD)

Anuncio
Análisis
Análisis de
de Sistemas
Sistemas
M.Sc.
M.Sc. Lic.
Lic. Aidee
Aidee Vargas
Vargas C.
C.
octubre
octubre 2007
2007
Metodologías de Desarrollo de Software
• Las metodologías existentes se dividen
en dos grandes grupos:
• Metodologías estructuradas
• Metodologías Orientadas a objetos.
Metodologías
Metodologías Estructuradas
Estructuradas
• Proponen la creación de modelos del sistema que representen los
procesos, los flujos y las estructuras de los datos de una manera
jerárquica o “top-down”.
• Pasan de una visión general del problema hasta llegar a un nivel de
abstracción menor.
• Este enfoque jerárquico se puede focalizar en las funciones o
procesos del sistema, en la estructura de los datos, o en ambos
aspectos, dando lugar a metodologías orientadas a procesos, a datos
y mixtas.
Metodologías
Metodologías Estructuradas
Estructuradas
ƒ Basadas en técnicas gráficas dando lugar al concepto de
especificación estructurada.
ƒ Una especificación estructurada es un modelo gráfico,
particionado, descendente y jerárquico de los procesos del sistema
y de los datos utilizados por los procesos. Se compone de:
- Diagrama de Flujo de Datos (DFD)
- Diccionario de Datos (DD)
- Especificaciones o miniespecificaciones de procesos
- Diagrama Entidad-Relación (ER)
- Diagrama de Transición de Estados
Metodologías
Metodologías Estructuradas
Estructuradas
ƒ Diagramas de Flujo de Datos (DFD). Representan los
procesos o funciones que debe llevar a cabo un sistema en
distintos niveles de abstracción y los datos que fluyen entre
las funciones. Los procesos más complejos se descomponen
en nuevos diagramas hasta llegar a procesos sencillos.
ƒ Diccionario de Datos (DD). Es el conjunto de las
definiciones de todos los datos que aparecen en el DFD, ya
sea almacenados o indicados en los diferentes flujos de
datos. El diccionario de datos se crea a la vez que los DFD´s
durante el proceso de análisis del sistema.
Metodologías
Metodologías Estructuradas
Estructuradas
ƒ Especificación de un Proceso o Miniespecificación. Define
cómo se obtienen las salidas de un proceso sencillo o elemental
en función de las entradas al mismo. Existen varias alternativas:
el empleo de lenguajes estructurados, diagramas de acción, de
flujo, árboles de decisión, tablas de decisión, etc..
ƒ Diagrama Entidad-Relación: Se focaliza en los datos del
sistema modelado, brindando una visión unificada de los
mismos. Los principales elementos de este modelo, como su
nombre lo indica, son las entidades y las relaciones, a las
que se suman los atributos, de ambas.
Metodologías
Metodologías Estructuradas
Estructuradas
ƒ Diagrama de Transición de Estados: Es un
modelo gráfico que focaliza el comportamiento
dependiente del tiempo de un sistema o de un
recurso de un sistema.
Diagrama
Diagrama de
de Flujo
Flujo de
de Datos
Datos (DFD)
(DFD)
ƒ Un DFD es un diagrama en forma de red que representa el flujo
de datos y las transformaciones que se aplican sobre ellos al
moverse desde la entrada hasta la salida del sistema.
ƒ Se emplea para modelar, en distintos niveles de abstracción, las
funciones de un sistema y los datos que flujen entre ellas.
ƒ En los niveles superiores se definen las funciones del sistema en
forma general y en los niveles inferiores se definen dichas
funciones de manera más detallada.
Descomposición
Descomposición en
en
Niveles
Niveles
de
de un
un DFD
DFD
Componentes
Componentes de
de un
un DFD
DFD
„
„
„
„
Procesos, funciones o transformaciones: son los
componentes funcionales del sistema.
Almacenes: representan datos almacenados o en reposo.
Entidades externas: representan la fuente y/o el destino
de la información del sistema.
Flujos de Datos: representan los datos que fluyen entre
las funciones o procesos.
Procesos,
Procesos, funciones
funciones oo transformaciones
transformaciones
•Un proceso puede interpretarse como una
función que debe llevar a cabo el sistema.
•Debe ser capaz de generar los flujos de datos de salida a
partir de los flujos de datos de entrada y de una
información local.
•Un proceso se identifica mediante un número y un
nombre, que deben ser únicos en el conjunto de DFDs que
representan el sistema.
•El nombre debe ser breve y lo más representativo posible
de la función que describe. Normalmente se forma por un
verbo y un sustantivo.
Almacenes
Almacenes de
de Datos
Datos
„
„
Un almacén de datos representa información del sistema
almacenada en forma temporal.
Es un depósito lógico de almacenamiento que puede
representar distintos tipos de información física (una
bandeja con papeles, un archivador manual, un archivo en
una computadora o una base de datos).
Almacenes
Almacenes de
de Datos
Datos (Cont.)
(Cont.)
„
„
„
„
Si en un DFD hay un almacén que sólo tiene conexión con
un único proceso, se dice que es local a dicho proceso.
Luego, no debe aparecer en ese nivel. Debe representarse
en el diagrama donde se detalla el proceso.
Cada almacén debe representarse por primera vez en el
nivel más alto en el que sirve de interconexión entre dos o
más procesos. Además, se representará en los niveles
inferiores.
El contenido de los almacenes se define en el diccionario
de datos (DD).
Si el contenido de un almacén es muy complejo, se puede
representar en un diagrama Entidad-Relación (ER).
Entidades
Entidades Externas
Externas
Representación
Representación gráfica
gráfica
Una entidad externa representa un
generador o consumidor de información
del sistema, pero no pertenece al mismo.
„
ƒPuede representar un subsistema, persona, departamento,
organización, etc., que proporcione datos al sistema o que
los reciba de él.
ƒLos flujos que parten de o llegan a las entidades externas
definen la interfaz entre el sistema y el mundo exterior.
Entidades
Entidades Externas
Externas (Cont.)
(Cont.)
„
„
„
Normalmente, las entidades externas sólo deberían
aparecen en el diagrama de mayor nivel (Diagrama de
Contexto).
Pueden incluirse en otros niveles si mejoran la legibilidad
de los diagramas..
Toda entidad externa se identifica con un nombre.
Flujos
Flujos de
de Datos
Datos
„
„
„
„
Se interpretan como un camino a través del cual viajan
datos de composición conocida de una parte del sistema a
otra.
Son el medio de conexión de los restantes componentes del
DFD.
Se representan por arcos dirigidos, en donde la flecha
indica la dirección de los datos.
Deben tener un nombre o rótulo que los identifique.
Flujos
Flujos de
de Datos
Datos (Cont.)
(Cont.)
„
Los flujos de datos que conectan componentes de un
DFD deben respetar las siguientes restricciones:
Destino
PROCESO ALMACÉN ENTIDAD EXTERNA
Fuente
PROCESO
SI
SI
SI
ALMACÉN
SI
NO
NO
ENTIDAD EXETRNA
SI
NO
NO
Flujos
Flujos de
de Datos
Datos (Cont.)
(Cont.)
„
Las diferentes conexiones entre procesos y
almacenes que es posible realizar son:
yyy
Proceso A
Proceso A
Almacén temporal
xxx
Flujo de Consulta
Almacén temporal
Flujo de
Actualización
Almacén temporal
Flujo de Diálogo
zzz
Proceso A
Flujos
Flujos de
de Datos
Datos (Cont.)
(Cont.)
„
El flujo de consulta
muestra la utilización de la
información del almacén por el proceso que consulta para:
„
„
„
El flujo de actualización indica que el proceso va a
alterar la información contenida en el almacén para:
„
„
„
„
Utilizar los valores de uno o más atributos de una ocurrencia
del almacén
Comprobar si los valores de los atributos seleccionados
cumplen determinadas condiciones
Crear una nueva ocurrencia de un dato (entidad o relación)
Borrar una ocurrencia de un dato
Cambiar el valor de un atributo
El flujo de diálogo involucra un flujo de consulta y uno
de actualización.
Descomposición
Descomposición en
en
Niveles
Niveles
de
de un
un DFD
DFD
Ejemplo:
Ejemplo: Gestión
Gestión de
de un
un Video
Video Club
Club
DIAGRAMA DE CONTEXTO
DIRECCIÓN
VIDEOCLUB
Datos
Proveedores
Datos
Datos Datos Pedido
Pago Bono
Comprobante
Pedido alquiler
CLIENTES
Devolución
Compra Bono
Envío Publicidad
Sanción
Informes
Factura
0.
GESTIÓN
VIDEOCLUB
Entrega
Pedido
Pago
PROVEEDORES
Gestión
Gestión de
de un
un Video
Video Club
Club
DIAGRAMA 0: GESTIÓN DEL VIDEO CLUB
Datos Proveedores
Datos Pagos
PELÍCULAS
Compra Bono
Datos Pedido
Pedido alquiler
Devolución
1.
GESTIONAR
CLIENTES
2.
GESTIONAR
PROVEEDORES
BONOS
Envío Publicidad
Pago
Factura
Entrega
Sanción
Facturas
pendientes de
pago
3.
GESTIONAR
BONOS
Comprobante
Informe de
demanda
Pedido
Alquileres
pendientes de
devolución
Datos
Bono
Entregas
pendientes
Facturación
mensual
Gestión
Gestión de
de un
un Video
Video Club
Club
DIAGRAMA 1: GESTIONAR CLIENTES
Devolución
Pedido alquiler
PELÍCULAS
Comprobante
Informe de
demanda
Alquileres
pendientes de
devolución
Sanción
ALQUILERES
BONOS
Compra Bono
1.2
GESTIONAR
DEVOLUCIONES
1.1
GESTIONAR
ALQUILERES
1.3
ACTUALIZAR
CRÉDITO
CLIENTE
CLIENTES
1.4
GENERAR
ENVÍO
PUBLICIDAD
Envío Publicidad
Gestión
Gestión de
de un
un Video
Video Club
Club
DIAGRAMA 1.1: GESTIONAR ALQUILERES
PELÍCULAS
Pedido alquiler
1.1.1
VALIDAR
ALQUILER
1.1.2
GENERAR
DEMANDA
ALQUILERES
Informe de
demanda
ALQUILERES
Comprobante
Alquileres
BONOS
CLIENTES
1.1.3
pendientes de
GENERAR
devolución
ALQUILERES
PENDIENTES
DEVOLUCIÓN
Gestión
Gestión de
de un
un Video
Video Club
Club
DIAGRAMA 1.2: GESTIONAR DEVOLUCIONES
DEVOLUCIONES
Devolución
1.2.1
REGISTRAR
DEVOLUCIÓN
1.2.2
CALCULAR
SANCIÓN
ALQUILERES
PELÍCULAS
Sanción
Gestión
Gestión de
de un
un Video
Video Club
Club
DIAGRAMA 2: GESTIONAR PROVEEDORES
Datos Pedido
Pedido
Entrega
PEDIDOS
2.1
GENERAR
PEDIDO A
PROVEEDOR
2.2
GESTIONAR
ENTREGAS
PELÍCULAS
Entregas
pendientes
Datos Pagos
PROVEEDORES
Datos
2.4
Proveedores
ACTUALIZAR
PROVEEDORES
2.3
REALIZAR
PAGOS
FACTURAS
PAGOS
Pago
Factura
2.5
GESTIONAR
FACTURAS
Facturas
pendientes de
pago
Facturación
mensual
Gestión
Gestión de
de un
un Video
Video Club
Club
DIAGRAMA 2.5: GESTIONAR FACTURAS
PAGOS
Factura
2.5.1
REGISTRAR
FACTURA
2.5.2
EMITIR
FACTURAS
PENDIENTES
PAGO
Facturas
pendientes de
pago
FACTURAS
2.5.3
REALIZAR
FACTURACIÓN
MENSUAL
Facturación
mensual
Gestión
Gestión de
de un
un Video
Video Club
Club
DIAGRAMA 2.2: GESTIONAR ENTREGAS
PEDIDOS
Entrega
2.2.1
EMITIR
ENTREGAS
PENDIENTES
2.2.1
REGISTRAR
ENTREGA
ENTREGAS
PELÍCULAS
Entregas
pendientes
Recomendaciones
Recomendaciones en
en la
la creación
creación de
de un
un DFD
DFD
ƒ Normalmente
la construcción se realiza mediante un
procedimiento de refinamiento iterativo.
ƒ Es imposible crear los DFD correctamente en un primer
intento.
ƒ Dado que al comenzar el modelado no se conocen todas las
características del sistema, puede que haya que incluir nuevos
requisitos o cambiar los existentes. Esto determina la
realización de cambios en los DFDs.
ƒ Es importante identificar correctamente las entidades
externas y las características de la información que éstas
proporcionan.
Recomendaciones
Recomendaciones en
en la
la creación
creación de
de un
un DFD
DFD
• Al pasar de un nivel a otro debe verificarse la
consistencia, es decir que la información que entra y
sale de un proceso de nivel N sea consistente con la
información que entra y sale del DFD en que este
proceso se descompone.
• Todos los flujos de datos que entran en un diagrama
hijo deben estar representados en el padre por el
mismo flujo de datos.
Descargar