Navegación

Búsqueda

Búsqueda avanzada

El autor Javier Criado ha publicado 14 artículo(s):

1 - Mediación semántica A* basada en MDE para la generación de arquitecturas en tiempo de ejecución

Existen aplicaciones software que necesitan ser adaptadas en tiempo de ejecución debido a que los componentes que conforman su arquitectura no representan la configuración óptima. En estos casos, las arquitecturas deben ser reconfiguradas, por ejemplo, a˜nadiendo y eliminando componentes, o modificando las relaciones entre ellos. Este artículo presenta una propuesta para la generación de arquitecturas en tiempo de ejecución. Está enfocado en la descripción del proceso que ocurre desde que existe una definición de arquitectura que hay que resolver, hasta que se genera la mejor configuración que da solución a dicha arquitectura. Para construir dicha configuración, se utilizan técnicas de modelado, mecanismos de trading y un algoritmo de búsqueda A*. Dicho algoritmo hace uso de una heurística basada en la información sintáctica y semántica de los componentes. Como dominio de aplicación, se muestra un caso estudio para la generación de interfaces de usuario.

Autores: Javier Criado / Luis Iribarne / Nicolás Padilla / 
Palabras Clave: A* - Componentes - Heurística - M2M - MDE - Trading

2 - Embedding Widgets-as-a-Service into Dynamic GUI

The service-oriented computing offers an ideal development framework for carrying out business processes related to the dynamic management of component-based web user interfaces. This article proposes an architecture for specification, storage, management and visualization of web user interfaces built from widgets that follow the recommendation of the W3C. It describes a Widgets-as-a-Service (WaaS) approach for interface deployment and a three-level data model for the definition of components that take part in the architecture. In addition, it shows some particularities of the used technology and the implementation developed. To illustrate this proposal, an example of WaaS-based graphical interface developed for the Environmental Information Network of Andalusia (REDIAM) is shown.

Autores: Jesús Vallecillos / Javier Criado / Luis Iribarne / Nicolás Padilla / 
Palabras Clave: architectures - components - GUI - widgets - Wookie - WSDL

3 - AMAD-ATL: A tool for dynamically composing new model transformations at runtime

ATL is one of the most widely used model-to-model transformation languages. Often, software designers and developers using MDE techniques have difficulties executing ATL transformations outside the Eclipse platform. An advantage of implementing these transformations in a standalone way is that they can be used for handling models at runtime. This paper presents a web tool which uses ATL and EMF libraries to provide model transformation and model validation services. These functionalities are used to implement an adaptation process built up from a set of M2M transformations aimed to dynamically generate a new M2M transformation (which does not exist a priori) from a rule repository model. This new transformation is responsible for adapting component-based software systems. The web tool also offers a GUI to test and verify the adaptation process.

Autores: Javier Criado / Diego Rodríguez-Gracia / Luis Iribarne / Nicolás Padilla / 
Palabras Clave: adaptation - ATL - HOT - M2M - MDE - standalone

5 - Creating datasets for data analysis through a cloud microservice-based architecture

Data analysis is a trending technique due to the tendency of analyzing patterns or generating knowledge in different domains. However, it is difficult to know at design time what raw data should be collected, how it is going to be analyzed or which analysis techniques will be applied to data. Service-oriented architectures can be applied to solve these problems by providing flexible and reliable architectures. In this paper, we present a microservice-based software architecture in the cloud with the aim of generating datasets to carry out data analysis. This architecture facilitates acquiring data, which may be located in a data center, distributed, or even on different devices (ubiquitous computing) due to the rise of the IoT. It provides an infrastructure over which multiple developer’ groups can work in parallel on the microservices. These microservices also provide a reliable and affordable adaptability to the lack of specific requirements in some functionalities and the fast evolution and variability of them, due to the fast changing of client needs.

Autores: Antonio Jesús Fernández-García / Javier Criado / Antonio Corral / Luis Iribarne / 
Palabras Clave: architectures - datasets - microservices

6 - Una Aproximación MDA para la Construcción de Componentes COTSgets en Aplicaciones Web

Actualmente, existe una tendencia al desarrollo de aplicaciones web. Muchas de estas aplicaciones se construyen en base a componentes reutilizables, lo que influye considerablemente en el tiempo de desarrollo. En este contexto se enmarca nuestra propuesta. El artículo presenta una solución basada en la ingeniería dirigida por modelos (MDE) para agilizar y facilitar a los desarrolladores la implementación de un tipo de componentes web (llamados COTSgets). Nuestra propuesta consiste en la generación automática de la implementación de estos componentes, en lo que a su estructura y funcionalidad básica se refiere, a partir de un modelo que describe su especificación y mediante la utilización de una transformación modelo-a-texto (M2T). Para dicha implementación se ha seleccionado la incipiente tecnología Polymer.

Autores: Jose A. Asensio / Nicolás Padilla / Javier Criado / Luis Iribarne / 
Palabras Clave: Componentes COTSgets - COScore - Ingeniería Dirigida por Modelos (MDE) - Polymer - Transformación de Modelo a Texto (M2T)

