TAZ-TFG-2016-1809


Sistema de gestión de geofences

Ibáñez Vásquez, Eduardo
Zarazaga Soria, Francisco Javier (dir.)

Universidad de Zaragoza, EINA, 2016
Informática e Ingeniería de Sistemas department, Lenguajes y Sistemas Informáticos area

Graduado en Ingeniería Informática

Abstract: El proyecto consiste en implementar un sistema de gestión de geofences. Un geofence es un perímetro virtual de un área geográfica del mundo real. El sistema debe ser capaz de crear, modificar, obtener y borrar geofences. Del mismo modo, debe de poder realizar las mismas acciones para usuarios, reglas de comportamiento que tienen asociados los geofences y notificaciones generadas al cumplir las reglas. Además, el sistema debe poder gestionar la posición enviada por el usuario, de forma que se encargue de la generación de las notificaciones en caso de que la localización recibida se encuentre dentro de un geofence, habiendo satisfecho alguna regla del mismo. En el proyecto se han identificado cuatro recursos principales, usuarios, geofences, reglas y notificaciones, para los que se han desarrollado servicios web que siguen el estilo de arquitectura REST con el módulo Spring Web. Mientras que para el servicio relativo a la gestión de la posición, se emplea la tecnología WebSockets, que es una tecnología estándar que proporciona un canal de comunicación bidireccional y full-duplex sobre un único socket TCP. Para el almacenamiento de los datos se emplea la base de datos PostgreSQL/PostGIS, que es una base de datos relacional con un módulo que ofrece soporte para objetos espaciales, necesario en el sistema para poder guardar la geometría de los geofences. Para la creación de las tablas se ha empleado Hibernate Spatial, que es una herramienta que facilita el mapeo de atributos entre una base de datos relacional tradicional y el modelo de objetos de una aplicación, siendo también capaz de reconocer estos objetos espaciales que deben seguir el estándar SFA, es decir, Simple Feature Access. También se han diseñado un par de aplicaciones web desplegadas en distintos servidores de presentación para comprobar el correcto funcionamiento de los servicios web del sistema, es decir, que utilizan la API del sistema. Toda la comunicación del sistema se encuentra bajo supervisión de un control de accesos, que se encarga de permitir o denegar los servicios web del sistema, dependiendo de los requerimientos de seguridad establecidos para cada funcionalidad. Además, se ha mejorado la configuración de la seguridad que implementa por defecto Spring Security, añadiendo la autenticación por medio de JSON Web Tokens, que sigue el estándar industrial RFC 7519 para representar peticiones seguras entre el cliente y el servidor. Por último, se ha ejecutado una batería de pruebas unitarias, de sistema y de integración con el fin de depurar errores y mejorar el código del proyecto.

Tipo de Trabajo Académico: Trabajo Fin de Grado

Creative Commons License

El registro pertenece a las siguientes colecciones:
Academic Works > Trabajos Académicos por Centro > escuela-de-ingeniería-y-arquitectura
Academic Works > End-of-grade works



Back to search

Rate this document:

Rate this document:
1
2
3
 
(Not yet reviewed)