Diagrama de flujo - Flowchart

Un diagrama de flujo simple que representa un proceso para tratar con una lámpara que no funciona .

Un diagrama de flujo es un tipo de diagrama que representa un flujo de trabajo o proceso . Un diagrama de flujo también se puede definir como una representación esquemática de un algoritmo , un enfoque paso a paso para resolver una tarea.

El diagrama de flujo muestra los pasos como cuadros de varios tipos y su orden conectando los cuadros con flechas. Esta representación esquemática ilustra un modelo de solución a un problema dado . Los diagramas de flujo se utilizan para analizar, diseñar, documentar o gestionar un proceso o programa en varios campos.

Visión general

Diagrama de flujo de un bucle for estilo C

Los diagramas de flujo se utilizan para diseñar y documentar procesos o programas simples. Al igual que otros tipos de diagramas, ayudan a visualizar lo que está sucediendo y, por lo tanto, ayudan a comprender un proceso y quizás también a encontrar características menos obvias dentro del proceso, como fallas y cuellos de botella . Hay diferentes tipos de diagramas de flujo: cada tipo tiene su propio conjunto de cuadros y anotaciones. Los dos tipos más comunes de cuadros en un diagrama de flujo son:

  • Un paso de procesamiento, generalmente llamado actividad y denotado como una caja rectangular.
  • Una decisión, generalmente denotada como un diamante.

Un diagrama de flujo se describe como "multifuncional" cuando el diagrama se divide en diferentes partes verticales u horizontales, para describir el control de diferentes unidades organizativas. Un símbolo que aparece en una parte en particular está bajo el control de esa unidad organizativa. Un diagrama de flujo multifuncional permite al autor ubicar correctamente la responsabilidad de realizar una acción o tomar una decisión, y mostrar la responsabilidad de cada unidad organizativa por diferentes partes de un solo proceso.

Los diagramas de flujo representan ciertos aspectos de los procesos y generalmente se complementan con otros tipos de diagramas. Por ejemplo, Kaoru Ishikawa definió el diagrama de flujo como una de las siete herramientas básicas de control de calidad, junto al histograma , el diagrama de Pareto , la hoja de verificación , el diagrama de control , el diagrama de causa y efecto y el diagrama de dispersión . De manera similar, en UML , una notación estándar de modelado de conceptos utilizada en el desarrollo de software, el diagrama de actividades , que es un tipo de diagrama de flujo, es solo uno de los muchos tipos de diagramas diferentes.

Los diagramas de Nassi-Shneiderman y los diagramas de Drakon son una notación alternativa para el flujo del proceso.

Los nombres alternativos comunes incluyen: diagrama de flujo, diagrama de flujo de proceso, diagrama de flujo funcional, mapa de proceso, diagrama de proceso, diagrama de proceso funcional, modelo de proceso de negocio, modelo de proceso, diagrama de flujo de proceso , diagrama de flujo de trabajo , diagrama de flujo de negocio. Los términos "diagrama de flujo" y "diagrama de flujo" se utilizan indistintamente.

La estructura gráfica subyacente de un diagrama de flujo es un diagrama de flujo, que abstrae los tipos de nodos, su contenido y otra información auxiliar.

Historia

El primer método estructurado para documentar el flujo del proceso, el " diagrama de flujo del proceso ", fue presentado por Frank y Lillian Gilbreth en la presentación "Gráficos del proceso: primeros pasos para encontrar la mejor manera de hacer el trabajo", a los miembros de la Sociedad Estadounidense de Ingenieros Mecánicos (ASME) en 1921. Las herramientas de Gilbreth rápidamente se abrieron camino en los planes de estudio de ingeniería industrial . A principios de la década de 1930, un ingeniero industrial, Allan H. Mogensen comenzó a capacitar a empresarios en el uso de algunas de las herramientas de la ingeniería industrial en sus Conferencias de Simplificación del Trabajo en Lake Placid , Nueva York .

