Logo UVA
Logo Escuela
Logo UniEstudio

Plataforma para la gestión de salas de estudio universitarias.

Grado en Ingeniería Informática de Servicios y Aplicaciones
Trabajo Fin de Grado · Curso 2025/2026
Autor: Álvaro Gobernado Garrido
Tutora: Nuria Serrano Nieto
Mockup de la aplicación UniEstudio

Índice Contenidos

Logo UniEstudio
01Problema a resolver
02Propuesta de solución
03Planificación del proyecto
04Diseño general del sistema
05Implementaciones más destacadas
06Uso de inteligencia artificial
07Despliegue
08Conclusiones y mejoras futuras

01 Problema a resolver Contexto

Logo UniEstudio

Las salas de estudio necesitan una gestión más ágil, trazable y accesible.

Alta demanda de puestos en periodos de exámenes
Dificultad para controlar reservas, ausencias e incidencias
Poca visibilidad del estado real de ocupación

Aquí una foto

01 Problema a resolver Deficiencias del proceso actual

Logo UniEstudio

Deficiencias identificadas en la gestión actual del Aulario de Valladolid.

Control basado en papel y tarjetas plastificadas
Consulta de disponibilidad inexistente
Acceso no homogéneo (Android vs iOS vs tarjeta UVa)
Escasa trazabilidad de entradas, salidas y descansos
Gestión manual de incidencias, ausencias y tiempos
Imposibilidad para generar informes fiables de ocupación

02 Propuesta de solución Comparación

Deficiencia 01

Control basado en papel y tarjetas

El sistema actual depende de elementos físicos y del control manual del personal

Solución UniEstudio

Gestión digital centralizada

Universidades, centros, salas, puestos, usuarios y reservas quedan registrados en una plataforma común

02 Propuesta de solución Comparación

Deficiencia 02

Sin disponibilidad inmediata

El estudiante no sabe si hay puestos libres antes de desplazarse al centro

Solución UniEstudio

Consulta de disponibilidad

La app permite seleccionar universidad, centro, sala, fecha y franja horaria para ver puestos disponibles

02 Propuesta de solución Comparación

Deficiencia 03

Acceso no homogéneo

El acceso depende del dispositivo del estudiante, y del centro (algunos piden tarjeta, otros matrícula,...)

Solución UniEstudio

QR temporal de acceso

La aplicación genera códigos QR temporales para validar entrada, salida, descansos y reentrada

02 Propuesta de solución Comparación

Deficiencia 04

Poca trazabilidad

No queda constancia precisa de entradas, salidas, descansos o uso real del puesto

Solución UniEstudio

Registro del ciclo completo

Cada reserva almacena accesos, validación de puesto, salidas, descansos, reentradas y finalización

02 Propuesta de solución Comparación

Deficiencia 05

Incidencias manuales

Retrasos o incumplimientos dependen de revisión manual

Solución UniEstudio

Incidencias automáticas y manuales

El sistema registra incidencias por inicio tarde, no presentado o incumplimiento de descanso

02 Propuesta de solución Comparación

Deficiencia 06

Informes poco fiables

Con una gestión manual es difícil explotar datos reales de ocupación

Solución UniEstudio

Informes de ocupación

El backend genera informes diarios y mensuales en PDF a partir de reservas, accesos e incidencias

03 Planificación del proyecto Enfoque de trabajo

El proyecto se ha organizado como un desarrollo iterativo, dividido en bloques funcionales.

Iteraciones
Cada bloque funcional se analizaba, dividía en tareas, implementaba y probaba antes de pasar al siguiente
Tres subproyectos
API REST, portal de administración y aplicación móvil avanzaron de forma coordinada
Entregas funcionales
Cada sprint cerraba una versión utilizable con nuevas funcionalidades integradas

03 Planificación del proyecto Redmine

Backlog del proyecto: épicas, funcionalidades, tareas y errores
Seguimiento por estados: nueva, en desarrollo, pendiente y cerrada
Estimación de cada tarea mediante Puntos de Caso de Uso
Base para construir la planificación temporal y los diagramas de Gantt

