Repositorio da Universidade da Coruña
Not a member yet
35055 research outputs found
Sort by
Aplicación del aprendizaje activo con oráculos imperfectos en un contexto de juegos
[Resumen]: El Aprendizaje por Refuerzo es una técnica de Aprendizaje Automático en la que un agente
aprende a tomar decisiones en base a la interacción con el entorno. El Aprendizaje Activo,
por otro lado, es una técnica en la que se involucra a los humanos (oráculos) en el proceso de
Aprendizaje Automático de un sistema, consultando al humano sobre aquellos casos donde el
modelo tiene más incertidumbre en sus predicciones.
En este proyecto, aplicamos técnicas de Aprendizaje por Refuerzo y Aprendizaje Activo en
el contexto del juego 2048. El objetivo es investigar si la intervención humana puede mejorar
el rendimiento del sistema. Para ello, desarrollamos un sistema de aprendizaje por refuerzo
basado en Deep Q-Learning e integramos en él un sistema de Aprendizaje Activo donde un
humano experto proporcionaba información al modelo para ayudarle en su proceso de apren-
dizaje. Los resultados obtenidos demuestran como el uso de Aprendizaje Activo, incorporando
a los humanos en el proceso de entrenamiento, pueden mejorar el rendimiento del sistema in-
cluso cuando el dominio del problema a resolver presenta aleatoriedad o incertidumbre.[Abstract]: Reinforcement Learning is a Machine Learning technique in which an agent learns to make
decisions based on interaction with the environment. Active Learning, on the other hand, is
a technique in which humans (oracles) are involved in the Machine Learning process, con-
sulting the human on those cases where the model has more uncertainty in its predictions.
In this project, we apply Reinforcement Learning and Active Learning techniques in the con-
text of the 2048 game. The objective is to investigate whether human intervention can improve
the performance of the system. For this purpose, we developed a reinforcement learning sys-
tem based on Deep Q-Learning and integrated in it an Active Learning system where a human
expert provided feedback to the model to help it in its learning process. The results obtained
demonstrate how the use of Active Learning, incorporating humans in the training process,
can improve the performance of the system even when the problem domain to be solved
presents randomness or uncertainty.Traballo fin de grao (UDC.FIC). Enxeñeria informática. Curso 2023/202
Simulator of a control system based on EEG signals associated with open and closed eyes
[Abstract]: Brain-computer interfaces (BCIs) are systems that allow communication between the brain
and a computer. They are used in a wide range of applications, from medical to entertainment,
but they have a special usage for people with motor problems, as they allow users to control
devices without the need for movement. The main drawbacks of them are the high cost of the
devices and even the licenses for the development of the systems. This project aims to develop
a BCI simulator for researchers and developers to test different classification algorithms and
their integration with a low-cost and open-source BCI system, composed by a dual-channel
EEG device, that will be able to interact with other gadgets based on the user’s eye state.
Moreover, this simulator will also be usable for educational purposes, in subjects related to
signal processing and machine learning.[Resumen]: Las Interfaces Cerebro-Ordenador (BCIs, por sus siglas en inglés) son sistemas que permiten la comunicación entre el cerebro y un ordenador. Se utilizan en una amplia gama de
aplicaciones, desde médicas hasta de entretenimiento, pero tienen un uso destacable en personas con problemas motores, ya que permiten a estos usuarios controlar dispositivos sin
necesidad de moverse. Los principales inconvenientes de estos sistemas son el alto coste de
los dispositivos e incluso de las licencias para el desarrollo de los sistemas con esos dispositivos. Este proyecto tiene como objetivo desarrollar un simulador de una BCI que permita que
investigadores y desarolladores prueben diferentes algoritmos de clasificación y su integración con un sistema BCI de bajo coste y de código abierto, compuesto por un dispositivo EEG
de doble canal, que será capaz de interactuar con otros aparatos basándose en el estado ocular
del usuario. Además, el sistema también podrá ser utilizado para fines educativos, en cursos
relacionados con el procesamiento de señales y el aprendizaje automático.Thanks to the CICAS Chair (Cátedra polo Impulso da Ciencia Aberta a través do
Software) for their help in carrying out this project, through the concession of the grant for
its realization “Axudas á realización de TFG/TFM”.Traballo fin de grao (UDC.FIC). Enxeñeria informática. Curso 2023/202
Aplicación de algoritmos evolutivos para indexación de objetos en espacios métricos
[Resumen]: El principal objetivo de este trabajo es utilizar algoritmos genéticos como método de selección de conjuntos óptimos de pivotes que minimicen el cálculo de funciones de distancia
necesarias durante las búsquedas de similitud sobre espacios métricos. Un buen conjunto de
pivotes podrá descartar un mayor número de elementos del espacio gracias a una de las propiedades de los espacios métricos, la desigualdad triangular. Se generará una población de
cromosomas representados como conjuntos de pivotes, donde cada pivote será un gen dentro del conjunto. Un conjunto será considerado mejor que otro si el promedio de funciones
distancia calculadas por consulta es menor. Este método de evaluación permitirá al algoritmo
genético favorecer durante la evolución de la población a aquellos conjuntos de pivotes que
requieran menos cálculos promedio de la función distancia.[Abstract]: The main objective of this work is to use genetic algorithms as a method to select optimal
sets of pivots that minimize the computation of distance functions required during similarity
searches in metric spaces. A good set of pivots can discard a greater number of elements
from the space due to one of the properties of metric spaces, the triangular inequality. We
will generate a population of chromosomes represented as pivot sets, where each pivot is
a gene within the set. A set will be considered better than another if the average number
of distance function computations per query is lower. This evaluation method will allow the
genetic algorithm to favor pivot sets that require fewer average distance function calculations
during the evolution of the population.Traballo fin de grao (UDC.FIC). Enxeñeria informática. Curso 2023/202
Combatendo a discriminación e os delitos de odio coa palabra: un chatbot asistencial
[Abstract]: This Bachelor Thesis aims to analyze, design, and implement a chatbot to address the injustices that some people in our society experience. Focusing on racism, this chatbot offers advice and appropriate legal information, provided by experts, to act when a racialized person suffers an unjust situation within the broad spectrum of scenarios that the chatbot covers. Additionally, this project maintains clear and demanding technical aspects, such as future maintenance and extensibility, as well as non-technical ones, such as the high sensitivity of the subject matter.[Resumo]: Este Traballo de Fin de Grado busca analizar, deseñar e implementar un chatbot co fin de facer fronte ás inxustizas que algunhas persoas da nosa sociedade experimentan. Centrándose no racismo, este chatbot ofrece consellos e información legal adecuada, proporcionada por persoas expertas, para actuar cando unha persoa racializada sofre algunha situación inxusta contida no amplo abanico destas que o chatbot contempla. Ademais, este proxecto mantén uns claros e exixentes aspectos técnicos, coma o mantemento e a extensibilidade futuras, e outros, non técnicos, coma a alta sensibilidade do tema a tratar.Traballo fin de grao (UDC.FIC). Enxeñaría Informática. Curso 2023/202
Predicting lifetime of adhesive bonds for naval steel by time-temperature superposition
[Abstract] There is a lack of knowledge about the long-term behaviour of adhesive joints in the marine environment, and for hence, its reliability. The life cycle expected for a ship is twenty-five years and conduct duration tests would last decades. The importance and originality of this study are that it provides a methodology for predicting the durability of adhesive bonds. For this purpose, three adhesives for bonding naval steel were tested at several temperatures for determination of their shear strength on standard single-lap-joint specimens. Subsequently, using the time temperature superposition principle, these results were combined into one master curve for each adhesive that can be considered as a prediction method of the durability in a long-term period. The usual parametric models of Arrhenius and Williams-Landel-Ferry were used to obtain the master curve for each adhesive by manual shifting. The results were compared with those obtained applying an open-source software developed by the authors in R language, which specifically implements a non-parametric methodology based on the shift of the first derivative curves, following parameters of Explainable Artificial Intelligence. It was found a good correlation between both methodologies, supporting the durability lifetime obtained and therefore the applicability on ships of this adhesive technology.The authors wish to acknowledge and thank the support provided by Krafft S.L.U. Spain (ITW Performance Polymers), Sarsch Adhesives, S.L. Spain (Engineered Bonding Solutions, LLC, Florida, United States) and Masterbond Inc. United States.
The research of Javier Tarrío Saavedra and Salvador Naya has been supported by the Ministerio de Ciencia e Innovación grant PID2020-113578RB-100 and PID2023-147127OB-I00, the Ministry for Digital Transformation and Civil Service under Grant TSI-100925-2023-1, the Xunta de Galicia (Grupos de Referencia Competitiva ED431C-2020-14 and ED431C 2024/014), and by the CITIC, also funded by the Xunta de Galicia through the collaboration agreement between the Consellería de Cultura, Educación, Formación Profesional e Universidades and the Galician universities for the reinforcement of the research centers of the Galician University System, CIGUS, with reference ED431G 2023/01.Xunta de Galicia; ED431C-2020-14Xunta de Galicia; ED431C 2024/014Xunta de Galicia; ED431G 2023/0
El sector de la alimentación: Un análisis de datos financieros con Power BI
[Resumen] El sector de la alimentación ha experimentado diversos cambios en los últimos años. Sus empresas han tenido que aprender a adaptarse a estas adversidades de la forma más rápida posible. A lo largo de este trabajo se analizará la información financiera de las 500 mayores empresas del sector de la alimentación, atendiendo a su importe neto de la cifra de negocios en España en el año 2021. Este análisis se realizará mediante Power BI, una herramienta que permite analizar datos y compartir la información obtenida de una manera visual. El período escogido para el análisis de estas empresas es de 2010 a 2021.
El análisis realizado permite apreciar una tendencia creciente en la facturación de las empresas estudiadas que, sin embargo, no se acompaña de un incremento similar en sus resultados, lo que provoca una caída de la rentabilidad en los últimos años del período analizado. Se analizarán las causas de la caída de esta rentabilidad y se observará que se debe a que el margen de beneficios de las empresas también presenta una trayectoria descendente en los últimos años. El análisis por subsectores muestra importantes diferencias entre los mismos, tanto en la distribución geográficas de las empresas, como en la evolución de sus ventas o rentabilidad. En lo que respecta al importe neto de la cifra de negocios, destaca el subsector cárnico, tanto por su peso en el conjunto de la industria (27,54%), como por crecimiento a lo largo del período analizado.[Abstract] The alimentation sector has undergone several changes the last years. Their companies have had to learn to adapt to these changes as quickly as possible. Throughout this work, the financial information of the 500 largest companies in the food sector will be analysed according to their net turnover in Spain in 2021. This analysis will be carried out using Power BI, a tool that allows data to be analysed and the information obtained to be shared in a visual way. The period chosen for the analysis of these companies is from 2010 to 2021. The analysis carried out allows us to appreciate a growing trend in the turnover of the companies studied, which, however, is not accompanied by a similar increase in their results, which causes a drop in profitability in the last years of the period analysed. The causes of the fall in this profitability will be analysed and it will be observed that it is due to the fact that the profit margin of companies has also shown a downward trajectory in recent years. The analysis by subsectors shows important differences between them, both in the geographical distribution of the companies, and in the evolution of their sales or profitability. With regard to the net amount of turnover, the meat subsector stands out, both for its weight in the industry as a whole (27.54%), and for its growth throughout the period analysed.Traballo fin de grao (UDC.ECO). Economía. Curso 2023/202
Valoración de opciones financieras
[Resumen] Este trabajo se centra en la descripción de las características principales de las opciones y su posterior valoración, siguiendo algunos de los métodos más usados por los bancos de inversión. Un concepto fundamental es el de volatilidad implícita (VI) del contrato de opciones, que implica el cálculo de la volatilidad del instrumento subyacente, y que cuando se incorpora en un modelo de valoración de una opción, obtenemos un valor teórico que coincide con el valor actual (es decir, el precio del mercado de la opción).
El objetivo fundamental de este trabajo es la correcta valoración de opciones, ya sea directamente mediante un modelo, o mediante la predicción de la VI. Casi no hay estudios previos, con la excepción de (Li, 2023) sobre la predicción de VI con redes neuronales, aunque éste asume el conocimiento en el futuro de las características de la opción y del mercado. Este trabajo extiende el método seleccionado en (Li, 2023) para predecir la VI, pero sin tener que asumir el conocimiento de las características de la opción en el futuro, lo cual es más realista en la práctica. Además, y de manera novel en la literatura, este Trabajo de Fin de Grado también obtiene las cinco derivadas parciales del modelo de Black and Scholes de manera explícita para subyacentes con dividendos, extendiendo el trabajo de (Yu & Xie, 2013).[Abstract] This project delves into elucidating the primary characteristics of options and their subsequent valuation, employing methodologies widely adopted by investment banks. A pivotal concept in this domain is the implied volatility (IV) of an options contract. IV represents the market's forecast of the underlying asset's volatility and, when integrated into an option valuation model, yields a theoretical price that aligns with the current market price of the option. The principal aim of this work is to achieve an accurate assessment of options, either through direct application of a valuation model or by predicting the IV. The landscape of existing literature is sparse, with notable exceptions such as (Li, 2023), who explores IV prediction using neural networks. However, Li's approach presumes knowledge of future option and market characteristics, this being a significant limitation in practical applications. This project advances Li's methodology by predicting IV without the necessity of assuming future market conditions, thereby providing a more pragmatic solution. In addition, this Final Degree Project innovatively extends the Black-Scholes model to explicitly derive the five partial derivatives, or "Greeks," for underlying assets with dividends. This extension builds upon the foundational work of Yu & Xie (2013), contributing a novel perspective to the existing literature.Traballo fin de grao (UDC.ECO). Ciencias empresariais. Curso 2023/202
Enhancing Hydrological Modeling with Artificial Intelligence
Tese por compendio de publicacións[Resumo] Os modelos hidrolóxicos son esenciais para aplicacións como a simulación
do fluxo de ríos, a previsión de inundacións e a xestión de recursos hídricos.
Non obstante, a súa eficacia depende frecuentemente de formulacións
matemáticas precisas, datos de entrada exactos e unha calibración adecuada
dos parámetros do modelo. O obxectivo desta tese é mellorar a modelización
hidrolóxica mediante a integración de Intelixencia Artificial (IA),
centrando-se en mellorar a calibración dos modelos, avanzar na modelización
de conxunto para incrementar a precisión predictiva, explorar a predición
de caudais en conca non aforadas e proporcionar percepcións sobre modelos
de Aprendizaxe Profunda (DL) para a previsión de caudais.
A investigación realizouse en diversas conca situadas en Galicia, no
noroeste de España, onde os desafíos específicos das conca locais proporcionan
un contexto único para a aplicación destas técnicas de IA.
Os resultados demostran que as técnicas de IA reducen substancialmente
o tempo de calibración para modelos tanto agregados como distribuídos mediante
a exploración efectiva dos espazos de solución. Ademais, os enfoques
de modelización de conxunto demostraron mellorar o rendemento predictivo
xeral en comparación cos modelos individuais. Non obstante, a aplicación
da IA, para a predición en conca non aforadas revelou que estes métodos
requiren unha cantidade substancial de datos para o adestramento, o que
suxire que os métodos tradicionais poderían seguir sendo máis efectivos na
nosa rexión de estudo. Finalmente, demostrouse que os modelos de DL son
máis efectivos en conca máis grandes con tempos de concentración prolongados.
Os achados desta tese proporcionan percepcións significativas sobre as
aplicacións potenciais da IA para fins de modelización hidrolóxica e destacan
os desafíos relacionados futuros[Resumen] Los modelos hidrológicos son esenciales para aplicaciones como la simulación
del flujo de ríos, la previsión de inundaciones y la gestión de recursos
hídricos. Sin embargo, su eficacia depende frecuentemente de formulaciones
matemáticas precisas, datos de entrada exactos y una calibración
adecuada de los parámetros del modelo. El objetivo de esta tesis es mejorar
la modelización hidrológica mediante la integración de Inteligencia Artificial
(IA), centrándose en mejorar la calibración de modelos, avanzar en la modelización
de ensamble para incrementar la precisión predictiva, explorar la
predicción de caudales en cuencas no aforadas y proporcionar percepciones
sobre modelos de Aprendizaje Profundo (DL) para la previsión de caudales.
La investigación se ha llevado a cabo en diversas cuencas ubicadas en
Galicia, en el noroeste de España, donde los desafíos específicos de las cuencas
locales proporcionan un contexto único para la aplicación de estas técnicas
de IA.
Los resultados demuestran que las técnicas de IA reducen sustancialmente
el tiempo de calibración para modelos tanto agregados como distribuidos
mediante la exploración efectiva de los espacios de solución. Además, los
enfoques de modelización de ensamble han demostrado mejorar el rendimiento
predictivo general en comparación con los modelos individuales. Sin embargo,
la aplicación de IA para la predicción en cuencas no aforadas reveló
que estos métodos requieren una cantidad sustancial de datos para el entrenamiento,
lo que sugiere que los métodos tradicionales podrían seguir siendo
más efectivos en nuestra región de estudio. Finalmente, se ha demostrado
que los modelos de DL son más efectivos en cuencas con mayores tiempos
de concentración.
Los hallazgos de esta tesis proporcionan percepciones significativas sobre
las aplicaciones potenciales de la IA para fines de modelización hidrológica
y destacan los desafíos relacionados futuros.[Abstract] Hydrological models are essential for applications such as streamflow simulation,
flood forecasting, and water resources management. However, their
effectiveness often depends on accurate mathematical formulations, precise
input data, and adequate calibration of model parameters. The objective
of this thesis is to enhance hydrological modeling through the integration of
Artificial Intelligence (AI), focusing on improving model calibration, advancing
ensemble modeling to boost predictive accuracy, exploring streamflow
prediction in ungauged basins, and providing insights into Deep Learning
(DL) models for streamflow forecasting.
The research has been conducted in various basins located in Galicia, in
the northwest of Spain, where the specific challenges of local basins provide
a unique context for applying these AI techniques.
The results demonstrate that AI techniques substantially reduce the
calibration time for both lumped and distributed models, by effectively exploring
solution spaces. Additionally, ensemble modeling approaches have
shown to enhance the overall predictive performance compared to individual
models. However, the application of AI for prediction in ungauged basins
revealed that these methods require substantial data for training, which
suggests that traditional methods might still perform better in our study
region. Finally, it has been demonstrated that DL models are more effective
in larger basins with extended concentration times.
The findings of this thesis provide significant insights into potential applications
of AI for hydrological modeling purposes and highlight future
related challenges
Despliegue y configuración automatizada de un clúster kubernetes con alta disponibilidad
[Resumen]: Este Trabajo de Final de Grado (TFG) tiene como principal objetivo el despliegue de un clúster Kubernetes configurado en alta disponibilidad (High Availability, HA) con la ayuda de
herramientas auxiliares como por ejemplo Ansible, Keepalived y HAProxy, entre otras.
El propósito es que, tanto el despliegue como la configuración de Kubernetes, se hagan de
manera centralizada y con la menor intervención manual posible, es decir, buscando la automatización de todos los procesos en la medida de lo posible. En cuanto a la arquitectura clúster
que se desplegará inicialmente constará de cinco nodos, de los cuales tres de ellos tendrán el
rol de control plane de Kubernetes, y serán los encargados de proveer un punto de acceso al
clúster y tomar las decisiones en función de los eventos que ocurren dentro del mismo. De estos tres nodos control plane, uno de ellos será el encargado de inicializar el clúster Kubernetes
y al cual se unirán el resto de nodos. Los dos nodos restantes jugarán el rol de worker, y serán
los encargados de ejecutar las aplicaciones y servicios por parte de los usuarios finales. También se dispondrá de un servidor Network File System (NFS) para proveer el almacenamiento
compartido de las aplicaciones que vayamos a desplegar. En nuestro caso, este servidor NFS
será proporcionado por uno de los tres nodos con el rol de control plane. Además, se configurarán sistemas de autoescalado horizontal/vertical de los recursos del clúster, junto con su
monitorización y el envío de notificaciones ante eventos importantes.
El despliegue y configuración del clúster se llevará a cabo siguiendo el paradigma Infrastructure as Code (IaC), el cual nos permite administrar infraestructuras y sistemas a partir
de código fuente. De esta forma podemos, de forma centralizada y automatizada, administrar equipos, redes, bases de datos, almacenamiento y otros tipos de recursos, además de su
aprovisionamiento. Para este propósito usaremos la herramienta Ansible, mencionada anteriormente.
Por último, debido al hardware requerido para realizar este proyecto, se llevará a cabo mediante máquinas virtuales haciendo uso de VirtualBox y Vagrant. En cualquier caso, todos
los playbooks de Ansible que se desarrollarán en este proyecto serán perfectamente válidos en
caso de que se quiera desplegar un clúster Kubernetes directamente sobre máquinas físicas.[Abstract]: The main objective of this project consists of the deployment of a Kubernetes cluster configured in high availability (HA), with the help of auxiliary tools such as Ansible, Keepalived
and HAProxy, among others. The goal is that both the deployment and configuration of Kubernetes are performed in a centralized manner and with the least amount of manual inter-
vention possible, that is, aiming to automate all processes as much as possible. Regarding the
clúster architecture that will be deployed, it will consist of five nodes, three of them playing
the role of control plane in Kubernetes. These control plane nodes are in charge of providing
an access point to the cluster and make decisions based on the events that occur within it.
One of these three control plane nodes will be responsible for initializing the cluster and to
which the rest of the nodes will later join. The two remaining cluster nodes will play the role
of worker, being in charge of executing the applications and services by the end users. There
will also be a Network File System (NFS) server to provide shared storage for the applications.
In our case, this NFS server will be hosted in one of the three control plane nodes. In addition,
horizontal/vertical auto-scaling systems for the cluster resources will be configured, along
with monitoring them and sending notification of important events.
The deployment and configuration of the cluster will be carried out using the Infrastructure as Code (IaC) paradigm, which allows us to manage systems and infrastructures from
source code. This approach enable managing computers, networks, databases, storage and
other type of resources, as well as their provisioning, in a centralized and automated manner.
For this purpose we will use the Ansible tool, as mentioned above.
Finally, due to the hardware required to carry out this project, we will use Virtual Machines (VMs) managed by VirtualBox and Vagrant. However, all the Ansible playbooks
developed in this project will remain usable in case of deploying a Kubernetes cluster directly on physical machines.Traballo fin de grao (UDC.FIC). Enxeñeria informática. Curso 2023/202
Aplicación Web Java para la gestión de una clínica dental
[Resumen]: Mantener una correcta salud bucal es algo fundamental. Los avances tecnológicos en el campo de la odontología permiten a un paciente obtener un tratamiento adecuado a sus necesidades acudiendo a su clínica dental más cercana. Generalmente, cuando un paciente necesite un tratamiento, llamará a la clínica para pedir cita y discutirá una fecha y hora con el personal al otro lado del teléfono. Entre el momento de la llamada y el día de la cita, cabe la posibilidad de que el paciente se confunda de día, o de que el empleado haya apuntado mal la hora en el libro de citas. Los pacientes no disponen de un sistema que les permita consultar sus citas, tanto pasadas como pendientes, y esto puede llevar a confusiones respecto a las fechas y horas programadas y aumentar el riesgo de ausencias o retrasos en las consultas. Este problema no solo afecta al paciente y a su salud bucal, sino que también impacta negativamente en la eficiencia de la clínica y en su horario programado. El objetivo de este proyecto es desarrollar una aplicación web de gestión de citas para una clínica dental y sus pacientes. En ella, el personal de clínica podrá gestionar citas y tratamientos, y los pacientes podrán solicitar citas y consultarlas, disponiendo ambos de acceso a una información común, aunque siguiendo ciertas restricciones. Se trata de una aplicación que complemente los procesos relacionados con la gestión de citas utilizados actualmente dentro de una clínica.
Para realizar el proyecto, se empleará una metodología basada en Scrum. El desarrollo se dividirá en pequeñas tareas realizadas a lo largo de ciclos cortos e iterativos denominados sprints, comprobando al finalizar estos que la aplicación cumple con los requisitos especificados en la planificación. Se utilizarán tecnologías Java para la parte servidor y JavaScript para la parte cliente. La aplicación incluirá también integración con el servicio de Google Calendar, permitiendo crear eventos en el calendario y notificar a los pacientes de sus citas programadas.[Abstract]: Maintaining proper oral health is essential. Technological advances in the field of dentistry allow a patient to go to the nearest dental clinic and obtain treatment appropriate to their needs. Generally, when a patient needs treatment, they will call the clinic to make an appointment and discuss a date and time with the staff on the other end of the phone. Between the moment of the call and the day of the appointment, there is a possibility that the patient confuses the day, or that the employee had written the time incorrectly in the appointment book. Patients do not have a system that allows them to check their appointments, both past and pending, and this can lead to confusion regarding scheduled dates and increase the risk of absences or delays in the arrangements. This problem not only affects the patient and their oral health, but also negatively impacts the clinic’s efficiency and its scheduled time. The goal of this project is to develop an appointment management web application for a dental clinic. In it, clinic staff will be able to manage appointments and treatments, and
patients will be able to request appointments and consult them, both of them having access to common information, although following certain restrictions. It is an application that aims to complement the processes related to appointment management currently used within a clinic. To develop the project, a methodology based on Scrum will be used. The development will be divided into small tasks carried out over short and iterative cycles called sprints, checking at the end of these that the application meets the requirements specified in the planning. Java technologies will be used for the server part and JavaScript for the client part. The application will also include integration with the Google Calendar service, allowing the creation of calendar events and notifying patients of their scheduled appointments.Traballo fin de grao (UDC.FIC). Enxeñaría Informática. Curso 2023/202