7 - Evaluación automática de modelos aplicando técnicas de MBE

La construcción de modelos, como proceso de abstracción para definir una solución software, es una tarea que requiere ingenieros con cierta experiencia. Por un lado, modelos diferentes pueden ser igual de válidos para describir una misma solución y, por otro lado, disponer de una guía durante el aprendizaje de tareas de modelado puede ayudar a optimizar el proceso de desarrollo. Este artículo describe una propuesta para dar soporte a la evaluación de modelos utilizados durante las fases de análisis y diseño de un desarrollo de software. En particular, nuestro trabajo se aplica en la evaluación de modelos de casos de uso, clases y secuencias, como artefactos principales en la captura de requisitos, la descomposición modular y la descripción de comportamientos, respectivamente. Para evaluar dichos modelos, se ejecuta un conjunto de pruebas unitarias que son creadas automáticamente a partir de modelos de pruebas definidos conforme a un lenguaje específico de dominio.

Autores: Javier Criado / Joaquín Cañadas / Luis Iribarne / 
Palabras Clave: Evaluación - Generación automática de pruebas - Ingeniería Basada en Modelos (MBE) - Transformación Modelo-a-Texto (M2T)

8 - Una propuesta de editor gráfico para el desarrollo de aplicaciones multiplaforma

El Internet de las Cosas (IoT) cubre una gran variedad de dispositivos y tecnologías. Esto permite que se puedan crear aplicaciones muy diversas de IoT, como por ejemplo en el ámbito de las Smart Cities, Smart Agro, Smart Buildings, Smart Home, y Smart Health. Cada uno de estos escenarios requiere que personas y objetos se interconecten. Para llevar a cabo esta tarea, los desarrolladores deben tener un alto grado de conocimiento de los lenguajes de programación que se emplean en cada plataforma y las tecnologías sobre las cuales se ejecutan. El artículo presenta una solución basada en MDE para facilitar a los desarrolladores la implementación de aplicaciones para el IoT, sin necesidad de conocer en profundidad todas las características de los escenarios, ni los lenguajes de programación de cada una de las plataformas.

Autores: Darwin Alulema / Javier Criado / Luis Iribarne / 
Palabras Clave: Ingeniería Dirigida por Modelos (MDE) - Internet de las cosas (IoT) - Lenguaje específico de dominio (DSL) - Sirius

9 - Una arquitectura de microservicios para componentes digitales en la Web de las Cosas

La comunicación entre dispositivos del Internet de las Cosas (IoT) es muy heterogénea y esto provoca que surjan problemas de interoperabilidad e integración entre dispositivos o plataformas. Además, debido al bajo poder de computación de estos dispositivos, es común encontrar cuellos de botella en la comunicación con los mismos.Para solucionar estos problemas, proponemos una arquitectura de microservicios para la gestión de lo que hemos denominado Digital Dices (DD). Los DD son una representación virtual de dispositivos IoT análoga al concepto de Digital Twin, pero incorporando un conjunto de nuevas características que mejoran la gestión de los dispositivos físicos. Los DD pretenden dar solución al problema de la interoperabilidad y el escalado de dispositivos IoT mediante una aproximación holística. Estos elementos proporcionarán una solución que permita la gestión de eventos y un control de entrada/salida utilizando tecnologías web. Por último, pretendemos hacerlos compatibles con los estándares de la Web de las Cosas (WoT) y prepararlos para que formen parte de un sistema Open Data.

Autores: Manel Mena / Javier Criado / Luis Iribarne / Antonio Corral / 
Palabras Clave: Digital Twin - Interoperabilidad - IoT - Microservicios - Open Data - WoT

10 - RESTIoT: A model-based approach for building RESTful web services in IoT systems

In today’s Internet of Things (IoT) world, we face many challenges, such as having an architecture that improves the integration of data coming from several IoT devices and supports an efficient building of systems able to monitor, send and process data in real time. In this sense, we propose a model based on Model-Driven Engineering (MDE) for automatic RESTful web services building in IoT systems. This article introduces a graphical editor and a transformation engine proposed to simplify the creation of RESTful web services related to the operation of IoT hardware nodes (RESTIoT). This approach semi-automatically generates Java code (which uses Spring Boot technology) for web services and Arduino code for IoT nodes controllers.

Autores: Darwin Alulema / Javier Criado / Luis Iribarne / 
Palabras Clave: Domain-Specific Language (DSL) - Internet of Things (IoT) - Model-Driven Engineering (MDE) - web services

11 - A Model-Driven Engineering Approach for the Service Integration of IoT Systems

With the development of IoT devices and web services, the objects of the real world are more interconnected, which allows applications to extend their characteristics in different fields, including industrial or home environments, among other possible examples such as health, trade, transport, or agriculture. However, this development highlights the challenge of interoperability, because devices are heterogeneous and use different communication protocols and different data formats. For this reason, we propose a model for point-to-point integration in three-layer IoT applications: (a) hardware, which corresponds to the physical objects (controller, sensor and actuator), (b) communication, which is the bridge that allows the exchange of data between a MQTT queue and REST web services, and (c) integration, which establishes a sequence of transactions to coordinate the components of the system. For this purpose, a metamodel, a graphic editor and a code generator have been developed that allow the developer to design IoT systems formed by heterogeneous components without having in-depth knowledge of every hardware and software platform. In order to validate our proposal, a smart home scenario has been developed, with a series of sensors and actuators that combined show a complex behavior.

