|
Grado en Ingeniería Informática |
TRABAJOS FIN DE GRADO curso: 2023-24
Implementación de una interfaz de usuario para Fiware. |
Tecnologías Específicas
Ingeniería del Software Tecnologías de la Información
Descripcion y Objetivos
Fiware es una plataforma de gestión de la IoT que proporciona un “backend”, de código abierto, para la gestión de sensores y actuadores, así como para el almacenamiento y tratamiento de los datos que estos generan. Una de las principales características de esta plataforma es que utiliza modelos de datos y APIs que siguen el estándar NGSI-LD. Lo que permite el intercambio de información, de forma estructurada, entre diferentes entidades.
Fiware no implementa ninguna interfaz de usuario (UI), para realizar la gestión de los dispositivos y datos. Ni tampoco ofrece ningún “dashboard”, dónde representar y analizar los datos obtenidos. Lo que sí ofrece es una REST API para realizar dichas acciones de gestión, y el acceso al histórico de los datos.
Por ello, se hace necesario la especificación e implementación de una UI lo más genérica posible, que permita la gestión básica de dispositivos, así como la representación de los datos proporcionados por los mismos.
Objetivos:
El objetivo general del TFG será el diseño, desarrollo e implementación de una interfaz de usuario (UI) que permita la gestión de dispositivos y la representación de datos gestionados por Fiware. El desarrollo de la UI se realizará en Angular, y deberá tener, como mínimo, la siguiente funcionalidad:
-
Funciones CRUD de sensores / actuadores.
-
Representación gráfica, en distintos formatos, de los datos generados por sensores / actuadores.
-
Exportación/importación de las configuraciones realizadas en la UI.
Metodología y Competencias
En un principio se definen las siguientes fases en el plan de trabajo:
-
Estudio de la plataforma Fiware
-
Estudio de Angular
-
Diseño de la interfaz de usuario
-
Desarrollo de la interfaz de usuario.
-
Despliegue del prototipo y prueba de su funcionamiento.
-
Evaluación de usabilidad del sistema
Competencias.
-
[CO1] Capacidad para diseñar, desarrollar, seleccionar y evaluar aplicaciones y sistemas informáticos, asegurando su fiabilidad, seguridad y calidad, conforme a principios éticos y a la legislación y normativa vigente.
-
[CO7] Conocimiento, diseño y utilización de forma eficiente de los tipos y estructuras de datos más adecuados para la resolución de un problema.
-
[CO8] Capacidad para analizar, diseñar, construir y mantener aplicaciones de forma robusta, segura y eficiente, eligiendo el paradigma y los lenguajes de programación más adecuados.
-
[CO11] Conocimiento y aplicación de las características, funcionalidades y estructura de los Sistemas Distribuidos, las Redes de Computadores e Internet y diseñar e implementar aplicaciones basadas en ellas.
-
[CO12] Conocimiento y aplicación de las características, funcionalidades y estructura de las bases de datos, que permitan su adecuado uso, y el diseño y el análisis e implementación de aplicaciones basadas en ellos.
-
[CO13] Conocimiento y aplicación de las herramientas necesarias para el almacenamiento, procesamiento y acceso a los Sistemas de información, incluidos los basados en web.
-
[CO12] Conocimiento y aplicación de las características, funcionalidades y estructura de las bases de datos, que permitan su adecuado uso, y el diseño y el análisis e implementación de aplicaciones basadas en ellos.
-
[CO13] Conocimiento y aplicación de las herramientas necesarias para el almacenamiento, procesamiento y acceso a los Sistemas de información, incluidos los basados en web.
-
[TI3] Capacidad para emplear metodologías centradas en el usuario y la organización para el desarrollo, evaluación y gestión de aplicaciones y sistemas basados en tecnologías de la información que aseguren la accesibilidad, ergonomía y usabilidad de los sistemas.
-
[IS3] Capacidad de dar solución a problemas de integración en función de las estrategias, estándares y tecnologías disponibles.
-
[IS4] Capacidad de identificar y analizar problemas y diseñar, desarrollar, implementar, verificar y documentar soluciones software sobre la base de un conocimiento adecuado de las teorías, modelos y técnicas actuales.
-
[TI6] Capacidad de concebir sistemas, aplicaciones y servicios basados en tecnologías de red, incluyendo Internet, web, comercio electrónico, multimedia, servicios interactivos y computación móvil.
-
[TI7] Capacidad para comprender, aplicar y gestionar la garantía y seguridad de los sistemas informáticos.
Medios a utilizar
Hardware:
Software:
-
Docker
-
Fiware
-
Angular framework
-
Un navegador web.
-
MongoDB.
-
Postman / curl
Bibliografía
Tutores DELICADO MARTÍNEZ, FRANCISCO MANUEL TESORIERO, RICARDO | Alumno GUIJA CALERO, VANESA
|
| |