Art Spinanger, un graduado de la clase de Mogensen en 1944 , llevó las herramientas a Procter and Gamble, donde desarrolló su Programa de Cambio de Métodos Deliberados. Ben S. Graham , otro graduado de 1944, Director de Ingeniería de Formcraft en Standard Register Industrial , aplicó el diagrama de proceso de flujo al procesamiento de información con su desarrollo del diagrama de proceso de flujo múltiple, para presentar múltiples documentos y sus relaciones. En 1947, ASME adoptó un conjunto de símbolos derivado del trabajo original de Gilbreth como el "Estándar ASME: Diagramas de proceso de operación y flujo".

Douglas Hartree en 1949 explicó que Herman Goldstine y John von Neumann habían desarrollado un diagrama de flujo (originalmente, diagrama) para planificar programas de computadora. Su relato contemporáneo fue respaldado por ingenieros de IBM y por los recuerdos personales de Goldstine. Los diagramas de flujo de programación originales de Goldstine y von Neumann se pueden encontrar en su informe inédito, "Planificación y codificación de problemas para un instrumento informático electrónico, Parte II, Volumen 1" (1947), que se reproduce en las obras completas de von Neumann.

El diagrama de flujo se convirtió en una herramienta popular para describir algoritmos informáticos , pero su popularidad disminuyó en la década de 1970, cuando los terminales informáticos interactivos y los lenguajes de programación de tercera generación se convirtieron en herramientas comunes para la programación informática , ya que los algoritmos pueden expresarse de forma más concisa como código fuente en dichos lenguajes . A menudo se usa pseudocódigo , que usa los modismos comunes de dichos lenguajes sin adherirse estrictamente a los detalles de uno en particular.

Hoy en día, los diagramas de flujo todavía se utilizan para describir algoritmos informáticos . Las técnicas modernas como los diagramas de actividad UML y los diagramas de Drakon pueden considerarse extensiones del diagrama de flujo.

Tipos

Sterneckert (2003) sugirió que los diagramas de flujo se pueden modelar desde la perspectiva de diferentes grupos de usuarios (como gerentes, analistas de sistemas y empleados), y que hay cuatro tipos generales:

  • Diagramas de flujo de documentos , que muestran controles sobre un flujo de documentos a través de un sistema
  • Diagramas de flujo de datos , que muestran controles sobre un flujo de datos en un sistema.
  • Diagramas de flujo del sistema , que muestran controles a nivel físico o de recursos.
  • Diagrama de flujo del programa , que muestra los controles en un programa dentro de un sistema

Tenga en cuenta que cada tipo de diagrama de flujo se centra en algún tipo de control, más que en el flujo particular en sí.

Sin embargo, existen algunas clasificaciones diferentes. Por ejemplo, Andrew Veronis (1978) nombró tres tipos básicos de diagramas de flujo: el diagrama de flujo del sistema , el diagrama de flujo general y el diagrama de flujo detallado . Ese mismo año Marilyn Bohl (1978) afirmó que "en la práctica, se utilizan dos tipos de diagramas de flujo en la planificación de soluciones: diagramas de flujo del sistema y diagramas de flujo del programa ...". Más recientemente, Mark A. Fryman (2001) identificó más diferencias: "Diagramas de flujo de decisiones, diagramas de flujo lógicos, diagramas de flujo de sistemas, diagramas de flujo de productos y diagramas de flujo de procesos son solo algunos de los diferentes tipos de diagramas de flujo que se utilizan en las empresas y el gobierno".

Además, muchas técnicas de diagrama son similares a los diagramas de flujo pero tienen un nombre diferente, como diagramas de actividad UML .

Bloques de construcción

Símbolos comunes

El American National Standards Institute (ANSI) estableció estándares para diagramas de flujo y sus símbolos en la década de 1960. La Organización Internacional de Normalización (ISO) adoptó los símbolos ANSI en 1970. La norma actual, ISO 5807, fue revisada en 1985. Generalmente, los diagramas de flujo fluyen de arriba a abajo y de izquierda a derecha.

