Qué es un Diagrama de Flujo

Un diagrama de flujo es una representación gráfica de un proceso. Cada paso del proceso es representado por un símbolo diferente que contiene una breve descripción de la etapa de proceso. Los símbolos gráficos del flujo del proceso están unidos entre sí con flechas que indican la dirección de flujo del proceso. El diagrama de flujo ofrece una descripción visual de las actividades implicadas en un proceso mostrando la relación secuencial ente ellas, facilitando la rápida comprensión de cada actividad y su relación con las demás, el flujo de la información y los materiales, las ramas en el proceso, la existencia de bucles repetitivos, el número de pasos del proceso, las operaciones de interdepartamentales… Facilita también la selección de indicadores de proceso Las ventajas que ofrece el diagrama de flujo de procesos, son varias:

     

Facilita la comprensión del proceso. Al mismo tiempo, promueve el acuerdo, entre los miembros del equipo, sobre la naturaleza y desarrollo del proceso analizado. Proporciona un método de comunicación más eficaz, al introducir un lenguaje común. Supone una herramienta fundamental para obtener mejoras mediante el rediseño del proceso, o el diseño de uno alternativo. Identifica problemas, oportunidades de mejora y puntos de ruptura del proceso. Pone de manifiesto las relaciones proveedor – cliente, sean éstos internos o externos. Estimula el pensamiento analítico en el momento de estudiar un proceso, haciendo más factible generar alternativas útiles. La realización de un diagrama de flujo es una actividad íntimamente ligada al hecho de modelar un proceso, que es por sí mismo un componente esencial en la gestión de procesos. Frecuentemente los sistemas (conjuntos de procesos y subprocesos integrados en una organización) son difíciles de comprender, amplios, complejos y confusos; con múltiples puntos de contacto entre sí y con un buen número de áreas funcionales, departamentos y personas implicadas. Un modelo (una

representación de una realidad compleja) puede dar la oportunidad de organizar y documentar la información sobre un sistema. El diagrama de flujo de proceso constituye la primera actividad para odeloar un proceso.

Elaboración del Diagrama de Flujo
El diagrama de flujo debe ser realizado por un equipo de trabajo en el que las distintas personas aporten, en conjunto, una perspectiva completa del proceso, por lo que con frecuencia este equipo será multifuncional y multijerárquico.

 

Determinar el proceso a diagramar. Definir el grado de detalle. El diagrama de flujo del proceso puede mostrar a grandes rasgos la información sobre el flujo general de actividades pricipales, o ser desarrollado de modo que se incluyan todas las actividades y los puntos de decisión. Un diagrama de flujo detallado dará la oportunidad de llevar realizar un análisis más exhaustivo del proceso.

 

Identificar la secuencia de pasos del proceso. Situándolos en el orden en que son llevados a cabo. Construir el diagrama de flujo. Para ello se utilizan determinados símbolos. Cada organización puede definir su propio grupo de símbolos. En la figura siguiente se muestra un conjunto de símbolos habitualmente utilizados. Al respecto cabe decir que en la figura “Conector de proceso” es frecuente mente utilizado un círculo como símbolo.

Revisar el diagrama de flujo del proceso.

A continuación se present un ejemplo de diagrama de flujo de proceso detallado.

Por lo tanto. Los diagramas de flujo se dibujan generalmente antes de comenzar a programar el código frente a la computadora. sin embargo. llega a ser fácil escribír el programa en cualquier idióma de alto nivel. está correcto decir que un diagrama de flujo es una necesidad para la documentación mejor de un programa complejo. Vemos a menudo cómo los diagramas de flujo nos dan ventaja al momento de explicar el programa a otros. algunos símbolos especiales pueden también ser . Introducción. Los diagramas de flujo facilitan la comunicación entre los programadores y la gente del negocio. Reglas para dibujar un diagramas de flujo. Los diagramas de flujo describen que operaciónes y en que secuencia se requieren para solucionar un problema dado. Los diagramas de flujo son una manera de representar visualmente el flujo de datos a travéz de sistemas de tratamiento de información. Los Diagramas de flujo se dibujan generalmente usando algunos símbolos estándares.La elaboración de un diagrama de flujo es facilitada por diversas herramientas informáticas. Un diagrama de flujo u organigrama es una representación diagramática que ilustra la secuencia de las operaciones que se realizarán para conseguir la solución de un problema. Estos diagramas de flujo desempeñan un papel vital en la programación de un problema y facilitan la comprensión de problemas complicados y sobre todo muy largos. Una vez que se dibuja el diagrama de flujo.

