El autor Vicente Pelechano ha publicado 17 artículo(s):
Context:Leveraging machine learning techniques to address feature location on models has been gaining attention. Machine learning techniques empower software product companies to take advantage of the knowledge and the experience to improve the performance of the feature location process. Most of the machine learning-based works for feature location on models report the machine learning techniques and the tuning parameters in detail. However, these works focus on the size and the distribution of the data sets, neglecting the properties of their contents.Objective:In this paper, we analyze the influence of three model fragment properties (density, multiplicity, and dispersion) on a machine learning-based approach for feature location.Method:The analysis of these properties is based on an industrial case provided by CAF, a worldwide provider of railway solutions. The test cases were evaluated through a machine learning technique that uses different subsets of a knowledge base to learn how to locate unknown features.Results:Results show that the density and dispersion properties have a direct impact on the results. In our case study, the model fragments with extra-small density values achieve results with up to 43+ACU more precision, 41+ACU more recall, 42+ACU more F-measure, and 0.53 more Matthews Correlation Coefficient (MCC) than the model fragments with other density values. On the other hand, the model fragments with extra-small and small dispersion values achieve results with up to 53+ACU more precision, 52+ACU more recall, 52+ACU more F-measure, and 0.57 more MCC than the model fragments with other dispersion values.Conclusions:The analysis of the results shows that both density and dispersion properties significantly influence the results. These results can serve not only to improve the reports by means of the model fragment properties, but also to be able to compare machine learning-based feature location approaches fairly improving the feature location results.
Autores: Manuel Ballarín / Ana Cristina Marcén / Vicente Pelechano / Carlos Cetina /
Palabras Clave: Feature location - Learning to Rank - Machine Learning - Model Fragment Location
Los sistemas autónomos (SA) están diseñados para actuar de forma autónoma en gran parte de su trabajo; sin embargo, la autonomía completa es una utopía a medio y corto plazo. Este hecho hace necesario que el humano ayude a completar su funcionalidad (‘human-in-the-loop’). Este tipo de sistemas deben garantizar en todo momento un correcto funcionamiento autónomo, a la vez que de-be ceder, bajo ciertas condiciones, total o parcialmente el control al humano para la realización de algunas tareas. Esto requiere analizar y diseñar los siste-mas para que involucren al humano de forma adecuada ante situaciones donde no es posible alcanzar la autonomía, procurando garantizar una correcta integración humano-sistema. En este trabajo se proporcionan las bases para analizar y diseñar las interacciones humano-sistema. En este artículo se presenta un análisis que permite identificar los aspectos esenciales de la participación del humano en el SA y se propone una técnica para especificar como integrar el humano y el sistema en las primeras fases de desarrollo. Los coches autónomos se toman como ejemplo para ilustrar la propuesta mediante escenarios reales.
Autores: Miriam Gil / Manoli Albert / Joan Fons / Vicente Pelechano /
Palabras Clave: Coches Autónomos - Human in the Loop - Interacción Humano-Sistema - Sistemas Autónomos
La colaboración humano-sistema es un modelo de trabajo que permite combinar conocimientos y habilidades de humanos y máquinas. El objetivo de esta colaboración es superar situaciones complejas y garantizar una forma de trabajo adecuada y confiable. Para lograr una colaboración humano-sistema efectiva y eficiente, los sistemas deben ser transparentes, comprensibles y confiables para los humanos. Las explicaciones que el sistema ofrece a los humanos son mecanismos clave para lograr este tipo de sistemas. Sin embargo, el diseño de las explicaciones plantea una serie de desafíos en cuanto a las características que deben tener estas. Por ejemplo, ¿cuál es el contenido necesario para la explicación? ¿en qué momento se debe dar? ¿debe ser muy intrusiva para captar la atención del usuario?. En este trabajo, proponemos un modelo conceptual para caracterizar las explicaciones y, en base a este modelo conceptual, se construye un sistema que infiere las características que debe tener la explicación a ofrecer de acuerdo a la acción a explicar, el contexto del usuario y su perfil. En este trabajo, nos centramos en el dominio de la Smart Home, pero el enfoque es extrapolable a otros dominios.
Autores: Antoni Mestre / Miriam Gil / Manoli Albert / Jose Ignacio Panach Navarrete / Vicente Pelechano /
Palabras Clave: Aprendizaje automático - diseño centrado en el usuario - Explicaciones - modelo de características - nivel de atención - Sistemas Autónomos - tareas humano-sistema
Nowadays, end-users’ environment is plenty of services that support their life style, and involving them in the process of service creation can allows them to benefit from a cheaper, faster, and better service provisioning. There are already tools targeted to the authoring and
consumption of services. However these tools consider end-users as isolated individuals, missing the potential that their social environment can bring to them. In this paper, we investigate how social networks can be used to improve the authoring and consumption of services by end-users. We propose a social network of service compositions as a valuable
mechanism to share knowledge among end-users in order to improve their skills in composing new services. In addition, we analyse the underlying relationships created among service compositions in order to provide end-users with an intuitive way of browsing them.
Autores: Pedro Valderas / Victoria Torres / Vicente Pelechano /
Palabras Clave:
Estamos entrando gradualmente en la era de los sistemas que pretenden dotar de capacidades de computación autónoma a servicios cotidianos. La búsqueda de la autonomía completa es un reto que se está persiguiendo en diversos ámbitos de aplicación y sectores industriales. Sin embargo, la realidad es que la variedad de sistemas, dominios, entornos y contextos de ejecución, restricciones legales y sociales, hace vislumbrar un mundo donde esta autonomía completa será una utopía a corto y medio plazo. En los escenarios en que el sistema autónomo no pueda automatizar completamente sus tareas, se requerirá pues de la participación humana. Desde un punto de vista ingenieril la colaboración entre el humano y estos sistemas (Human in the Loop) introduce un considerable número de retos y problemas a resolver. En este trabajo se identifican los retos tecnológicos que introduce esta colaboración humano-sistema, y se define un marco conceptual que identifica los aspectos a considerar desde un punto de vista abstracto e ingenieril.
Autores: Vicente Pelechano / Miriam Gil / Joan Fons / Manoli Albert /
Palabras Clave: Human in the Loop - Interacción Hombre-Máquina - Marco Conceptual - Sensibilidad al contexto - Sistemas Autónomos
With the advent of Web 2.0 and the massive adoption of smartphones, end-users are more keen to actively participate in the creation of content for the Internet. In addition, the big amount of data that the Internet of Things can bring to it, establishes an ideal framework to allow end-users not just consuming data but also creating new valueadded services. To achieve this, in this work we propose the development of an end-user tool for smartphones capable of composing services that are available in the Internet.
Autores: Ignacio Mansanet / Victoria Torres / Pedro Valderas / Vicente Pelechano /
Palabras Clave:
Although end-users have available a lot of on-line services to be con- sumed individually, it is their composed usage what has the potential to create new value-added services for end-users. In this sense, many efforts have been done to allow end-users to compose the services that they need by themselves. However, most of these solutions present two main problems: (1) they provide little support to help end-users to browse interminable lists of services, and (2) they present the blank piece of paper problem, which appears when end-users have to face an empty canvas to define a composition without any help to find the services that better fit their needs. In this paper, we present a solution to im- prove these problems by using natural language processing techniques in order to search and select the services end-users need to accomplish a specific goal. This solution has been implemented in the context of the EUCalipTool platform.
Autores: Pedro Valderas / Victoria Torres / Vicente Pelechano /
Palabras Clave: Mobile authoring Tool - Natural Language Processing - Service Selection and Composition
La auto-adaptación se está convirtiendo en un requisito indispensable en los sistemas software. Los sistemas auto-adaptables son capaces de adaptar dinámicamente su comportamiento y estructura en ejecución en respuesta a variaciones en el sistema y el entorno. Los enfoques actuales de auto-adaptación tienden a asumir un mundo cerrado, en el que todos los fenómenos de interés son previstos en tiempo de diseño. Sin embargo, algunos comportamientos adaptativos no se pueden prever a priori. En este ámbito, se requieren técnicas que den soporte a la evolución en tiempo de ejecución de sistemas auto-adaptables. Este artículo propone una aproximación dirigida por modelos para desarrollar y evolucionar de forma sistemática sistemas auto-adaptables mientras están en ejecución. Específicamente, la aproximación utiliza Modelos en Tiempo de Ejecución para incorporar nuevas capacidades que no fueron previstas en el diseño inicial del sistema.
Autores: María Gómez / Joan Fons / Vicente Pelechano /
Palabras Clave: Adaptación Dinámica - evolución - Modelos en Tiempo de Ejecución
Las arquitecturas de microservicios ofrecen un enfoque para la ingeniería de sistemas complejos y distribuidos en donde la escalabilidad y disponibilidad de las soluciones es un factor crítico.En la última década han surgido herramientas (orquestadores) orientadas a monitorizar y mantener de manera automática estas infraestructuras para garantizar la calidad del servicio.Sin embargo, estos orquestadores no están diseñados para gestionar automáticamente cambios arquitectónicos sobre la configuración de servicios, necesarios bajo ciertas condiciones operativas.Este trabajo promueve la aplicación de la computación autónoma (a través del uso de bucles de control) como estrategia para la reconfiguración dinámica de arquitecturas de microservicios.Para ello, se introduce el concepto de servicio adaptive-ready, como un microservicio que ofrece un contrato de adaptación diseñado ser usado por los bucles de control.Para ejemplificar la propuesta se utiliza un caso de estudio real en el que se aplican estos principios para desarrollar el sistema informático de una fábrica de producción industrial.Se han diseñado e implementado un conjunto de servicios ‘adaptive-ready’ y se ha desplegado una arquitectura de microservicios reconfigurable sobre kubernetes.
Autores: Joan Fons / Vicente Pelechano / Manoli Albert / Miriam Gil /
Palabras Clave: Arquitecturas de microservicios - Computación Autónoma - Reconfiguración arquitectónica - servicios web
JCIS_2015_submission_10The Internet of Things (IoT) offers a new eco-system of heterogeneous and distributed services that is available anytime and anywhere and that can be potentially accessed by any properly connected device. However, these available services are usually consumed in isolation, missing the potential that their combined usage can bring as new added-value services. In addition, the massive end-user adoption and usage of smartphones together with their powerful capabilities turn this type of devices into a promising platform to develop and execute these added-value services compositions. Moreover, end-users are nowadays getting more and more familiar with technology, fact that allows them to participate more actively in the development of new types of applications. However, this will not happen until we provide end-users with more powerful and easy-to-use tools. To this end, this paper presents an architectural solution to allow end-users building IoT services compositions by just focusing on domain-logic issues.
Autores: Ignacio Mansanet / Victoria Torres / Pedro Valderas / Vicente Pelechano /
Palabras Clave: End-user Development - IoT - Service Compositions
This paper faces the challenge of defining a microservice composition approach that provides the benefits of orchestration and choreography composition mechanisms. The main goal is to provide a solution that allows developers to have a centralized model that describes the big picture of a microservice composition and also to have the possibility of executing the composition defined in this model through an event-based choreography. The modeling language used to create such centralized model is the one provided by the BPMN process diagram. In particular, we introduce a proposal that provides the possibility of 1) defining the microservice composition in a BPMN model to have the big picture of the whole composition, which facilitates further analysis and maintenance when requirements change, and 2) executing the BPMN model by following an event-based choreography to provide a high degree of decoupling and independence to implement and maintain microservices. To this end, the paper presents (1) a set of guidelines to create microservice compositions in BPMN models, split them into fragments, and distribute these fragments among microservices to be executed through an event-based choreography, (2) a microservice architecture defined to support the coexistence of the two descriptions of a composition (i.e., the big picture and the split one), and (3) tool support in order to implement the proposed microservice architecture in Java/Spring technology.
Autores: Pedro Valderas / Victoria Torres / Vicente Pelechano /
Palabras Clave: BPMN - Choreography - composition - microservices
Context: Cyber-Physical Systems (CPSs) are gradually and widely introducing autonomous capabilities into everything. However, human participation is required to accomplish tasks that are better performed with humans (often called human-in-the-loop). In this way, human-in-the-loop solutions have the potential to handle complex tasks in unstructured environments, by combining the cognitive skills of humans with autonomous systems behaviors.Objective: The objective of this paper is to provide appropriate techniques and methods to help designers analyze and design human-in-the-loop solutions. These solutions require interactions that engage the human, provide natural and understandable collaboration, and avoid disturbing the human in order to improve human experience.Method: We have analyzed several works that identified different requirements and critical factors that are relevant to the design of human-in-the-loop solutions. Based on these works, we have defined a set of design principles that are used to build our proposal. Fast-prototyping techniques have been applied to simulate the designed human-in-the-loop solutions and validate them.Results: We have identified the technological challenges of designing human-in-the-loop CPSs and have provided a method that helps designers to identify and specify how the human and the system should work together, focusing on the control strategies and interactions required.Conclusions: The use of our approach facilitates the design of human-in-the-loop solutions. Our method is practical at earlier stages of the software life cycle since it allows domain experts to focus on the problem and not on the solution.
Autores: Miriam Gil / Manoli Albert / Joan Fons / Vicente Pelechano /
Palabras Clave: Cyber-Physical Systems - Human in the Loop - Human-System interactions - Model-Driven Development
Autores: Miriam Gil / Vicente Pelechano / Joan Fons / Manoli Albert /
Palabras Clave:
Increasingly, software needs to dynamically adapt its behavior at runtime in response to changing conditions in the supporting computing, communication infrastructure, and in the surrounding physical environment [6]. Self-adaptive software systems are able to reconfigure at run-time to adapt to changes. The implementation of ad-hoc solutions to cover all possible system configurations and reconfigurations is not feasible. Dynamic Software Product Lines (DSPLs) provide a systematic basis for the engineering of selfadaptive systems [4]. A key characteristic in DSPLs is the intensive use of variability at run-time in order to adapt the system configuration caused by an environment change. Following this approach, a self-adaptive system can be seen as a family of feasible system configurations with a mechanism to move from one configuration to another. The development of self-adaptive systems involves great complexity and becomes a tedious task. We propose Moskitt4SPL (M4SPL) an open-source tool to ease the development of self-adaptive systems. In this tool, we combine model-driven and DSPLs to better cope with the complexities during the construction of self-adaptive systems. M4SPL can be used for modeling systems which make use of variability at run-time in order to adapt the system configuration caused by an environment change. M4SPL provides edition capabilities for Feature Models, Configuration Models and Resolution Models which are part of a self-adaptive system specification. Furthermore, M4SPL incorporates a series of refinements to automatically ensure interesting behavior issues in adaptation specifications. Dealing with those issues before execution is essential for reliable selfadaptive systems that fulfill many of the user’s needs. M4SPL can be used standalone as an Eclipse plug-in or integrated in the MDE MOSKitt environment.
Autores: María Gómez / Ignacio Mansanet / Joan Fons / Vicente Pelechano /
Palabras Clave:
The construction of Business Process (BP) models entails big challenges, especially when BPs contain many variations. In addition, BPs can be seen from different perspectives, i.e., the behavioral (i.e., control-flow), the organizational (i.e., resources distribution), or the informational (data-flow) perspectives among others. Depending on the context where the BP is taken place, we may found variability in any of these perspectives. Different approaches to model variability in BP perspectives have already been proposed. However, these approaches are highly tight to the modeling language. In addition, they focus mainly on the behavioral perspective. To deal with variability in other BP perspectives in a more flexible manner, this work proposes an approach based on feature models. These models do not only allow enhancing expressiveness regarding BP variability, but also the maintenance and understanding of the resulting process model.
Autores: Clara Ayora / Victoria Torres / Vicente Pelechano /
Palabras Clave: Business Process Modeling - Business Process Variability - Feature Models
Microservices must be composed to provide users with complex and elaborated functionalities. According to the decentralized nature of micro-services, choreographies is the most appropriate style to achieve such com-position. However, this style forces to distribute the flow logic of the com-position among the participating microservices making difficult its analysis and update. The Business Process Model and Notation (BPMN) provides a graphical notation widely used in academia and industry to specify business processes. Within the microservice composition context, this notation can be used to create the big picture of such compositions. However, this notation is usually considered in orchestration-based solutions, and orchestration can be a drawback to achieve the decoupling pursued by a microservice architecture. Therefore, in this demo paper we present the architectural solution and its realization in Java/Spring technology to support an approach that allows defining a microservice composition keeping the benefits of both composition mechanisms, i.e., orchestration and choreography. Specifically, the supporting tool allows 1) defining the microservice com-position in a BPMN model to have the big picture of the whole composition, which facilitates further analysis and maintenance when requirements change, and 2) splitting this BPMN model into fragments that are distributed among microservices in order to be executed by following an event-based choreography of BPMN fragments, which provide a high degree of de-coupling and independence to implement and maintain microservices. This composition approach is supported by a microservice architecture defined to achieve that both descriptions of a composition (big picture and split one) coexist.
Autores: Pedro Valderas / Victoria Torres / Vicente Pelechano /
Palabras Clave: Architecture - BPMN - Choreography - composition - microservices