Forma ANSI / ISO Nombre Descripción
Diagrama de flujo Line.svg Línea de flujo (punta de flecha) Muestra el orden de funcionamiento del proceso. Una línea que viene de un símbolo y apunta a otro. Se agregan puntas de flecha si el flujo no es el estándar de arriba a abajo, de izquierda a derecha.
Diagrama de flujo Terminal.svg Terminal Indica el comienzo y el final de un programa o subproceso. Representado como un estadio , rectángulo ovalado o redondeado (filete). Por lo general, contienen la palabra "Inicio" o "Fin", u otra frase que indique el inicio o el final de un proceso, como "enviar consulta" o "recibir producto".
Diagrama de flujo Process.svg Proceso Representa un conjunto de operaciones que cambia el valor, la forma o la ubicación de los datos. Representado como un rectángulo .
Diagrama de flujo Decision.svg Decisión Muestra una operación condicional que determina cuál de las dos rutas tomará el programa. La operación suele ser una pregunta de sí / no o una prueba de verdadero / falso. Representado como un diamante ( rombo ).
Diagrama de flujo IO.svg De entrada y salida Indica el proceso de ingreso y salida de datos, como al ingresar datos o mostrar resultados. Representado como romboide .
Diagrama de flujo Annotation.svg Anotación (comentario) Indicar información adicional sobre un paso del programa. Representado como un rectángulo abierto con una línea discontinua o continua que lo conecta al símbolo correspondiente en el diagrama de flujo.
Diagrama de flujo predefinido Process.svg Proceso predefinido Muestra el proceso con nombre que se define en otro lugar. Representado como un rectángulo con bordes verticales de doble golpe.
Diagrama de flujo Connector.svg Conector en la página Los pares de conectores etiquetados reemplazan las líneas largas o confusas en una página de diagrama de flujo. Representado por un pequeño círculo con una letra en su interior.
Conector fuera de página.png Conector fuera de página Un conector etiquetado para usar cuando el destino está en otra página. Representado como un pentágono en forma de plato de home .

Otros simbolos

Los estándares ANSI / ISO incluyen símbolos más allá de las formas básicas. Algunos son:

Forma Nombre Descripción
Base de datos de diagrama de flujo Archivo de datos o base de datos Datos representados por un cilindro que simboliza una unidad de disco.
Documento de diagrama de flujo Documento Los documentos individuales representaban un rectángulo con una base ondulada.
Documento de diagrama de flujo múltiple Varios documentos representados como una pila de rectángulos con bases onduladas.
Entrada manual Flowchar Manual de operación Representado por un trapezoide con el lado paralelo más largo en la parte superior, para representar una operación o ajuste a proceso que solo se puede realizar manualmente.
Entrada manual de diagrama de flujo Entrada manual Representado por un cuadrilátero , con la parte superior inclinada irregularmente hacia arriba de izquierda a derecha, como la vista lateral de un teclado .
Preparación del diagrama de flujo Preparación o inicialización Representado por un hexágono alargado , originalmente utilizado para pasos como configurar un interruptor o inicializar una rutina.

Procesamiento en paralelo

  • El modo paralelo está representado por dos líneas horizontales al comienzo o al final de las operaciones simultáneas.

Para el procesamiento paralelo y concurrente , las líneas horizontales del modo paralelo o una barra horizontal indican el inicio o el final de una sección de procesos que se pueden realizar de forma independiente:

  • En una bifurcación , el proceso crea uno o más procesos adicionales, indicados por una barra con una ruta de entrada y dos o más rutas de salida.
  • En una combinación , dos o más procesos continúan como un solo proceso, indicado por una barra con varias rutas entrantes y una ruta saliente. Todos los procesos deben completarse antes de que continúe el proceso único.

Software

Diagramación

Flujogoritmo

Se puede utilizar cualquier programa de dibujo para crear diagramas de flujo, pero estos no tendrán un modelo de datos subyacente para compartir datos con bases de datos u otros programas, como sistemas de gestión de proyectos o hojas de cálculo . Existen muchos paquetes de software que pueden crear diagramas de flujo automáticamente, ya sea directamente desde el código fuente de un lenguaje de programación o desde un lenguaje de descripción de diagrama de flujo.

Existen varias aplicaciones y lenguajes de programación visual que utilizan diagramas de flujo para representar y ejecutar programas. Generalmente, estos se utilizan como herramientas de enseñanza para estudiantes principiantes. Los ejemplos incluyen Flowgorithm , Raptor , LARP, Visual Logic , Fischertechnik ROBO Pro y VisiRule.

Ver también

Referencias

Otras lecturas

enlaces externos