Diagramas de flujo

Bases para la diagramación de algoritmos
César Augusto Gutiérrez
Ing. de Sistemas y telecomunicaciones

Introducción

Un diagrama de flujo es la representación gráfica de un proceso. Un diagrama de flujo tiene como objetivo facilitarnos la comprensión de un algoritmo o simplificar el análisis de un proceso. El diagrama de flujo consta de símbolos como cuadros, rombos, óvalos, etc. que representan a cada uno de los pasos a seguir durante un proceso. Estos símbolos están conectados por flechas de un solo sentido y nos indican la secuencia en que se van desarrollando las distintas tareas.

Los diagramas de flujo se desarrollaron con la idea de representar procesos en áreas como la administración de empresas, la planeación de proyectos, la manufactura de productos, la planificación de estrategias de ventas y muchas áreas más, no obstante, han cobrado un interés muy especial en el análisis y planeación de procesos para el desarrollo de sistemas computacionales. Y al mismo tiempo han demostrado tener una gran utilidad en el proceso de aprendizaje y formación de futuros desarrolladores de software.

Los diagramas facilitan la comprensión de métodos de solución para problemas matemáticos y lógicos, permitiendo a los estudiantes abstraerse de un lenguaje determinado y enfocarse en el procedimiento de solución. De este modo, la posterior etapa de codificación se simplifica enormemente al tener ya resuelta la metodología a través de un diagrama de flujo.

Existen diferentes símbolos utilizados en la diagramación, de los cuales podemos destacar cinco símbolos básicos con los cuales se puede representar prácticamente cualquier algoritmo informático por muy complejo que éste sea.

Estos símbolos son los siguientes


Simbolo Descripción
Inicio / Terminación. Este símbolo se utiliza para señalar el comienzo así como el final de un diagrama. Tradicionalmente se colocan las palabras “INICIO” ó “FIN” dentro de la figura para hacerlo más explícito.

Es el único símbolo que solamente tiene una conexión (flecha) ya sea de salida, en el de inicio, o de entrada, para el de fin.


Entrada de datos. En este símbolo se indican los valores iniciales que deberá recibir el proceso. Esto se hace asignándoles letras o nombres de variables para cada uno de los valores y anotando estas letras en el interior de la figura.

Existen otros símbolos que también representan una entrada de datos pero no consideramos que su utilización, o combinación, aporte mayor utilidad al objetivo intrínseco de ejemplificar una entrada de datos.

Este símbolo siempre deberá tener al menos una conexión entrante (generalmente del inicio) y una de salida.
Proceso de datos. Este símbolo lo utilizaremos para señalar operaciones matemáticas, aritméticas o procesos específicos que se realicen con nuestros datos.

La manera de anotar dichos procesos, puede ser mediante una descripción breve de la operación o mediante una asignación de dicha operación hacia una variable como por ejemplo: R ← A + B

Este símbolo siempre deberá tener al menos una conexión de entrada y una de salida.
Decisión. Este símbolo nos representa una disyuntiva lógica o decisión. En su interior se anota una instrucción o pregunta que pueda ser evaluada como cierta o falsa y que determine el flujo del programa.

Este símbolo es el único que puede contener dos salidas y en cada una de las salidas se suele poner un rótulo de “si/no” o “cierto/falso” indicando con esto cual de ellas se tomará según el resultado de la evaluación de la función.

Es una buena práctica de diagramación utilizar siempre el mismo lado para los positivos siempre que esto sea posible.


Desplegado de información. Este símbolo se utiliza para mostrar un resultado, el cual puede representar la solución al problema que se pretende resolver y que fue conseguida a través del resto del diagrama.

Dentro de su interior se anotará la variable con el resultado final o el mensaje que represente el resultado del algoritmo.

Generalmente veremos este símbolo muy cerca del final del proceso y precedido por el símbolo de terminación.

Este símbolo siempre deberá tener al menos una conexión de entrada y una de salida.

