Publication:
Depuración de Datalog y mejoras en Acide

Loading...
Thumbnail Image
Official URL
Full text at PDC
Publication Date
2022
Advisors (or tutors)
Editors
Journal Title
Journal ISSN
Volume Title
Publisher
Citations
Google Scholar
Research Projects
Organizational Units
Journal Issue
Abstract
Las bases de datos deductivas, mediante la definición de reglas, tienen la capacidad de inferir información a partir de información que ya tienen almacenada de forma explícita. DES es un sistema que permite trabajar a través de una consola con bases de datos deductivas. ACIDE es un entorno de desarrollo gráfico de código abierto multiplataforma especializado en bases de datos para el Álgebra Relacional, TRC, DRC, Datalog y SQL que, en este trabajo, está configurado para trabajar con funciones específicas de DES. También puede configurarse para usarse con intérpretes o compiladores. La depuración de programas implementados con lenguajes declarativos como Datalog (lenguaje de consulta para bases de datos deductivas), para detectar la fuente de un error, requiere herramientas específicas debido a que el flujo de ejecución de dichos programas no es claro al ocultar sus mecanismos de resolución. Aunque el sistema DES incluye una herramienta de depuración textual para programas implementados con el lenguaje declarativo Datalog que ayuda a los programadores a encontrar errores en los mismos, la herramienta tiene una utilidad limitada: Durante el proceso de depuración no permite deshacer acciones ejecutadas ni inspeccionar a través de la interfaz de consola el contenido de un elemento que no se esté depurando en ese momento. También fuerza a que el usuario se deba encargar de recordar la sintaxis de los diferentes comandos necesarios para llevar a cabo una sesión de depuración. Debido a estas limitaciones entre otras, surge la necesidad de implementar una herramienta de depuración gráfica de programas Datalog que consigue extender las funcionalidades que ya de por sí ofrece la herramienta de depuración textual del sistema DES. Mi contribución a la versión de ACIDE que me ocupa ha sido, en primer lugar, la implementación de una herramienta de depuración gráfica de programas Datalog 6 en ACIDE y, en segundo lugar, la realización de mejoras en la interfaz gráfica ACIDE como las siguientes: inclusión de la cadena deshacer-rehacer durante una sesión de depuración SQL, localización dinámica a los diferentes idiomas en secciones faltantes, proporcionar más información de cada nodo durante una sesión de depuración SQL, etc.
Deductive databases, by defining rules, have the ability to infer information from information they already have explicitly stored. DES is a system that allows working through a console with deductive databases. ACIDE is a cross-platform open source graphical development environment specialized in databases for Relational Algebra, TRC, DRC, Datalog and SQL that, in this work, is configured to work with specific functions of DES. It can also be configured for use with interpreters or compilers. Debugging programs implemented with declarative languages such as Datalog (query language for deductive databases), in order to detect the source of an error, requires specific tools because the execution flow of such programs is not clear by hiding their resolution mechanisms. Although the DES system includes a textual debugging tool for programs implemented with the Datalog declarative language that helps programmers find bugs in them, the tool is of limited utility: During the debugging process, it does not allow you to undo executed actions or inspect through the console interface the content of an element that is not currently being debugged. It also forces the user to take care of remembering the syntax of the different commands necessary to carry out a debugging session. Due to these limitations, among others, the need arises to implement a graphical debugging tool for Datalog programs that manages to extend the functionalities already offered by the textual debugging tool of the DES system. My contribution to the version of ACIDE that concerns me has been, firstly, the implementation of a graphical debugging tool for Datalog programs in ACIDE and, secondly, the implementation of improvements to the ACIDE graphical interface, such as the following: inclusion of the undo-redo chain during an SQL debugging session, dynamic localization to different languages in missing sections, providing more information about each node during an SQL debugging session, etc.
Description
Grado en Ingeniería Informática, Facultad de Informática UCM, Departamento de Ingeniería del Software e Inteligencia Artificial, Curso 2021/2022. https://github.com/crislara/ACIDE
Unesco subjects
Keywords
Citation