4. Diagramas de programació

Diagramas de programación


¿Qué es un diagrama de flujo?

Un diagrama de flujo es un diagrama que describe un proceso, sistema o algoritmo informático. Se usan ampliamente en numerosos campos para documentar, estudiar, planificar, mejorar y comunicar procesos que suelen ser complejos en diagramas claros y fáciles de comprender. Los diagramas de flujo emplean rectángulos, óvalos, diamantes y otras numerosas figuras para definir el tipo de paso, junto con flechas conectoras que eficiente el flujo y la secuencia. Pueden variar desde diagramas simples y dibujados a mano hasta diagramas exhaustivos creados por computadora que describen múltiples pasos y rutas.Si tomamos en cuenta todas las diversas figuras de los diagramas de flujo, son uno de los diagramas más comunes del mundo, usados ​​por personas con y sin conocimiento técnico en una variedad de campos. Los diagramas de flujo a veces se denominan con nombres más especializados, como "diagrama de flujo de procesos", "mapa de procesos", "diagrama de flujo funcional", "mapa de procesos de negocios", "notación y modelado de procesos de negocio (BPMN) "o" diagrama de flujo de procesos (PFD) ". Están relacionados con otros diagramas populares, como los diagramas de  flujo de datos (DFD) y los diagramas de actividad de lenguaje unificado de modelado (UML).


¿Cuál es la importancia de un diagrama de flujo? 

Los diagramas de flujo son enormemente relevantes en distintas áreas técnicas en donde es necesario dejardo de forma comprensible una determinada secuencia de pasos. En efecto, de esta manera es fácilmente esquematizarle un determinado proceso lógico que puede ser de utilidad para algún tipo de tarea. Así, actividades como la ingeniería industrial o la programación suelen hacer uso de este tipo de herramientas con cierta recurrencia dada la utilidad que tiene para estos propósitos. Cuando alguien genera una determinada estructura lógica que resuelve un determinado problema, pueden existir trabas a la hora de mostrar un tercero esta secuencia debido a su complejidad; los diagramas de flujo ayudan a solucionar esta circunstancia.


Historia


El uso de los diagramas de flujo para documentar procesos de negocios se inició entre las décadas de 1920 y 1930. En 1921, los ingenieros industriales Frank y Lillian Gilbreth presentó el "diagrama de flujo de procesos" en la Sociedad Americana de Ingenieros Mecánicos (ASME - Sociedad Americana de Ingenieros Mecánicos). A principios de la década de 1930, el ingeniero industrial Allan H. Morgensen empleó las herramientas de Gilbreth para presentar conferencias sobre cómo aumentar la eficiencia en el trabajo a personas de negocios en su empresa.


En la década de 1940, dos estudiantes de Morgensen, Art Spinanger y Ben S. Graham, difundieron los métodos más ampliamente. Spinanger introdujo los métodos de simplificación del trabajo en Procter & Gamble. Graham, director de Standard Register Industrial, adaptó los diagramas de flujo de procesos al procesamiento de información. En 1947, ASME adoptó un sistema de símbolos para los diagramas de flujo de procesos derivados del trabajo original de Gilbreth. 



Además, a fines de la década de 1940, Herman Goldstine y John Van Neumann usaron diagramas de flujo para desarrollar programas informáticos. Pronto la creación de diagramas se volvió cada vez más popular para los programas informáticos y algoritmos de todo tipo. Los diagramas de flujo se continúan usando para la programación hoy en día. Sin embargo, el pseudocódigo, una combinación de palabras y lenguaje de codificación pensado para lectura humana, a menudo se usa para representar niveles más específicos de detalle y para tener una versión más cercana al producto final.


En Japón, Kaoru Ishikawa (1915-1989), una personalidad clave en las iniciativas de calidad en manufactura, afirmó que los diagramas de flujo eran una de las herramientas fundamentales en el área de control de calidad, junto a otras complementarias, como el histograma , la ficha de control y el diagrama de causa-efecto, también llamado Diagrama de Ishikawa.



Símbolos de un diagrama de flujo 

A continuación, te enseñaremos algunos de los símbolos de diagramas de flujo más comunes.


Diagramas de flujo para algoritmos y programación

