{"id":386,"date":"2021-09-19T21:56:13","date_gmt":"2021-09-19T19:56:13","guid":{"rendered":"http:\/\/www.unioviedo.es\/observatorioHP\/?page_id=386"},"modified":"2021-09-20T09:26:57","modified_gmt":"2021-09-20T07:26:57","slug":"realtimemetrics","status":"publish","type":"page","link":"https:\/\/www.unioviedo.es\/observatorioHP\/index.php\/propuestastfg\/curso-2021-2022\/realtimemetrics\/","title":{"rendered":"RealTimeMetrics: Creaci\u00f3n de una infraestructura de registro, consulta y visualizaci\u00f3n de m\u00e9tricas"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Descripci\u00f3n del proyecto y objetivo a conseguir<\/h2>\n\n\n\n<p>Hoy en d\u00eda, en las aplicaciones software, incluso aplicaciones cl\u00e1sicas de escritorio o aplicaciones embebidas, resulta cada vez m\u00e1s com\u00fan la interacci\u00f3n de \u00e9stas con Internet, ya sea para acceder a recursos que necesita la aplicaci\u00f3n o para enviar datos o informaci\u00f3n.<\/p>\n\n\n\n<p>A trav\u00e9s de la exposici\u00f3n en Internet de APIs web, las aplicaciones software solicitan datos en muchas ocasiones, y en otras, env\u00edan informaci\u00f3n acerca de diferentes \u00e1mbitos. Un caso real concreto son los reportes de informaci\u00f3n acerca de la ejecuci\u00f3n de la aplicaci\u00f3n (logs con informaci\u00f3n, warnings o errores que se producen en la misma). Una vez esta informaci\u00f3n llega a la API web, es responsabilidad de ella gestionarla. Esto puede realizarse de m\u00faltiples maneras: ya sea como simple reenv\u00edo contra otra API web, tratamiento de la informaci\u00f3n (almacenamiento en una base de datos, por ejemplo), o notificaci\u00f3n de que ha llegado un nuevo evento y es necesario avisar a un cliente web de que tenemos un nuevo reporte. Para visualizar todo lo anterior, existe normalmente un dashboard. Este caso real es el que se quiere llevar a cabo con este Trabajo Fin de Grado.<\/p>\n\n\n\n<p>Mediante la implementaci\u00f3n de una aplicaci\u00f3n web conectada a una base datos, \u00e9sta ser\u00e1 la encargada de recibir informaci\u00f3n de un n\u00famero de clientes indefinidos y ser\u00e1 capaz de gestionar la informaci\u00f3n que le llega, el almacenamiento en base de datos y la notificaci\u00f3n a un n\u00famero de clientes nuevamente indefinidos de que tienen que actualizar su vista, dado que se presentan nuevos reportes.<\/p>\n\n\n\n<p>La infraestructura que ser\u00e1 necesaria llevar a cabo permitir\u00e1 distribuir una colecci\u00f3n de m\u00e9todos, en una librer\u00eda aparte, para que los diferentes clientes puedan contactar con la API web, de tal forma que los programas cliente simplemente deber\u00e1n llamar a los m\u00e9todos para notificar a la API web que desean reportar nueva informaci\u00f3n. Adem\u00e1s, la API web ser\u00e1 la encargada de notificar a los clientes que se encuentren subscritos que el frontend ha de cambiar, dado que en tiempo real se han recibido nuevos datos. <\/p>\n\n\n\n<p>Para llevar a cabo el TFG se utilizar\u00e1n frameworks como .NET 5\/6 para la creaci\u00f3n de la API web, ORMs como EF Core para la conexi\u00f3n y el modelaje de la base de datos utilizando t\u00e9cnicas de \u201ccode first\u201d, frameworks como Angular para la construcci\u00f3n del cliente (dashboard) que recibir\u00e1 notificaciones de la API web, y finalmente tecnolog\u00edas como SignalR que permiten comunicar cliente-servidor con notificaciones as\u00edncronas enviando informaci\u00f3n en tiempo real.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Funciones a realizar<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Investigar las tecnolog\u00edas que se usar\u00e1n.<\/li><li>Desarrollar el an\u00e1lisis, dise\u00f1o, implementaci\u00f3n, pruebas y puesta en funcionamiento de la aplicaci\u00f3n.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Tecnolog\u00edas a utilizar<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>.Net<\/li><li>ASP.NET<\/li><li>SignalR<\/li><li>Angular<\/li><li>EFCore<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Palabras clave<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Web services, Web development, Real time, Dashboards<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Tutores<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Javier Carracedo Esteban, Rafael Mor\u00e1n Bautista (HP SCDS)<\/li><li>Raquel Blanco Aguirre (Universidad de Oviedo)<\/li><\/ul>\n\n\n\n<p><a href=\"http:\/\/www.unioviedo.es\/observatorioHP\/index.php\/propuestastfg\/curso-2021-2022\/\">Volver al listado<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Descripci\u00f3n del proyecto y objetivo a conseguir Hoy en d\u00eda, en las aplicaciones software, incluso aplicaciones cl\u00e1sicas de escritorio o aplicaciones embebidas, resulta cada vez m\u00e1s com\u00fan la interacci\u00f3n de \u00e9stas con Internet, ya sea para acceder a recursos que necesita la aplicaci\u00f3n o para enviar datos o informaci\u00f3n. A trav\u00e9s de la exposici\u00f3n en &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.unioviedo.es\/observatorioHP\/index.php\/propuestastfg\/curso-2021-2022\/realtimemetrics\/\" class=\"more-link\">Continuar leyendo<span class=\"screen-reader-text\"> \u00abRealTimeMetrics: Creaci\u00f3n de una infraestructura de registro, consulta y visualizaci\u00f3n de m\u00e9tricas\u00bb<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":392,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-386","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.unioviedo.es\/observatorioHP\/index.php\/wp-json\/wp\/v2\/pages\/386","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.unioviedo.es\/observatorioHP\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.unioviedo.es\/observatorioHP\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.unioviedo.es\/observatorioHP\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.unioviedo.es\/observatorioHP\/index.php\/wp-json\/wp\/v2\/comments?post=386"}],"version-history":[{"count":3,"href":"https:\/\/www.unioviedo.es\/observatorioHP\/index.php\/wp-json\/wp\/v2\/pages\/386\/revisions"}],"predecessor-version":[{"id":401,"href":"https:\/\/www.unioviedo.es\/observatorioHP\/index.php\/wp-json\/wp\/v2\/pages\/386\/revisions\/401"}],"up":[{"embeddable":true,"href":"https:\/\/www.unioviedo.es\/observatorioHP\/index.php\/wp-json\/wp\/v2\/pages\/392"}],"wp:attachment":[{"href":"https:\/\/www.unioviedo.es\/observatorioHP\/index.php\/wp-json\/wp\/v2\/media?parent=386"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}