Autores: Darwin Omar Alulema Flores / Javier Criado / Luis Iribarne / António Jesús Fernández-García / Rosa Ayala / 
Palabras Clave: Domain-Specific Language (DSL) - Integration Pattern - Internet of Things (IoT) - Model-Driven Engineering (MDE) - Smart Home - web services

12 - Un lenguaje para definir componentes WoT basados en microservicios

Al trabajar con dispositivos IoT o sistemas ciberfísicos, estos son expuestos por múltiples protocolos diferentes. Su gestión y manejo provocan problemas de usabilidad e integración. Para paliar estos problemas necesitamos encontrar una solución capaz de facilitar la comunicación entre diferentes plataformas y dispositivos. La Web of Things (WoT) propone una serie de interfaces y patrones de interacción entre distintas +ACI-cosas+ACI, as+AO0 como estrategias de implementación. Los componentes software que implementan parte de la especificación establecida por la WoT son lo que se conocen como WoT servients. En el artículo se presenta un lenguaje para la definición de Digital Dices. Un Digital Dice es un WoT servient basado en microservicios inspirado en el concepto de Digital Twin que representa de manera abstracta un dispositivo físico para poder gestionarlo aplicando protocolos y tecnologías web.

Autores: Manel Mena / Javier Criado / Luis Iribarne / 
Palabras Clave: IoT - Microservicios - WoT

13 - Hacia una Plataforma de Gestión Inteligente de Calidad de Aire en Puertos Marítimos

Actualmente, el tráfico rodado y marítimo produce una alta contaminación medioambiental en los puertos marítimos, afectando a las ciudades en las que se integran. En particular, la polución es uno de los problemas más importantes a combatir dado que puede afectar seriamente a la salud y a la calidad de vida tanto del personal portuario y turistas, como de los ciudadanos que viven cerca de los puertos, pudiendo propiciar o empeorar determinadas enfermedades o incluso causar la muerte en determinados grupos de riesgo. Aunque los puertos inteligentes suelen monitorizar la calidad medioambiental, no acometen el envío automatizado de alertas contextuales según las situaciones de interés detectadas en tiempo real ni tampoco proporcionan un repositorio de componentes software sobre calidad del aire que pueda ser reutilizado por otros puertos marítimos que compartan las mismas necesidades. Este artículo presenta un proyecto I+D+i donde se propone una plataforma innovadora, reutilizable y adaptable que permita monitorizar y gestionar, de manera más eficiente y en tiempo real, la calidad de aire en distintos puertos marítimos, así como enviar automáticamente alertas contextuales con objeto de reducir todo lo posible el daño al medio ambiente, a las ciudades en las que se integran, así como a su contexto socioeconómico. Se trata, por tanto, de un proyecto con una contribución innovadora y sostenible hacia la transformación digital de los puertos, aunando los ámbitos de las Ciudades Inteligentes y de la Industria 4.0.

Autores: Juan Boubeta-Puig / Javier Criado / Guadalupe Ortiz / Nicolás Padilla / Alfonso García de Prado / Rosa Ayala / David Corral-Plaza / Antonio Corral / Inmaculada Medina-Bulo / Luis Iribarne / 
Palabras Clave: arquitectura orientada a servicios y dirigida por eventos - calidad del aire - procesamiento de eventos complejos - Puerto inteligente - transformación digital - Web de las Cosas

14 - Una Propuesta para el Descubrimiento de Dispositivos de la Web of Things

El Internet de las Cosas (IoT) está formado por un conjunto de dispositivos heterogéneos, dispositivos con características similares que pueden tener un funcionamiento diferente al ser de distintos fabricantes. La Web de las Cosas (WoT) surgió para solucionar el problema de interoperabilidad entre dispositivos y para facilitar el acceso a través de una capa de abstracción basada en tecnologías web. Independientemente de la tecnología utilizada por los dispositivos, la WoT permite a los desarrolladores crear aplicaciones sin necesidad de comprender el funcionamiento interno de cada dispositivo. Para solucionar el problema de interoperabilidad, la WoT propone el uso de la Thing Description (TD), un documento que describe el dispositivo a partir de sus capacidades de interacción. Para la gestión de los dispositivos, es necesario disponer de un mecanismo para registrar y consultar fácilmente las TD. En este artículo, presentamos un modelo de descubrimiento para la WoT con un comportamiento proactivo (buscando en la red dispositivos IoT definidos por una TD) y reactivo (registrando los dispositivos IoT mediante agentes externos, o por petición de los propios dispositivos).

Autores: Juan Alberto Llopis Expósito / Javier Criado / Luis Iribarne / Juan Boubeta-Puig / Guadalupe Ortiz / 
Palabras Clave: IoT - Servicio de Descubrimiento - WoT