¿Cómo trabajar con los diagramas de flujos de datos?



Introducción

Un Diagrama de Flujo representa la esquematización gráfica de un algoritmo , el cual muestra gráficamente los pasos o procesos a seguir para alcanzar la solución de un problema . Su correcta construcción es sumamente importante porque, a partir del mismo se escribe un programa en algún Lenguaje de Programación. Si el Diagrama de Flujo está completo y correcto, el paso del mismo a un Lenguaje de Programación es relativamente simple y directo.

Es importante resaltar que el Diagrama de Flujo muestra el sistema como una red de procesos funcionales conectados entre sí por " Tuberías " y "Depósitos" de datos que permite describir el movimiento de los datos a través del Sistema. Este describirá : Lugares de Origen y Destino de los datos , Transformaciones a las que son sometidos los datos, Lugares en los que se almacenan los datos dentro del sistema , Los canales por donde circulan los datos. Además de esto podemos decir que este es una representación reticular de un Sistema, el cual lo contempla en términos de sus componentes indicando el enlace entre los mismos.

En el presente Trabajo se representará a través de un Diagrama de Flujo el Procedimiento que debe efectuarse para calcular el pago de los trabajadores de una Empresa .

Diagrama de Flujo de Datos

El diagrama de flujo de datos es un modelo que describe los flujos de datos o tuberías, los procesos que cambian o transforman los datos en un sistema, las entidades externas que son fuente o destino de los datos (y en consecuencia los límites del sistema) y los almacenamientos o depósitos de datos a los cuales tiene acceso el sistema, permitiendo así describir el movimiento de los datos a través del sistema.

Se Describe:

Características:

 El DFD posee niveles de desagregación o explosión o apertura de burbujas. El Nivel 0 o Diagrama de Contexto es aquel que muestra una sola burbuja y las entidades externas o terminadores con los que interactúa el sistema.

Simbología

Entidad Externa:

Son generalmente clases lógicas de cosas o de personas, las cuales representan una fuente o destino de transacciones, como por ejemplo clientes, empleados, proveedores, etc., con las que el sistema se comunica. También pueden ser una fuente o destino específico, como por ejemplo Departamento Contable.

Como el sistema que esta bajo análisis acepta datos de otro sistema o bien se los provee, este otro sistema es una Entidad Externa.

Mediante la designación de alguna cosa o de algún sistema como Entidad Externa estamos estableciendo implícitamente que se encuentra fuera de los límites del sistema que estamos considerando por lo cual no nos interesa la transformación o proceso que se realiza dentro de ellos, es decir que están fuera del control del sistema que se está modelando. Son sólo proveedores o requeridores de datos del sistema bajo consideración.

Por todo ello, ni el analista ni el diseñador pueden cambiar ni los contenidos ni la forma de trabajo de un terminador.

Proceso:

Indican aquellos lugares dentro del sistema en donde la información (flujos de datos) que ingresan se procesa o transforman. Es decir, son las funciones o procesos que transforman entradas de datos en salidas de información.

Su nombre deberá ponerse mediante una frase imperativa, que consistirá idealmente de un verbo activo seguido por una cláusula objeto, cuanto mas simple mejor. Al analista le servirá pensar que la descripción de la función es "una orden a un empleado sin conocimiento del tema". Estas frases imperativas no tienen sujeto; tan pronto como se introduce un sujeto se habrá indicado como deberá realizarse físicamente la función ("El operador ingresará los datos del alumno").

Un proceso puede ser físicamente una oficina repleta de empleados, un procedimiento, o una combinación de actividades manuales y automatizadas.

Flujo de datos:

Representa un transporte de paquetes de datos desde su origen hasta su destino, es decir que representa una estructura de datos en movimiento de una parte del sistema a otro.

Un flujo muestra las interfaces entre los elementos del DFD.

Puede imaginarse como una tubería por donde se envían paquetes de datos, pero deberá tener una descripción de su contenido la cual deberá elegirse de forma que sea lo más útil posible a los usuarios que revisen el DFD.