para mostrar datos Envía datos a la impresora . que se requieren con frecuencia para diagramar programas de computadora se muestran a continuación: Inicio o fin del programa Pasos.desarrollados cuando séan requeridos. Algunos símbolos estándares. procesos o líneas de instruccion de programa de computo Operaciones de entrada y salida Toma de desiciónes y Ramificación Conector para unir el flujo a otra parte del diagrama Cinta magnética Disco magnético Conector de pagina Líneas de flujo Anotación Display.

los símbolos gráficos son utilizádos especificamente para para operaciónes aritméticas y relaciónes condicionales. Simbolos gráficos Dentro de los simbolos fundamentales para la creaación de diagramas de flujo. Los Diagramas de flujo deben escribirse de arriba hacia abajo. .Observación: Para obtener la correcta elaboración de los símbolos. La siguiente es una lista de los símbolos más comunmente utilizados: + * / ± = > < ³ £ Sumar Menos Multiplicación División Mas o menos Equivalente a Mayor que Menor que Mayor o igual que Menor o igual que ¹ o <> Diferente de Si No True False Reglas para la creación de Diagramas 1. Las puedes conseguir en Papelerías. y/o de izquierda a derecha. existen plantillas.

las cuales tienen en la punta una flecha que indica la dirección que fluye la información procesos. Ejemplos de diagramas de flujo Diagrama de flujo que encuentra la suma de los primeros 50 numeros naturales . Se debe tener en cuenta que solo se vana utilizar conectores cuando sea estrictamente necesario. No deben quedar líneas de flujo sin conectar 5. Todo texto escrito dentro de un símbolo debe ser legible. evitando el uso de muchas palabras. Se debe evitar el cruce de líneas. Todos los símbolos pueden tener más de una línea de entrada. 6. Solo los símbolos de decisión pueden y deben tener mas de una línea de flujo de salida. se deben de utilizar solamente líneas de flujo horizontal o verticales (nunca diagonales). a excepción del símbolo final.2. para lo cual se quisiera separar el flujo del diagrama a un sitio distinto. se pudiera realizar utilizando los conectores. 4. preciso. 7. Los símbolos se unen con líneas. 3.

 El primer bloque indica el inicio del Diagrama de flujo  El segundo bloque. no se como decirlo. ya que N todavía es 1. ya que estaba inicializada en 0. es la variable a la que se le va agregando la valor de cada número natural.  El quinto bloque es uno Símbolo de Toma de decisiones y Ramificación Lo que hay dentro del bloque es una pregunta que se le hace a los valores que actualmente influyen en el proceso (Por decir algo. éste le sumará 1 (N=N+1) y vuelve a llegar a éste bloque. en la primera pasada esta N valdrá 1.  Por último indicamos que el resultado será mostrado en la impresora (Este lo puedes cambiarlo por el display para mostrar datos). es el contador. regresa al Tercer bloque y vuelve hacer lo mismo. soy muy sope :D) ¿Es N=50?. por lo que el flujo de nuestro programa se dirigirá hacía la parte en donde se observa la palabra no: Tercer Bloque.  El cuarto bloque es exactamente lo mismo que el anterior Pero en éste. obteniendo así la suma de los primeros 50 primeros números naturales. . donde preguntará ¿Es N=50?. Por lo que. y ahora la descripción del diagrama anterior Suma. es un Símbolo de procesos este bloque se asume que las variables suma y N han sido declaradas En previamente y las inicializa en 0 para comenzar a el conteo y la suma de valores (Para declararlas existe el bloque Tarjeta perforada). ya que N = 1). Éste recorrerá lo números hasta llegar al 50. ¡No!.. ya se le agrega el valor de N a la variable que contendrá la suma (En el primer caso contendrá 1.Bueno. Obviamente la respuesta es no. Ha pues.. Y así hasta llegar a 50. es también un Símbolo de procesos En éste paso se incrementa en 1 la variable N (N = N + 1).  El tercer bloque. N. todavía es 2.

Un diagrama de casos de uso consta de los siguientes elementos: Ejemplo: Como ejemplo está el caso de una Máquina Recicladora: Sistema que controla una máquina de reciclamiento de botellas. además de la forma. tarros y jabas. Fin del programa (o diagrama) Diagramas de Casos de Usos Editar 0 5… DIAGRAMAS DE CASOS DE USO (Para Modelar los Procesos "Business") El diagrama de casos de uso representa la forma en como un Cliente (Actor) opera con el sistema en desarrollo. El sistema debe controlar y/o aceptar: . tipo y orden en como los elementos interactúan (operaciones o casos de uso).

Al final de cada día el operador solicita un resumen de todo lo depositado en el día. 2. Dar una alarma en el caso de que: Ítem se atora. .   1. tenemos que un Cliente puede Depositar Ítems y un Operador puede cambiar la información de un Ítem o bien puede Imprimir un informe: Además podemos notar que un ítem puede ser una Botella. Imprimir un recibo cuando el usuario lo solicita: Describe lo depositado El valor de cada ítem Total El usuario/cliente presiona el botón de comienzo Existe un operador que desea saber lo siguiente: Cuantos ítems han sido retornados en el día. 1. 2.  1. 2. un Tarro o una Jaba.  1. El operador debe además poder cambiar: Información asociada a ítems. 3. No hay más papel. Registrar el número de ítems ingresados. 2. Como una primera aproximación identificamos a los actores que interactúan con el sistema: Luego.

el diseño completo del diagrama de Caso de Uso es: .Otro aspecto es la impresión de comprobantes. Entonces. que puede ser realizada después de depositar algún ítem por un cliente o bien puede ser realizada a petición de un operador.

además de la forma. Como ejemplo a la definición anterior. sino más bien la labor que realiza frente al sistema. pues con esto se especifica que un Actor no necesariamente representa a una persona en particular. tipo y orden en como los elementos interactuan (operaciones o casos de uso). Herencia y Comunicación. sea desde una petición de un actor o bien desde la invocación desde otro caso de uso. Casos de Uso. Un diagrama de casos de uso consta de los siguientes elementos:    Actor. Es importante destacar el uso de la palabra rol. es que un Actor es un rol que un usuario juega con respecto al sistema. Relaciones de Uso.  Caso de Uso: Es una operación/tarea específica que se realiza tras una orden de algún agente externo. tenemos el caso de un sistema de ventas en que el rol de Vendedor con respecto al sistema puede ser realizado por un Vendedor o bien por el Jefe de Local.Casos de Uso (Use Case) Introducción El diagrama de casos de uso representa la forma en como un Cliente (Actor) opera con el sistema en desarrollo.  Relaciones: o Asociación . Elementos  Actor: Una definición previa.

se instancia (se crea). Dicha relación se denota con una flecha simple. Total El usuario/cliente presiona el botón de comienzo Existe un operador que desea saber lo siguiente: a. Imprimir un recibo cuando el usuario lo solicita: a. Este tipo de relación esta orientado exclusivamente para casos de uso (y no para actores). extends: Se recomienda utilizar cuando un caso de uso es similar a otro (características). uses: Se recomienda utilizar cuando se tiene un conjunto de características que son similares en más de un caso de uso y no se desea mantener copiada la descripción de la característica. El valor de cada item c. Cuantos ítemes han sido retornados en el día. o Generalización Este tipo de relación es uno de los más utilizados. Describe lo depositado b. o Dependencia o Instanciación Es una forma muy particular de relación entre clases. . El sistema debe controlar y/o aceptar:     Registrar el número de ítemes ingresados. en la cual una clase depende de otra. en donde esta la duda clásica de usar o heredar. que puede ser de Uso (<<uses>>) o deHerencia (<<extends>>). Dicha relación se denota con una flecha punteada. Ejemplo: Como ejemplo esta el caso de una Máquina Recicladora: Sistema que controla una máquina de reciclamiento de botellas.Es el tipo de relación más básica que indica la invocación desde un actor o caso de uso a otra operación (caso de uso). De lo anterior cabe mencionar que tiene el mismo paradigma en diseño y modelamiento de clases. cumple una doble función dependiendo de su estereotipo. tarros y jabas. es decir.

 b. El operador debe además poder cambiar: a. ii. Al final de cada día el operador solicita un resumen de todo lo depositado en el día. . b. Dar una alarma en el caso de que: i. No hay más papel. Item se atora. tenemos que un Cliente puede Depositar Itemes y un Operador puede cambiar la información de un Item o bien puede Imprimir un informe: Además podemos notar que un item puede ser una Botella. Información asociada a ítemes. Como una primera aproximación identificamos a los actores que interactuan con el sistema: Luego. un Tarro o una Jaba.

el diseño completo del diagrama Use Case es: . que puede ser realizada después de depositar algún item por un cliente o bien puede ser realizada a petición de un operador. Entonces.Otro aspecto es la impresión de comprobantes.

sin embargo la del objeto “tosty” sí y esto viene representado mediante el aspa al final de su línea de la vida. Se trata de un diagrama de interacción que detalla como las operaciones se llevan a cabo. qué mensajes son enviados y cuando. Ejemplos: Las líneas verticales o “líneas de la vida” representan el tiempo de vida del objeto. La vida del objeto “carlos” no termina en este diagrama. organizado todo en torno al tiempo.Diagrmas de Secuencias Editar 0 4… DIAGRAMAS DE SECUENCIAS (Para Modelar el Paso de Mensajes entre Objetos) Los diagramas de secuencia describen como los objetos del sistema colaboran. . El tiempo avanza “hacia abajo” en el diagrama. Los objetos involucrados en la operación se listan de izquierda a derecha de acuerdo a su orden de participación dentro de la secuencia de mensajes.

El mensaje “Encender”. Los mensajes asíncronos son aquellos tal que el emisor puede enviar nuevos mensajes mientras el original está siendo procesado.Los rectángulos verticales son barras de activación y representan la duración de la ejecución del mensaje. posiblemente implementado mediante la introducción del enchufe en una toma de pared. El mensaje asíncrono ocurre en el tiempo de manera independiente a otros mensajes. No ocurre lo mismo con la llamada al método “tostar()”. que dura desde la pulsación del botón de tostar hasta que el pan es retirado de la bandeja y además interviene la emisión de un aviso cuando el pan está lo suficientemente caliente. a fin de evitar que se queme. Como se puede observar. En UML los corchetes “[]” expresan condición y si están precedidos de un asterisco indican interacción mientras se cumpla la condición. Los mensajes que son intercambiados entre los objetos de un diagrama de secuencia pueden ser síncronos oasíncronos. la acción tostar viene condicionada por la presencia de pan en la bandeja de la tostadora. En los mensajes síncronos. el emisor debe esperar a . tiene una duración escasa y similar a la de “Apagar”.

que termine el tiempo de proceso del mensaje antes de que pueda emitir nuevos mensajes. Diagramas de Colaboración DIAGRAMAS DE COLABORACIÓN (Para Modelar Interacciones entre Objetos) Los diagramas de colaboración son otro tipo de diagramas de interacción. Cada mensaje de un diagrama de colaboración tiene un número de secuencia. en lugar de en el tiempo en que los mensajes son enviados. El primer nivel de la secuencia es 1. UML emplea los siguientes convenios para representar el tipo de mensaje. y los mensajes que son enviados . sólo que se centran en las responsabilidades de cada objeto. que contiene la misma información que los de secuencia.

2 y así sucesivamente para tantos niveles como sea necesario. en función del resultado de éste. En estos casos es conveniente. no .durante la misma llamada a un método se numeran 1. por claridad. Los estados inicial. 1.1. y final. El estado de un objeto depende de la actividad que esté llevando a cabo o de alguna condición. seguida de la acción oportuna separada por “/”. EJEMPLO: Diagramas de Estados Editar 0 3… DIAGRAMAS DE ESTADO (Para Modelar el Comportamiento de los Objetos en el Sistema) Los diagramas de estados muestran los posibles estados en que puede encontrarse un objeto y las transiciones que pueden causar un cambio de estado. ya que ésta ocurrirá cuando termine el proceso. En un estado en que el objeto esta pendiente de algún tipo de validación que dependa de un proceso en curso. a partir del que se “entra” en la máquina de estados. En ellas se representa la condición que provoca el cambio. Las transiciones son las líneas que unen los diferentes estados. incluir la condición que de la que depende la transición (entre corchetes). que indica que la máquina de estados termina. no es necesario evento externo alguno para que se produzca la transición.

. de forma que los estados relacionados pueden ser agrupados en un estado compuesto. Esto puede ser necesario cuando una actividad involucra subactividades asíncronas o concurrentes. Estados Simples. Los estados de un diagrama de estados pueden anidarse. EJEMPLOS: Máquina de Estados.tienen otro significado adicional. Estados Compuestos. son elementos ornamentales y se representan mediante un circulo negro y un circulo negro resaltado respectivamente. Máquina de Estados.

Mientras que los diagramas de estados centran su atención en el proceso que está llevando a cabo un objeto. que guardan mucha similitud con los diagramas de estados. Las actividades vienen unidas por transiciones. EJEMPLO: . que pueden separarse en ramas en función del resultado de una condición expresada entre corchetes.Diagramas de Actividad Editar 0 4… DIAGRAMAS DE ACTIVIDAD (Para Modelar el Comportamiento de los Casos de Uso. los diagramas de actividades muestran como las actividades fluyen y las dependencias entre ellas. Igualmente. las transiciones se pueden bifurcarse en dos o más actividades paralelas. Objetos u Operaciones) Los diagramas de actividades son básicamente diagramas de flujo adornados. Cada rama muestra la condición que debe ser satisfecha para que el flujo opte por ese camino. Los diagramas de actividades pueden dividirse en “calles” que determinan qué objeto es responsable de qué actividad.

Diagrama de Clases Editar 0 8… DIAGRAMA DE CLASES (Para Modelar la Estructura Estática de las Clases en el Sistema) Un diagrama de clases es un tipo de diagrama estático que describe la estructura de un sistema mostrando sus clases. Los diagramas de clases son utilizados durante el proceso de análisis y diseño de los sistemas. . donde se crea el diseño conceptual de la información que se manejará en el sistema. atributos y las relaciones entre ellos. Las clases están representadas por cajas en las que hay tres separaciones. o compartimentos. y los componentes que se encargaran del funcionamiento y la relación entre uno y otro.

.Tanto los atributos como los métodos vienen precedidos por un símbolo de acceso. que normalmente suele ser un“+” para el acceso público. un “-” para el acceso privado. (sólo por otros métodos de la clase) y un “#” para el acceso protegido (sólo por clases hija).

EJEMPLO: Diagrama de clases que modela los pedidos de un cliente en una tienda El siguiente diagrama modela los pedidos de un cliente a una tienda de venta por catálogo. por sus formas más comunes “Crédito” y “Efectivo”. “Pago” es una superclase especializada. La clase principal es “Pedido”. La clase “Pago” es abstracta. asociada a un cliente. 1. Las clases abstractas actúan a modo de interfaz. mientras que una forma de pago puede estar presente en uno o más pedidos.*. en UML los nombres de clases abstractas se representan en Itálica. una forma de pago y un conjunto de artículos.. Un “Pedido” tiene una única forma de pago. proporcionando únicamente un listado de métodos a ser “realizados” por las clases que las implementan o realizan. observamos que algunas vienen representadas como . y a la vez realizada. expresada por su multiplicidad. como sugiere su multiplicidad. En cuanto a las asociaciones. 1.

la relación entre “Pedido” y “Articulo” es de conjunto. con la restricción de que el mínimo número de personas en los subdepartamentos debe ser dos. cuya orientación expresa el sentido en que se consultan los datos. Las asociaciones sin flecha son bidireccionales. Lasrestricciones son condiciones que deben ser cumplidas siempre. Un “Departamento” puede estar compuesto a su vez por más subdepartamentos. se expresan entre llaves “{condición}”. o ninguno. Diagrama de Clases Relación de dependencia en Diagramas de Clase El siguiente diagrama muestra una autorelación de agregación. así mismo una línea de pedido puede estar presente en varios pedidos y un artículo puede no haber sido solicitado nunca.una flecha navegable. Las agregaciones expresan “conjunto de”. donde cada una hace alusión a un artículo concreto. Un pedido es una agregación de una o más líneas de pedido. .

representando sólo la parte estática de un interacción. En general los diagramas de objetos se utilizan para modelar estructuras de objetos. Esta vista sustenta principalmente los requisitos funcionales de un sistema. construir y documentar la existencia de ciertas instancias en el sistema. Los diagramas de objetos se emplean para modelar la vista de diseño estática o la vista de procesos estática de un sistema al igual que se hace con los diagramas de clases. Los diagramas de objetos se utilizan para visualizar. Los diagramas de objetos permiten modelar estructuras de datos estáticas. los diagramas de clase se utilizan para visualizar los aspectos estáticos del sistema y los diagramas de interacción se utilizan para ver los aspectos dinámicos del sistema. La exhibición de los nombres es también diferente: los nombres de los objetos están subrayados y pueden mostrar el nombre del clasificador desde el cual el objeto se instancia. En un punto intermedio podemos situar los diagramas de objetos.Diagramas de Objetos Editar 0 3… DIAGRAMAS DE OBJETOS (Para Modelar la Estructura Estática de los Objetos en el Sistema) Los diagramas de objetos modelan las instancias de elementos contenidos en los diagramas de clases. divididas en compartimientos de nombres. junto a las relaciones entre ellas. que contiene un conjunto de instancias de los elementos encontrados en el diagrama de clases. pero desde la perspectiva de instancias reales o prototípicas. atributos y operaciones. El siguiente diagrama muestra las diferencias en apariencia entre un elemento clase y un elemento objeto. consistiendo en los objetos que colaborar pero sin ninguno de los mensajes intercambiados entre ellos. lo que implica tomar una instantánea de los objetos de un sistema en un cierto momento. Hay que tener en cuenta que el elemento clase consiste de tres partes. . especificar. los elementos objetos no tienen compartimientos. En UML. Un diagrama de objetos muestra un conjunto de objetos y sus relaciones en un momento concreto. y constan de instancias de los elementos del diagrama de clases y mensajes enviados entre ellos. por predeterminado. Un diagrama de objetos representa una escena estática dentro de la historia representada por un diagrama de interacción.

Alfredo Arcos.Una diferencia con los diagramas de clase es que el compartimiento de arriba va en la forma: Nombre de objeto Nombre de clase Por ejemplo: Miguel: Persona. Diagrama de Componentes Editar 0 3… DIAGRAMA DE COMPONENTES (Para Modelar Componentes) Los componentes son módulos de código. mostrando un conjunto de valores de atributos en la instancia particular. Muestran como está organizado un conjunto de componentes y las dependencias que existen entre ellos. Estado en tiempo de ejecución Un elemento clasificador puede tener cualquier número de atributos y operaciones. Sin embargo. . así que los diagramas de componentes vienen a ser los análogos físicos a los diagramas de clases. es posible definir el estado en tiempo de ejecución del objeto. Estos se muestran en una instancia objeto.