Como una representación visual del flujo de datos, los diagramas de flujo son útiles para escribir un programa o algoritmo y explicárselo a otros o colaborar con otros en el mismo. Puedes usar un diagrama de flujo para explicar detalladamente la lógica detrás de un programa antes de empezar a codificar el proceso automatizado. Puede ayudar a organizar una perspectiva general y ofrecer una guía cuando llegue el momento de codificar. Más específicamente, los diagramas de flujo pueden:

  • Demostrar cómo el código está organizado.
  • Visualizar la ejecución de un código dentro de un programa.
  • Mostrar la estructura de un sitio web o aplicación.
  • Comprender cómo los usuarios navegan por un sitio web o programa.

A menudo, los programadores pueden escribir un pseudocódigo, una combinación de lenguaje natural y lenguaje informático que puede ser leído por personas. Esto puede permitir más detalle que el diagrama de flujo y servir como reemplazo del diagrama de flujo o como el próximo paso del código mismo.

Los diagramas relacionados que se emplean en el software informático incluyen:

  • Lenguaje unificado de modelado (UML): este es el lenguaje de propósito general usado en la ingeniería de software para el modelado.

  • Diagramas Nassi-Shneiderman (NSD): usados ​​para la programación informática estructurada. Llevan el nombre de sus creadores: Isaac Nassi y Ben Shneiderman, quienes los desarrollaron en 1972 en la Universidad Estatal de Nueva York en Stony Brook. También se denominan "estructogramas".

  • Diagramas DRAKON: DRAKON es un lenguaje de programación visual de algoritmos empleado para crear diagramas de flujo.




¿Cómo se usan los diagramas de flujo en otros campos?

Más allá de la programación informática, los diagramas de flujo pueden tener muchos usos en diversos campos.

En cualquier campo pueden:

  • Documentar y analizar un proceso.
  • Estandarizar un proceso para obtener eficiencia y calidad.
  • Comunicar un proceso para capacitar a otros sectores de la organización o lograr el entendimiento de su parte.
  • Identificar cuellos de botellas, redundancias y pasos innecesarios en un proceso y mejorarlo.

Educación:

  • Planificar los requisitos académicos y las tareas del curso.
  • Crear una presentación oral o un plan de clase.
  • Organizar un proyecto grupal o individual.
  • Mostrar un proceso civil o legal, como el registro de votantes.
  • Planificar y estructurar la escritura creativa, como poesía o poesía lírica.
  • Demostrar el desarrollo de un personaje en la literatura y el cine.
  • Representar el flujo de algoritmos o acertijos lógicos.
  • Comprender un proceso científico, como el ciclo de Krebs.
  • Dibujar un proceso anatómico, como la digestión.
  • Trazar síntomas y tratamientos para enfermedades o trastornos.
  • Comunicar hipótesis y teorías, como la pirámide de Maslow o jerarquía de las necesidades humanas.

Ventas y marketing:

  • Trazar el flujo de una encuesta.
  • Dibujar un proceso de ventas.
  • Planificar estrategias de investigación.
  • Mostrar flujos de registro.
  • Difundir políticas de comunicación, como un plan de RRPP de emergencia.


Negocios:

  • Comprender procesos de pedidos y compras.
  • Representar la rutina diaria o las tareas de un empleado.
  • Comprender las rutas que toman los usuarios en un sitio web o en una tienda.
  • Desarrollar un plan de negocio o un plan de desarrollo de un producto.
  • Documentar un proceso en preparación para una auditoría, incluido el cumplimiento normativo, por ejemplo, en virtud de la Ley Sarbanes-Oxley.
  • Documentar un proceso en preparación para una venta o consolidación.


Manufactura:

  • Indicar la composición química o física de un producto.
  • Ilustrar el proceso de manufactura de principio a fin.
  • Descubrir y resolver ineficiencias en un proceso de manufactura o adquisición.

Ingeniería:

  • Representante de flujos de proceso o de sistema.
  • Diseñar y actualizar procesos químicos y de planta.
  • Evaluar el ciclo de vida de una estructura.
  • Diagramar un flujo de ingeniería inversa.
  • Demostrar la fase de prototipo y diseño de una estructura o producto nuevos.

 

¿Cuáles son los tipos de diagramas de flujo y en que consiste?

Distintos autores describe numerosos tipos de diagramas de flujo en diferentes términos. Estas personas incluyen a expertos publicados, como Alan B. Sterneckert, Andrew Veronis, Marilyn Bohl y Mark A. Fryman.