La flecha indica la dirección del flujo.

Puede estar contenido físicamente en una nota, una factura, una llamada telefónica, de programa a programa, etc. Es decir, en cualquier medio por el cual los datos pasan de una entidad o proceso a otra.

Almacén o archivo:

Representa un archivo lógico en donde se agregan o de donde se extraen datos. Es una estructura de datos, pero estática.

Puede ser físicamente un archivo de tarjetas, una microficha, un archivo, o un archivo en cinta o diskette.

Deberá elegirse el nombre que sea más descriptivo para el usuario, que identifique los paquetes de datos que contiene.

 Implica escritura, actualización o borrado de datos.

 Implica lectura o recuperación de información almacenada.

 Guías para construir un DFD

  1.       Primero se deberán identificar las entidades externas ya que ello implica definir los límites del sistema.

 2.     Se deberán elegir nombres con significado tanto para procesos como también para flujos de datos, almacenes y entidades externas. Si es posible a partir del vocabulario del usuario evitando terminologías técnicas.

  3.     Identificar el papel del proceso del sistema, no quien lo realiza.

 4.     Numerar los procesos, mediante un esquema de numeración consistente que implique, para los lectores del DFD, una cierta secuencia de ejecución.

 5.     Se deberán, en la medida de lo posible, evitar los DFD excesivamente complejos. Deberán ser comprensibles, digeribles y agradables a la vista sin demasiados elementos.

  6.     Todos los elementos se relacionan entre sí a través de flujos de datos.

 7.     Procesos: Se relacionarán con:

 8.     Almacenes: Se relacionarán solamente con Procesos.

  9.     Entidades Externas: Se relacionarán solamente con Procesos.

 10.  En todos los niveles del Diagrama de Flujo de Datos deberá haber igual cantidad de Entradas y de Salidas.

  11.   Niveles del DFD:

Nivel de Partida: Diagrama de Contexto:

Nivel 1 y subsiguientes:

12.  Cada proceso en el DFD de alto nivel de un sistema puede ser "explotado" para convertirse en un DFD en si mismo.

 13.  Cada proceso en el nivel inferior deberá estar relacionado, inversamente, con el proceso del nivel superior. Es decir que, cada proceso "padre" que se detalla en el DFD, ha de estar balanceado. La regla del balanceo consiste en que cada proceso debe tener exactamente los mismos datos de entrada/salida netos que el DFD hijo.

 14.  Los flujos de datos pueden descomponerse en la "explosión" del proceso en un DFD hijo.

  15.  No se deberá prestar atención a las condiciones de tiempo, excepto a las naturales precedencias lógicas y a los almacenamientos de datos necesarios desde el punto de vista lógico. Se deberá dibujar un sistema que nunca comience ni pare.

 16.  Para evitar el cruzamiento de las líneas de flujo de datos, la misma entidad (o el mismo almacén) se podrá dibujar mas de una vez en el mismo diagrama; las dos (o mas) casillas por entidad pueden identificarse con dos líneas inclinadas en el ángulo superior izquierdo de las mismas.  

Diagramas de Flujo de Datos

Al mirar un DFD típico para un sistema chico se nota lo siguiente:

Los componentes de un DFD

Proceso

Diagramas de Flujo de Datos

Flujo de datos

Almacén

Terminador

Guía para la construcción de DFD

Elegir nombres con significado para todos los componentes

Para los procesos:

Identificar las funciones que el sistema está llevando a cabo.

Usar un verbo y un objeto. Evitar verbos ambiguos: hacer, manejar, procesar, etc.

Numerar los procesos

Redibujar el DFD tantas veces como sea necesario

Para que sea:

Para mejorarlo estéticamente:

Evitar los DFD demasiado complejos

Asegurarse la consistencia

DFD por niveles

Organizar el DFD global en una serie de niveles de modo que cada uno proporcione más detalle sobre una porción del nivel anterior.

El primer nivel consta de una sola burbuja que representa la totalidad del sistema (diagrama de contexto). El DFD que sigue se conoce como nivel 0 y representa la vista de más alto nivel de las principales funciones del sistema.

