Implementación de una herramienta de traducción y verificación de programas diseñados en diagrama de flujo utilizando como paso intermedio pseudocódigo - Palomino Masco, Jairo Abner (Pontificia Universidad Católica del Perú, 2014)
Este proyecto de fin de carrera parte de la ausencia de herramientas que sirvan de ayuda para aquellos alumnos que quieran aprender a programar. Si bien existen programas que permiten generar diagramas de flujo y luego exportarlos a un lenguaje de programación, estos no poseen un compilador que permita detectar errores de sintaxis, que pueda poseer la solución. Por ello se plantea implementar un proceso de traducción y verificación de programas diseñados en diagrama de flujo utilizando como paso intermedio pseudocódigo, para que el alumno pueda preocuparse más en la lógica de su solución, que en la sintaxis o estructura del lenguaje de programación, a codificar. Para realizar este proyecto se definió una serie de objetivos específicos. En primer lugar se desarrolló un entorno para dibujar diagramas de flujo, para ello se adaptaron las librerías de Microsoft office que ofrecen las herramientas necesarias para la creación del entorno de trabajo. Luego, se definió la gramática que almacena la sintaxis del pseudocódigo utilizando la notación Backus-Naur Form (BNF). Después se implementó el método de conversión del formato XML de Microsoft office, representación del diagrama de flujo, a pseudocódigo utilizando la sintaxis definida anteriormente y un editor de texto en el cual se muestre el resultado de la conversión al usuario. Finalmente se implementó el intérprete que utiliza la gramática para verificar que el código se encuentre léxicamente, sintácticamente y semánticamente correcto. De esta manera los alumnos podrán obtener a partir de un diagrama, el cual al ser gráfico es de fácil entendimiento, el código de su programa sin necesidad de conocer la sintaxis del mismo y validado.
Keywords: Lenguajes de programación (Computadoras electrónicas); Diagramas de flujo; Programación (Computadoras electrónicas); https://purl.org/pe-repo/ocde/ford#1.02.00