Sterneckert, en su libro escrito en 2003  Critical Incident Management , mencionó cuatro tipos de diagramas de flujo populares, enmarcados en el concepto de controles de flujos en vez del flujo en sí mismo:

  • Diagramas de flujo de documentos:  Estos "tienen el propósito de mostrar los controles existentes en el flujo de documentos a través de los componentes de un sistema. Negocio".
  • Diagramas de flujo de datos:  Estos indican "los controles que rigen los flujos de datos en un sistema. Los diagramas de flujo de datos se usan principalmente para mostrar los canales donde se transmiten los datos a través del sistema en lugar de como se controla el flujo ".
  • Diagramas de flujo de sistemas:  Estos "indican el flujo de datos que pasa hacia los componentes principales de un sistema, oa través de ellos, tales como entrada de datos, programas, medios de almacenamiento, procesadores y redes de comunicación".
  • Diagramas de flujo de programas:  Estos muestran "los controles ubicados internamente en un programa dentro de un sistema".

Veronis, en su libro escrito en 1978,  Microprocessors: Design and Applications , describió tres tipos de diagramas de flujo en función del alcance y nivel de detalle:

  • Diagrama de flujo de sistema:  identifica los dispositivos que se emplean.
  • Diagrama de flujo general:  vista general.
  • Diagrama de flujo detallado:  más detalles.

Bohl, en su libro escrito en 1978 llamado A Guide for Programmers, enumera solo dos:

  • Diagrama de flujo de sistemas.
  • Diagrama de flujo de programas.

But Fryman, en su libro escrito en 2001 titulado  Quality and Process Improvement , distinguió los tipos de muchas maneras, más desde una perspectiva orientada a los negocios que a la informática:

  • Diagrama de flujo de decisiones.
  • Diagrama de flujo lógico.
  • Diagrama de flujo de sistemas.
  • Diagrama de flujo de productos.
  • Diagrama de flujo de procesos.

Otros tipos de diagramas de flujo definido por otros incluyen:

  • Diagrama de carriles, también conocido como "diagrama de flujo de carriles":  detalla los roles de cada participante en procesos que se realizan entre equipos.
  • Diagrama de flujo de trabajo:  documenta flujos de trabajo, a menudo involucra tareas, documentos e información en las oficinas.
  • Diagrama de cadena de procesos impulsada por eventos (EPC):  documenta o planifica un proceso de negocio.
  • Diagrama de flujo de lenguaje de descripción y especificación (SDL):  realiza una lluvia de ideas sobre los algoritmos informáticos mediante tres componentes básicos: proceso, bloqueo y definición de sistema.

Estos diagramas relacionados también se piensan, a veces, como tipos de diagramas de flujo:

  • Diagrama de flujo de datos (DFD):  traza el flujo de información de cualquier sistema o proceso.
  • Diagrama de flujo de procesos (PFD), también conocido como "gráfico de flujo de procesos":  ilustra las relaciones entre los principales componentes de una planta industrial.
  • Modelo y notación de procesos de negocio (BPMN 2.0):  modela los pasos de un proceso de negocio planificado.

 

¿Cómo se planifica un diagrama de flujo?

1.  Definir tu propósito y alcance. ¿Qué quieres lograr? ¿Estás considerando las cosas correctas con un punto inicial y final apropiado para ese propósito? Realiza una investigación lo suficientemente detallada, pero lo suficientemente simple a la hora de crear tus diagramas para comunicarte con tu audiencia.

2.  Identifica las tareas en orden cronológico. Esto puede involucrar las conversaciones con los participantes, la observación de un proceso o la revisión de cualquier documentación existente. Puedes escribir los pasos en forma de notas o comenzar con un diagrama en versión borrador.

3.  Organízalos por tipo y figura correspondiente, como procesos, decisiones, datos, entradas o salidas.

4.  Crea tu diagrama, ya sea dibujándolo a mano o usando un programa como Lucidchart. 

5.   Confirma tu diagrama de flujo, verificando todos los pasos con las personas que participan en el proceso. Observa el proceso para asegurarte de no dejar de lado nada que sea importante para tu propósito.  

 

Menciona dos ejemplos de resolución de problemas a través de diagramas de flujo.





No hay comentarios.:

Publicar un comentario

¿Qué es un lenguaje de programación? Es un lenguaje formal que, mediante una serie de instrucciones, le permite a un programador escribir ...