Los números de las burbujas sirven para relacionar una burbuja con el nivel siguiente del DFD.

Cuestiones a tener en cuenta:

¿Cuántos niveles?

Seguir "bajando" hasta llegar a burbujas de poca complejidad.

Agregar niveles superiores para respetar la regla 7±2.

En sistemas típicos, simples 2 o 3 niveles, medianos 3 a 6, grande 5 a 8.

¿Deben partirse todas las partes del sistema al mismo nivel de detalle?

No, pero cuidado con los extremos.

¿Cómo se muestran estos diagramas al usuario?

De forma descendente.

¿Cómo asegurar que los distintos niveles sean consistentes entre sí?

Los flujos de datos que entran y salen de una burbuja en el nivel i deben corresponder con los que entran y salen de toda la figura correspondiente del nivel i+1 que la describe.

¿Cómo se muestran los almacenes en los diversos niveles?

Un almacén que aparece en un nivel i se puede repetir en los niveles sucesivos de refinamiento i+1, i+2, etc. Pero un almacén local al nivel i no aparecía en los niveles anteriores i-1, i-2, etc.

¿Cómo se realiza la partición de los DFD en niveles?

Pese a que se leen en forma descendente, no es necesario desarrollarlos de esa manera.

Un enfoque que tiene más éxito es identificar los acontecimientos externos a los cuales debe responder el sistema y utilizarlos para crear un primer borrador del DFD. De ahí puede partirse hacia arriba (para crear DFD de mayor nivel de abstracción) y hacia abajo.

 Conceptos básicos para trabajar con DFD

a) ¿Que es Dfd?

Es un software diseñado para construir y analizar algoritmos. Se puede crear diagramas de flujo de datos para la representación de algoritmos de programación estructurada a partir de las herramientas de edición que para éste propósito suministra el programa. Después de haber ingresado el algoritmo representado por el diagrama, podrá ejecutarlo, analizarlo y depurarlo en un entorno interactivo diseñado para éste fin. La interfaz gráfica de Dfd, facilita en gran medida el trabajo con diagramas ya que simula la representación estándar de diagramas de flujo en hojas de papel.

b) Algoritmo

Un algoritmo es un procedimiento para la resolución de problemas de cualquier tipo por medio de determinada secuencia de pasos simples y no ambiguos. El concepto fue utilizado originalmente para el cálculo matemático pero ahora es ampliamente usado en programación de computadoras.

c) Diagrama de Flujo de Datos

Un diagrama de flujo de datos es una descripción gráfica de un procedimiento para la resolución de un problema. Son frecuentemente usados para describir algoritmos y programas de computador. Los diagramas de flujo de datos están conformados por figuras conectadas con flechas. Para ejecutar un proceso descrito por un diagrama de flujo de datos se comienza por el INICIO y se siguen las flechas de figura a figura, ejecutándose las acciones indicadas por cada figura; el tipo de figura indica el tipo de paso que representa.

Los diagramas de flujo son frecuentemente usados debido a que pueden suprimir detalles innecesarios y tener un significado preciso, si son usados correctamente.

d) Tipos de Datos

Real: Valores numéricos que van desde -1*10 ^ 2000 hasta 1*10 ^ 2000. Los valores más cercanos a 0 que se pueden manejar son 1*10 ^ -2000 y -1*10 ^ -2000.

Ejemplo: 1998, 1.0007, 0, 328721, -3242781

Cadena de Caracteres: Secuencia de caracteres encerrada entre comillas simples.

Ejemplo: `Diagramar es fácil", `París", `1955'

Lógico: La letra V ó F encerrada entre puntos, para indicar verdadero ó falso respectivamente.

Ejemplo: .V. , .F. , .v. , .f.

e) Campos de Datos

Constantes: Con su nombre muestran su valor y éste no se puede cambiar.