En la diagramación, también contamos con una serie de símbolos auxiliares que no intervienen en el proceso del algoritmo, pero que pueden ser útiles para ayudarnos a dar claridad a nuestros diagramas, algunos de ellos son los siguientes:

Simbolo Descripción
Conector. Este símbolo se utiliza para indicar un salto dentro del diagrama. Se utiliza con el propósito de facilitar la disposición plana de un diagrama y evitar el cruce excesivo de líneas a través del mismo.

Este conector va asociado a un conector “gemelo” y junto con él, representa una puerta de entrada y de salida para el flujo del diagrama, es decir que cuando una flecha termina en un conector marcado con la letra “A”, se continuará el diagrama a partir de otro conector marcado con la misma letra tal como si se tratara de una línea continua in interrumpida.
Conector de página. Este conector es idéntico en funcionamiento que el anterior, pero su forma pentagonal lo distingue y nos indica que debemos buscar el “gemelo” en una página distinta de la actual. Este conector lleva asociado una especie de salto entre páginas.

Cabe mencionar que no se debe abusar del uso de conectores pues de lo contrario comenzaría a perderse la claridad que se pretende alcanzar con el diagrama.


Ejemplo de un diagrama de flujo simple:

Consideraciones

Aprovecharemos el diagrama anterior, para mencionar algunas consideraciones importantes:


  • El diagrama puede desarrollarse en cualquier dirección, sin embargo es aconsejable que el desarrollo se realice en lo posible de arriba hacia abajo y de izquierda a derecha.

  • Debe procurarse que el símbolo de inicio se encuentre en la parte superior o superior-izquierda del diagrama.

  • El final se debe procurar que quede en la parte inferior o inferior-derecha. Si esto no es posible, debe separarse ligeramente del cuerpo del diagrama a fin de que sea fácilmente identificado.

  • Se pueden utilizar palabras para especificar la acción dentro del símbolo como es el caso de “Introducir A y B”, aunque esto es innecesario ya que con poner simplemente “A, B” se sobreentiende. Es el mismo caso de poner “Comparar si A>B” o simplemente “A > B”.

  • Es válido hacer que dos flechas apunten a un símbolo, aunque es más estético hacer que la segunda flecha apunte a la primera que si está apuntando al símbolo, tal como se hace en el caso del “FIN”.

Símbolos compuestos (complejos)

En diagramación se acostumbra también el uso de símbolos compuestos que nos reduzcan la complejidad y el tamaño del diagrama. Estos símbolos representan estructuras de uso común y que ya están adecuadamente definidos. Este es el caso del símbolo de “Ciclo automático” que es como sigue:


El símbolo del Ciclo automático representa al ciclo “for” de la mayoría de los lenguajes.

Para entender mejor este símbolo, veamos el siguiente ejemplo:

En este caso inicialicé la variable “n” con el valor de 1. Y cambié la condición de salida para que comparara con “menor o igual” (<=) en lugar de “menor que” (<).

El mismo diagrama se puede también realizar con los objetos básicos, lo cual se puede dejar como ejercicio para apreciar la ventaja de utilizar símbolos compuestos.


Diagramas de procesos

Los diagramas de procesos son diagramas simplificados en los cuales se utiliza únicamente el símbolo de “proceso” (rectángulo). Se utilizan para indicar un algoritmo a grandes rasgos o los pasos para realizar una actividad. Estos diagramas te dicen que cosa se hace en cada etapa, sin meterse en detalles de cómo se hace.

Ejemplo de un diagrama de procesos:

Estos diagramas no son de mayor interés para el estudio de algoritmos ya que, como se podrá apreciar, estos se omiten del mismo.

Comentarios

Entradas populares de este blog

Material de la charla "La nueva pedagogIA" y herramientas de IA en educación.

Cómo profe... ¿Para qué me sirve la Inteligencia Artificial?

Revoluciona la Forma de Evaluar a tus Estudiantes con Inteligencia Artificial