[en] The aim of this Master's thesis is to develop an application that allows various analyses of the use and structure of a public transport network. These analyses include consulting the number of passengers on the lines and stops that make up the network, analysing the journeys made between different specific stops or areas covered by the network, visualising significant differences between journeys made by public transport and those made by car, visualising the areas accessible from each stop and calculating routes. In order to achieve this objective, it was first necessary to carry out a preliminary analysis of the functionalities and objectives to be included within the scope of the project, the functional and non-functional requirements that the final product would have to meet, and the feasibility of the project. We then carried out the design, implementation and testing of the application functionalities derived from the previous analysis, following an iterative and incremental software development management methodology. The application was developed using the Java programming language and the Spring Boot development framework to implement a server that exposes a REST API for communication with it. The information storage is managed by a Spring Data JPA, which uses Hibernate's ORM technology to communicate with a PostgreSQL database, while the information related to the journeys made on the transport network is managed by Elasticsearch. Finally, the web client, which contains the application's graphical interface, is implemented using the Vue.js JavaScript development framework.

[gl] O obxectivo deste traballo de fin de mestrado é o desenvolvemento dunha aplicación que permita realizar diferentes análises do uso e estrutura dunha rede de transporte público. Entre estas análises, inclúense a consulta do volume de pasaxeiros nas liñas e paradas que compoñen a rede, a análise das viaxes realizadas entre diferentes paradas concretas ou zonas cubertas pola rede de transporte, a visualización de diferenzas significativas entre as viaxes realizadas empregando o transporte público respecto ao coche, a visualización das áreas accesibles dende cada parada e realizar un cálculo de rutas. Para alcanzar este obxectivo, foi necesario, en primeiro lugar, realizar unha análise previa das funcionalidades e obxectivos a incluír dentro do alcance do proxecto, os requisitos funcionais e non funcionais que o produto final debería cumprir e a viabilidade do proxecto. Posteriormente, levouse a cabo o deseño, a implementación e as probas das funcionalidades da aplicación, derivadas da análise previa realizada, seguindo unha metodoloxía iterativa e incremental para a xestión do desenvolvemento do software. No desenvolvemento da aplicación empregouse a linguaxe de programación Java xunto co framework de desenvolvemento Spring Boot para a implementación dun servidor que expón unha API REST para comunicarse con el. O almacenamento da información é xestionado mediante Spring Data JPA, que utiliza a tecnoloxía ORM de Hibernate para comunicarse cunha base de datos PostgreSQL; por outra banda, a información relativa ás viaxes realizadas sobre a rede de transporte é xestionada mediante Elasticsearch. Por último, o cliente web que contén a interface gráfica da aplicación é implementado utilizando o framework de desenvolvemento JavaScript Vue.js.