¿Qué es un diagrama de flujo de datos?
Un diagrama de flujo de datos (DFD) es una representación gráfica o visual que utiliza un conjunto estandarizado de símbolos y notaciones para describir las operaciones de una empresa a través del movimiento de datos. A menudo son elementos de una metodología formal como el Método de diseño y análisis de sistemas estructurados (SSADM). Superficialmente, los DFD pueden parecerse a diagramas de flujo o al lenguaje de modelado unificado (UML), pero no están destinados a representar detalles de la lógica del software.
¿Cómo se utilizan los diagramas de flujo de datos?
Los DFD facilitan la descripción de los requisitos comerciales de las aplicaciones al representar la secuencia de pasos del proceso y el flujo de información mediante una representación gráfica o visual en lugar de una descripción textual. Cuando se utilizan durante todo un proceso de desarrollo, primero documentan los resultados del análisis empresarial. Luego, refinan la representación para mostrar cómo la información se mueve a través de los flujos de aplicaciones y cómo la cambian. Están representados tanto los procesos automatizados como los manuales.
¿Cuál es la diferencia entre un DFD lógico y un DFD físico?
Los DFD lógicos representan flujos de información lógica en términos relativamente abstractos. Esto significa que identificarán procesos, sistemas y actividades generales, pero no proporcionarán detalles tecnológicos. Los DFD físicos muestran más detalles del flujo de información física, en particular detalles de los sistemas de información, las aplicaciones y las bases de datos. También suelen tener más elementos para representar mejor qué información fluye, qué acciones se toman sobre o con los datos y los recursos asociados con esas acciones.
Es importante señalar que hay muchas interpretaciones de «lógico» y «físico» con respecto a los DFD. Los arquitectos empresariales y las organizaciones de línea tenderán a utilizar DFD lógicos y, a menudo, mostrarán menos detalles en los DFD físicos. Los equipos de desarrollo tienen la orientación opuesta y tenderán a utilizar DFD físicos sobre lógicos.
¿Qué símbolos y notaciones se utilizan en los DFD?
Las nociones y símbolos de DFD varían según el modelo de metodología empleado. Algunas organizaciones han adoptado sus propias convenciones, aunque esto no se recomienda.
Las diferentes notaciones DFD incluyen:
- Gane y Sarson
- Yourdon y De Marco
- SSADM
- UML (comúnmente usado para mapear la arquitectura de software, pero se puede usar en DFD)
Todas las nociones de DFD representarán lo siguiente:
- Entidades externas: la información entra o sale del sistema que se describe
- Flujos: definir el movimiento de información hacia, desde y dentro del sistema que se describe
- Historias: lugares donde se mantiene o se guarda la información, con mayor frecuencia bases de datos o tablas de bases de datos
- Procesos: transformar la información
Las diferentes metodologías de DFD utilizan diferentes convenciones de símbolos. Las diferencias y las reglas de los símbolos son lo suficientemente divergentes como para que a los tecnólogos les resulte difícil leer los DFD de las metodologías con las que no están familiarizados.
Por ejemplo, en Gane y Sarson, las entidades son cajas con esquinas cuadradas y los procesos tienen esquinas redondeadas. Sin embargo, en Yourdon y De Marco, las entidades tienen esquinas cuadradas, pero los procesos son círculos. SSADM casi invierte las convenciones de Gane y Sarson. Las tiendas en Yourdon y De Marco se muestran como líneas paralelas, pero todas las demás metodologías utilizan una representación diferente. Por esta razón, es importante que una empresa seleccione una metodología y una simbología y se ciña a ella.
¿Cuáles son los diferentes niveles y capas de DFD?
Los niveles o capas se utilizan en los DFD para representar grados progresivos de detalle sobre el sistema o proceso. Estos niveles incluyen:
- Nivel 0: También conocido como «diagrama de contexto», este es el nivel más alto y representa una vista de nivel superior muy simple del sistema que se está representando.
- Nivel 1: Sigue siendo una visión relativamente amplia del sistema, pero incorpora subprocesos y más detalles.
- Nivel 2: Proporciona aún más detalles y continúa desglosando los subprocesos según sea necesario.
- Nivel 3: Si bien esta cantidad de detalles es poco común, los sistemas complejos pueden beneficiarse de la representación en este nivel.
En teoría, son posibles más niveles, pero rara vez se utilizan y probablemente representarían más detalles de lo que normalmente transmitiría un diagrama de flujo de datos.
¿Cómo se crea un diagrama de flujo de datos?
Si bien depende de la herramienta utilizada para preparar un DFD, aquí hay un desglose básico de los pasos a seguir al crear uno:
- Elija un proceso o sistema para diagramar.
- Seleccione los intereses involucrados y categorícelos en entidades externas, flujos, procesos y tiendas.
- Ilustre un diagrama de contexto de nivel 0 con conexiones básicas.
- Cree diagramas de nivel 1 más detallados que se ramifiquen de los procesos del diagrama de contexto, incluidos los flujos conectados, las tiendas, los procesos adicionales y las entidades externas.
- Repita según sea necesario y con tanto detalle como sea necesario.
Es importante verificar continuamente el diagrama en cada nivel para asegurarse de que no falten procesos o flujos innecesarios.
¿Qué herramientas se pueden utilizar para crear un DFD?
Si bien es posible dibujar DFD a mano, rara vez se hace excepto como una ayuda ad hoc para la discusión. Los DFD también se pueden crear usando gráficos o herramientas de presentación, particularmente aquellos que admiten la creación de símbolos personalizados. Sin embargo, la mayoría de los usuarios de DFD encuentran que esto es limitante debido al requisito común de tales herramientas de establecer un tamaño de página específico.
La mayoría de los DFD se crean utilizando herramientas DFD especializadas, que a veces se combinan con otras características que se relacionan con la metodología específica que se utiliza. Hay muchas herramientas disponibles, tanto propietarias como de código abierto. También es posible utilizar herramientas alojadas en la nube para crear DFD. Debido a que muchas de estas herramientas están asociadas con una metodología específica, es importante seleccionar una herramienta que se ajuste a la metodología que se utilizará. La importación / exportación de una herramienta a otra puede ser limitada, por lo que se debe considerar una herramienta estándar para una empresa.
Algunas herramientas DFD incluyen:
- Lucidchart
- Paradigma visual
- Smartdraw
- ConceptoDraw
- Creately
¿Cuáles son ejemplos de DFD?
Los mejores ejemplos de DFD se proporcionan en documentos o tutoriales relacionados con una metodología singular. La revisión de DFD de muestra sin el contexto de una metodología puede dificultar la interpretación de los gráficos y la estructura.
La mayoría de los ejemplos de DFD representarán una vista comercial o funcional de un proceso, que es lo que los distingue de los diagramas de flujo o UML que representan flujos de software o arquitectura de software.
La siguiente imagen es un ejemplo del programa culinario de una escuela que utiliza el método Gane y Sarson.