Aquí una foto

03 Planificación del proyecto Estimación de esfuerzo

PCU
Puntos de Caso de Uso como medida relativa del esfuerzo
1
Ajuste menor o corrección puntual
2–3
Tareas sencillas o de complejidad baja/media
5–8
Cambios con impacto en varias partes del sistema
13+
Funcionalidades complejas o con mayor incertidumbre técnica
Escala
Fibonacci modificada: 1, 2, 3, 5, 8, 13, 21, 34 y 89

03 Planificación del proyecto Resultado de la estimación

127
tareas planificadas y desarrolladas
384
Puntos de Caso de Uso totales
370
horas aproximadas de trabajo
6
sprints / versiones funcionales
API UniEstudio
205 PCU
Portal admin
111 PCU
App móvil
67 PCU
General
1 PCU

03 Planificación del proyecto Planificación temporal

V1
13/03 - 27/03
82 PCU
Alta de universidades, solicitudes, acceso al portal y registro inicial en la app
V2
27/03 - 10/04
48 PCU
Personalización por universidad, centros, salas y administradores de centro
V3
10/04 - 24/04
84 PCU
Horarios, descansos, puestos, búsqueda de disponibilidad y creación de reservas
V4
24/04 - 8/05
52 PCU
Acceso mediante QR, validación de puesto, descansos, finalización y cancelación
V5
8/05 - 22/05
72 PCU
Reservas en administración, ocupación, notificaciones, controlador de acceso y suplantación
V6
22/05 - 05/06
46 PCU
Informes, configuración de la app, incidencias, correcciones, sesión única y compilación iOS

03 Planificación del proyecto Diagramas de Gantt

Un Gantt general para visualizar las funcionalidades
Un Gantt específico para el backend
Un Gantt para el portal de administración
Un Gantt para la aplicación móvil
Ir a Redmine

Aquí una foto

04 Diseño general del sistema Visión global

UniEstudio se divide en tres bloques principales.

Aplicación móvil para estudiantes
Portal web para administración
Backend centralizado con API REST y base de datos

Aquí un diagrama

04 Diseño general del sistema Arquitectura lógica

La app móvil y el portal se comunican con el backend mediante HTTP
El backend expone servicios REST y concentra la lógica de negocio
La seguridad y los permisos se validan en el servidor
La persistencia se realiza sobre una base de datos PostgreSQL

Diagrama de arquitectura lógica

04 Diseño general del sistema Modelo de datos: estructura base

UniversidadUniversidad registrada
CentroEstudioCentro asociado a una universidad
CentroEstudioConfiguracionReglas y tiempos del centro
HorarioCentroSemanaHorario habitual semanal
HorarioCentroExcepcionExcepciones de apertura
SalaEstudioSala dentro de un centro

04 Diseño general del sistema Modelo de datos: usuarios y acceso

PuestoEstudioPuesto reservable de una sala
UsuarioAppEstudiante de la aplicación móvil
UsuarioGestionUsuario del portal de administración
CodigoAccesoTemporalCódigo para registro/verificación
DispositivoPushDispositivo para notificaciones
NotificacionAppNotificación interna del usuario

04 Diseño general del sistema Modelo de datos: reservas

ReservaNúcleo del sistema
ReservaAccesoEntradas, salidas y validación
ReservaDescansoDescansos, comida o cena
ReservaIncidenciaIncidencias asociadas
QrAccesoCentroTemporalQR temporal de acceso
SolicitudSolicitud de alta de universidad

05 Implementaciones más destacadas Funcionalidad 1

Aún no he decidido cuáles poner

06 Uso de inteligencia artificial Enfoque

La IA se ha usado como copiloto técnico, no como sustituto del desarrollo.

Ha permitido avanzar más rápido, contrastar decisiones y desbloquear problemas complejos
Ir al proyecto en ChatGPT

06 Uso de inteligencia artificial Por qué ha sido importante