Ejemplo: 1996, `Los algoritmos son útiles' , .V.

Variables: Es posible modificar su valor. El nombre de una variable debe comenzar por una letra seguida de letras, números o el caracter ( _ ).

Ejemplo: Valor, Contador , año , Valor_1

No se tiene en cuenta la diferencia entre mayúsculas y minúsculas para el nombre de una variable; es decir, CASA equivale a casa. Cuando una variable recibe un valor por primera vez, el tipo de dato de ésta será igual al tipo de dato del valor.

f) Arreglos

Dfd soporta arreglos n-dimensionales de cualquier tipo de dato. El nombre de un arreglo debe comenzar por una letra seguida de letras, números o el carácter ( _ ).

Ejemplo: Vector ( 2 ) , Matriz ( i , j ) , v ( 1, j, ñ, p )

No se tiene en cuenta la diferencia entre mayúsculas y minúsculas para el nombre de un vector; es decir, VECTOR(2) equivale a vector(2).

g) Interfaz de Usuario

Dfd posee una ventana principal que proporciona el ambiente de trabajo en donde se pueden construir y analizar algoritmos. Los componentes básicos de la ventana principal son: La barra de menú, barras de herramientas, barras de desplazamiento y el área de trabajo.

h) Acción Actual

Es el estado en el que se encuentra Dfd.

La acción actual puede ser:

La barra de estado ubicada en la parte inferior de la ventana de Dfd muestra la acción actual.

i) Subprograma Actual

En Dfd, solo un subprograma (incluyendo el principal) puede ser visualizado a la vez, considerándose éste el Subprograma Actual.

j) Errores de Sintaxis

Estos errores son detectados en tiempo de revisión cuando se intenta ejecutar un algoritmo que contiene expresiones incorrectas. El mensaje de error correspondiente será mostrado y se indicara el objeto en el que se produjo el error.

Sistema de menús

a) Menú Archivo

Archivo | Nuevo

El comando Nuevo inicia la sesión de trabajo con un nuevo diagrama.

Otras formas de acceder al comando:

Barra de herramientas:

Teclado: CTRL + N

Dfd da como nombre temporal al nuevo diagrama "Sin nombre.dfd", hasta que éste sea guardado con un nombre de archivo único. Al ejecutar este comando quedará seleccionada la opción Ángulos en Grados del menú Opciones.

Archivo | Abrir

Inicia la sesión de trabajo con un diagrama ya existente, con este comando puede abrir un archivo de Dfd y comenzar a trabajar sobre él.

Otras formas de acceder al comando:

Barra de Herramientas

Teclado CTRL + A

Al abrir un archivo de Dfd, las opciones del menú Opciones, tomarán el estado que tenían en el momento en que fue guardado el archivo.

Archivo | Guardar

Guarda en disco el diagrama que se está editando (principal y subprogramas) y el estado del menú Opciones, como un archivo de extensión "dfd".

A medida que Usted trabaja va haciendo cambios en el diagrama original, por lo cual es conveniente guardar con frecuencia el diagrama.

Otras formas de acceder al comando:

Barra de herramientas

Teclado CTRL + G

Archivo | Guardar Como

El comando Guardar Como guarda en disco permite colocar un nombre al diagrama en edición. Se despliega un cuadro de diálogo donde se selecciona el nombre y la ubicación (unidad y directorio) del archivo en cual se va a guardar el diagrama.

Otra forma de acceder el comando:

Teclado ALT + A , C

Archivo | Imprimir

Este comando despliega el cuadro de diálogo de impresión del sistema, el tamaño del diagrama a imprimir será proporcional al tamaño del diagrama que se visualiza en pantalla.

Otras formas de acceder al comando:

Barra de herramientas

Teclado CTRL + P

Archivo | Salir

El comando Salir termina una sesión de trabajo con Dfd .

Otras formas de acceder al comando:

Teclado ALT + A , S

Si el diagrama en edición no ha sido guardado desde la última modificación, Dfd le preguntará si desea guardar antes de salir.

b) Menú Edición

Edición | Cortar

Este comando se usa para eliminar un objeto seleccionado de un diagrama y colocarlo en el portapapeles de Dfd. El comando Cortar estará disponible cuando un objeto eliminable se encuentre seleccionado y la acción actual sea Edición.

Otras formas de acceder el comando:

Barra de herramientas

Teclado CTRL + X

Cuando se cortan objetos, estos reemplazan el contenido del portapapeles de Dfd. Los objetos que conforman estructuras de control serán cortados junto con su cuerpo.

Edición | Copiar

Este comando se usa para obtener una copia del objeto seleccionado en el portapapeles de Dfd. El objeto seleccionado queda intacto; es decir, no se remueve del diagrama. El comando Copiar estará disponible cuando exista un objeto eliminable seleccionado y la acción actual sea Edición.

Otras formas de acceder el comando:

Barra de herramientas

Teclado CTRL + C

Cuando se copian objetos, estos reemplazan el contenido del portapapeles de Dfd. Los objetos que conforman estructuras de control serán copiados juntos con su cuerpo.

Edición | Pegar

Se usa este comando para insertar una copia del contenido del portapapeles de Dfd a continuación del objeto seleccionado. El comando Pegar estará disponible cuando el portapapeles de Dfd no esté vacío, exista un objeto seleccionado y la acción actual sea Edición.

Otras formas de acceder al comando:

Barra de herramientas

Teclado CTRL + V

Después de haber sido pegado, el objeto permanece en el portapapeles de Dfd, de manera que puede pegarlo las veces que desee.

Edición | Eliminar

Este comando elimina el objeto seleccionado del diagrama sin colocarlo en el portapapeles de Dfd. Se encontrará disponible cuando un objeto eliminable se encuentre seleccionado y la acción actual sea Edición.

Otras formas de acceder al comando:

Barra de herramientas

Teclado SUPR

Los objetos que conforman estructuras de control serán eliminados junto con su cuerpo. En caso de que el objeto seleccionado sea de tipo subprograma, entonces se ejecutará el comando Eliminar Subprograma.

Edición | Eliminar Subprograma

Este comando se usa para eliminar todos los objetos que conforman un subprograma. El comando estará disponible cuando esté visualizado un subprograma (no el principal) y la acción actual sea Edición.

Otras formas de acceder el comando:

Barra de herramientas

Teclado ALT + E, S

Edición | Insertar Objeto

Este comando se utiliza para insertar a continuación del objeto seleccionado un objeto del tipo que indique el ítem seleccionado en el menú Objeto; es decir, el último objeto seleccionado en la barra de herramientas.

El comando estará disponible cuando exista un objeto seleccionado, el ítem seleccionado en el menú Objeto sea diferente de Cursor y la acción actual sea Edición.

Otra forma de acceder al comando:

Teclado INS

Mouse Clic sobre la zona de inserción

Edición Objeto | Editar

Este comando se utiliza para editar el contenido de un objeto seleccionado. Estará disponible cuando se encuentre seleccionado un objeto editable y la acción actual sea Edición.

Otra forma de acceder al comando:

Teclado ENTER

Mouse Doble clic sobre el objeto

c) Menú Objeto

Objeto | Cursor

Este comando selecciona el cursor normal del Mouse, el cual se puede usar para:

Otras formas de acceder al comando:

Barra de herramientas

Teclado ALT + O, C

Cuando la acción actual es diferente de Ejecución, el cursor normal puede cambiar dependiendo de la posición del apuntador del Mouse.

Es la flecha de cursor que se presenta cuando el apuntador del Mouse no está sobre ningún objeto. La forma de este puntero depende de las propiedades del Mouse que maneja el sistema.

El cursor en forma de mano señalando se presenta cuando el apuntador del Mouse se sitúa sobre un objeto que se puede seleccionar, éste indica que se puede seleccionar, quitar la selección de otro objeto ó editar el objeto

Hacer clic con el botón izquierdo del Mouse dentro de un objeto selecciona el objeto y quita la selección a cualquier otro que se encuentre seleccionado en el subprograma actual. Hacer clic con el botón izquierdo del Mouse sobre un área vacía del diagrama quita la selección del objeto. Hacer doble clic con el botón izquierdo del Mouse sobre un objeto editable invoca al correspondiente cuadro de diálogo para la edición.

Objeto | Asignación

Este comando se utiliza para indicar que el siguiente objeto a ser insertado en el diagrama es de tipo Asignación.

Otras formas de acceder al comando:

Barra de herramientas

Teclado ALT + O, A

Ejemplo de diseño con DF

La operación básica será la de inserción de objetos. En primer lugar, insertaremos una sentencia de salida que le pida al usuario el número que posteriormente se va a imprimir. Para ello pulsamos el botón correspondiente al objeto que se desea insertar y llevamos el ratón al punto donde vamos a insertarlo. La inserción se realiza pulsando el botón izquierdo, con lo que tendremos una situación como la siguiente:

Monografias.com

Monografias.com

Los puntos azules indican qué objeto se acaba de insertar. Para introducir en la sentencia de salida el mensaje que queremos imprimir será necesario EDITAR dicho objeto, haciendo doble clic sobre el mismo. De este modo se abre una ventana donde podemos dicho mensaje (por ejemplo 'Buenos días. Dígame un número, por favor').

Monografias.com

Como el mensaje es una cadena de caracteres, no debemos olvidarnos de las comillas simples al inicio y final de la misma.

Seguidamente vamos a insertar una sentencia de ENTRADA, para almacenar en una variable el valor del número que nos proporcione el usuario. Para ello pulsaremos el botón correspondiente y lo insertaremos a continuación de la sentencia de salida anterior. Si editamos el objeto, haciendo doble clic sobre el mismo, aparecerá una pantalla cuyo cuadro de texto nos permitirá darle nombre a la variable donde vamos a guardar el valor (en este ejemplo la variable se va a llamar numero:

Monografias.com

Para finalizar, mostraremos al usuario el número que ha introducido, para lo cual insertaremos una nueva sentencia de SALIDA, que editaremos para que muestre el siguiente mensaje:

Monografias.com

Con lo que el algoritmo tendrá el siguiente aspecto en pantalla: 

Monografias.com

Tras haber diseñado el algoritmo podemos probar a ejecutarlo, al objeto de detectar posibles errores en él. Para ello utilizaremos los botones de ejecución, y en particular el botón EJECUTAR que pondrá en marcha el algoritmo.

La primera sentencia en ejecutarse será la de SALIDA, que mostrará en pantalla el mensaje correspondiente:

Monografias.com

Seguidamente la de ENTRADA, que nos muestra un cuadro de texto donde introduciremos el valor que queramos darle a la variable (por ejemplo, 123.45):

Monografias.com

Monografias.com

y, finalmente, la última sentencia de SALIDA:

Monografias.com

Cuando el algoritmo finaliza su ejecución sin error se muestra el siguiente mensaje:

Monografias.com

Dado que el algoritmo es correcto, procederemos a guardarlo (por ejemplo, con el nombre entrada salida). La opción de guardar es similar a la de cualquier aplicación Windows, por lo que no merece mayor comentario. Únicamente recordar que en general, durante el proceso de elaboración de un algoritmo (que puede ser largo) debemos guardar frecuentemente en disco el diseño, al objeto de prevenir posibles fallos o errores que dejen inutilizado el ordenador y provoquen la pérdida del trabajo realizado. 

Conclusiones

Bibliografía

http: // Es. Wikipedia. Org/Wiki/Diagrama-Flujo-de-dato. htm

http: // WWW. Monografía. Com. / DFD\DFD (Diagrama de Flujo de Datos).htm

 

 

 

Autor:

Medina, Audreis

Enviado por:

ASESOR ACADÉMICO:

MSc. Ing. Iván J. Turmero Astros

Monografias.com

UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA

"ANTONIO JOSÉ DE SUCRE"

VICE-RECTORADO PUERTO ORDAZ

DEPARTAMENTO DE INGENIERÍA INDUSTRIAL

SISTEMAS DE INFORMACIÓN

SECCIÓN: N1

PUERTO ORDAZ, JUNIO DE 2007