Sin IA, completar este alcance en unos tres meses no habría sido realista
Ha ayudado a entender problemas que, de otra forma, habrían requerido mucho más tiempo de investigación
Ha servido para razonar soluciones, revisar errores y acelerar decisiones técnicas

06 Uso de inteligencia artificial Aplicaciones concretas

Guía para el despliegue real con Docker, proxy inverso, HTTPS y pipelines
Apoyo en el diseño de autenticación JWT, roles y protección de endpoints
Diseño del flujo de generación y validación de códigos QR temporales
Diseño del logo del portal y de la aplicación
Tareas repetitivas y de escaso valor agregado

07 Despliegue del sistema Arquitectura física

UniEstudio se despliega en un entorno real formado por dos Raspberry Pi

El usuario accede desde Internet mediante el dominio público
La Raspberry Pi 4 actúa como proxy inverso y redirige las peticiones
La Raspberry Pi 5 aloja los servicios principales mediante Docker

diagrama de despliegue simplificado

07 Despliegue del sistema Servicios desplegados

PostgreSQL
Base de datos relacional donde se almacena la información persistente del sistema
Backend
API REST desarrollada con Spring Boot, publicada como servicio Docker
Portal admin
Aplicación Angular compilada y servida desde un contenedor NGINX
Ir a API Swagger Ir a GitLab

07 Despliegue del sistema Acceso público y proxy inverso

El portal se publica bajo el dominio admin.uniestudio.info
Las rutas del frontend y de la API se redirigen internamente a la Raspberry Pi 5
El acceso público se protege mediante HTTPS y certificado SSL
Las credenciales y secretos no se guardan en GitLab: se configuran en el servidor

diagrama dominio-proxy-HTTPS-API

07 Despliegue del sistema Diagrama de despliegue

diagrama de despliegue

07 Despliegue del sistema Proceso de despliegue

01
Preparar servidor, carpetas, repositorios y variables de entorno
02
Construir los contenedores con Docker Compose
03
Levantar base de datos, backend y portal de administración
04
Configurar el proxy inverso, DNS y certificado HTTPS
05
Automatizar nuevas versiones mediante GitLab CI/CD y runner local
Ir a Portainer

07 Despliegue del sistema Ventajas del despliegue elegido

Aislamiento
Cada servicio se ejecuta en su propio contenedor, reduciendo conflictos entre dependencias
Reproducible
Docker Compose permite levantar el entorno completo de forma controlada y repetible
Seguro
El proxy inverso centraliza el acceso público y permite exponer solo los servicios necesarios
Escalable
La separación en servicios facilita replicar componentes o moverlos a otros servidores si aumenta la carga

08 Conclusiones y mejoras futuras Conclusión final

UniEstudio ha permitido aplicar de forma integrada lo aprendido durante el grado

Diseño, desarrollo y despliegue de una solución completa
Gestión de un proyecto desde cero: análisis, planificación, diseño, implementación y despliegue
Aprendizaje práctico en despliegue, contenedores e integración continua

08 Conclusiones y mejoras futuras Mejoras más inmediatas

Penalizaciones configurables
Permitir que cada centro defina reglas propias ante incidencias, ausencias o incumplimientos
Publicación en tiendas
Preparar la app para Google Play y App Store con firma, permisos, capturas y políticas
Plano visual de salas
Selección gráfica de puestos sobre el plano real de cada sala de estudio
Integración universitaria
Conectar con autenticación institucional, sistemas CRUE o servicios propios de cada universidad

08 Conclusiones y mejoras futuras Cierre

El resultado es una base funcional, desplegada y preparada para evolucionar hacia un uso real.

Backend, portal de administración y aplicación móvil integrados
Proceso de desarrollo apoyado en planificación, versiones e integración continua
Proyecto útil para consolidar conocimientos técnicos y de gestión
Logo UVA
Logo Escuela
Logo UniEstudio

Plataforma para la gestión de salas de estudio universitarias.

Gracias por vuestra atención
Álvaro Gobernado Garrido
Trabajo Fin de Grado · Curso 2025/2026
Mockup de la aplicación UniEstudio
1 / 2