Búsqueda avanzada

El autor Javier Troya ha publicado 15 artículo(s):

2 - ARTICULO RELEVANTE: Metamorphic Testing of RESTful Web APIs

S. Segura, J. A. Parejo, J. Troya and A. Ruiz-Cortés, «Metamorphic Testing of RESTful Web APIs» in IEEE Transactions on Software Engineering, Oct 2017 (online) vol. PP, no. 99, pp. 1-1. para ser presentado en ICSE 2018 en la categoría de journal-first: lecturas en ResearchGate desde su publicación (118 en IEEE Xplore).

Autores: Sergio Segura / José Antonio Parejo Maestre / Javier Troya / Antonio Ruiz-Cortés / 
Palabras Clave: metamorphic testing - oracle problem - Web APIs

3 - Introducing Approximate Model Transformations

Model transformations dealing with very large models need to count on mechanisms and tools to be able to manage them. The usual approach to improve performance in these cases has focused on the use of concurrency and parallelization techniques, which aim at producing the correct output model(s). In this paper we present our initial approach to produce target models that are accurate enough to provide meaningful and useful results, in an efficient way, but without having to be fully correct. We introduce the concept of Approximate Model Transformations.

Autores: Javier Troya / Antonio Vallecillo / 
Palabras Clave: Approximation - Model Transformation - Performance

4 - Prototyping Component-Based Self-Adaptive Systems with Maude

Software adaptation is becoming increasingly important as more and more applications need to dynamically adapt their structure and behavior to cope with changing contexts, available resources and user requirements. Maude is a high-performance reflective language and system, supporting both equational and rewriting logic specification and programming for a wide range of applications. In this paper we describe our experience in using Maude for prototyping component-based self-adaptive systems so that they can be formally simulated and analyzed. In order to illustrate the benefits of using Maude in this context, a case study in the robotics domain is presented.

Autores: Juan F. Inglés-Romero / Cristina Vicente-Chicote / Javier Troya / Antonio Vallecillo / 
Palabras Clave: component-based architecture - Maude - prototyping - Self-Adaptation

5 - Modular DSLs for flexible analysis: An e-Motions reimplementation of Palladio (High-level Work)

We summarize the main contributions of the work [11] presented in the Modelling Foundations and Applications – 10th European Conference, ECMFA 2014. In [11], we addressed some of the limitations for extending and validating implementations of Non Functional Properties (NFP) analysis tools by presenting a modular, model-based partial reimplementation of one well-known analysis framework, namely the Palladio Architecture Simulator. We specified the key DSLs from Palladio in the e-Motions system, describing the basic simulation semantics as a set of graph transformation rules. Different properties to be analyzed are then encoded as separate, parameterized DSLs, independent of the definition of Palladio. These can then be composed with the base Palladio DSL to generate specific simulation environments. Models created in the Palladio IDE can be fed directly into this simulation environment for analysis. We demonstrate two main benefits of our approach: 1) The semantics of the simulation and the non-functional properties to be analysed are made explicit in the respective DSL specifications, and 2) because of the compositional definition, we can add definitions of new non-functional properties and their analyses.

Autores: Antonio Moreno-Delgado / Steffen Zschaler / Javier Troya /  Francisco Durán / 
Palabras Clave:

6 - An Approach for Debugging Model Transformations Applying Spectrum-Based Fault Localization

Model transformations play a cornerstone role in Model-Driven Engineering as they provide the essential mechanisms for manipulating and transforming models. The use of assertions for checking their correctness has been proposed in several works. However, it is still challenging and error prone to locate the faulty rules, and the situation gets more critical as the size and complexity of model transformations grow, where manual debugging is no longer possible. Spectrum-Based Fault Localization (SBFL) is a technique for software debugging that uses the results of test cases and their corresponding code coverage information to estimate the likelihood of each program component (e.g., statements) of being faulty. This paper describes a proposal for applying SBFL for locating the faulty rules in ATL model transformations. The approach aims at automatically detecting the transformation rule that makes an assertion fail.

Autores: Javier Troya / Sergio Segura / José Antonio Parejo Maestre / Antonio Ruiz-Cortés / 
Palabras Clave: Debugging - Fault Localization - Model Transformation - Spectrum

7 - Concurrent Model Transformations with Linda

Nowadays, model transformations languages and engines use a sequential execution model. This is, only one execution thread deals with the whole transformation. However, model transformations dealing with very large models, such as those used in biology or aerospace applications, require concurrent solutions in order to speed up their performance. In this ongoing work we explore the use of Linda for implementing a set of basic mechanisms to enable concurrent model transformations, and present our initial results.

Autores: Loli Burgueño / Javier Troya / Antonio Vallecillo / 
Palabras Clave: Concurrency - Linda - Model Transformation

8 - Análisis de Conformidad de Gemelos Digitales Multi-Fidelidad

Un gemelo digital es una réplica virtual de un sistema a un cierto nivel de fidelidad, sincronizados a una determinada frecuencia. Los gemelos digitales suelen emplearse para replicar sistemas físicos cuyas simulaciones son computacionalmente muy costosas. Una de las soluciones que la literatura propone a este problema es definir una jerarquía de gemelos digitales multi-fidelidad, donde dependiendo del propósito concreto, empleemos un gemelo u otro. Sin embargo, uno de los problemas que surgen es la necesidad de determinar si los distintos gemelos son equivalentes entre ellos y conforme al sistema físico. En este artículo exploramos distintos métodos para medir esta

Autores: Paula Muñoz / Javier Troya / Antonio Vallecillo / 
Palabras Clave: Fidelidad - Gemelos Digitales - Multi-Fidelidad - Simulación

9 - Performance metamorphic testing: A Proof of concept

Sergio Segura, Javier Troya, Amador Durán, Antonio Ruiz-Cortés. «Performance Metamorphic Testing: A Proof of Concept». Information and Software Technology, 98:1-4, 2018. indicators:- JCR FI: 2.62 TOP 15% (Q1) CS/SE.- 2 citations in GScholar ( preliminary version of this paper was presented in the track of New Ideas an Emerging Results at ICSE 2017, with an acceptance rate of 16% (14 papers accepted out of 85 submissions) [1]. All four reviewers agreed on the value of the work with an overall score of 9 (out of 12), and a novelty score of 11 (out of 12).[1] Sergio Segura, Javier Troya, Amador Durán, Antonio Ruiz-Cortés. «Performance metamorphic testing: motivation and challenges». In Proceedings of the 39th International Conference on Software Engineering: New Ideas and Emerging Results (ICSE NIER’17) Track. IEEE Press, Piscataway, NJ, USA, 7-10, 2017. [Acceptance rate: 16%. Main track ranked as Class 1 in SCIE Ranking]

Autores: Sergio Segura / Javier Troya / Amador Durán Toro / Antonio Ruiz-Cortés / 
Palabras Clave: metamorphic testing - performance testing - Search–based testing

10 - On the Modular Specification of Non-Functional Properties in DSVLs

In previous work we have presented an approach to monitor nonfunctional properties of systems modeled in terms of domain specific visual languages using observers. In this work we present an approach to decouple the definition of observers behavior and systems behavior. Having a library with different kinds of observers behavior, and having the behavioral definition of the system, weaving links can be established among them in order to include observers in the system behavioral specification.

Autores: Javier Troya / Antonio Vallecillo / Francisco Durán / 
Palabras Clave: DSVLs - observers - weaving mechanisms

11 - Improving query performance on dynamic graphs

Querying large models efficiently often imposes high demands on system resources such as memory, processing time, disk access or network latency. The situation becomes more complicated when data are highly interconnected, e.g. in the form of graph structures, and when data sources are heterogeneous, partly coming from dynamic systems and partly stored in databases. These situations are now common in many existing social networking applications and geo-location systems, which require specialized and efficient query algorithms in order to make informed decisions on time. In this paper, we propose an algorithm to improve the memory consumption and time performance of this type of queries by reducing the amount of elements to be processed, focusing only on the information that is relevant to the query but without compromising the accuracy of its results. To this end, the reduced subset of data is selected depending on the type of query and its constituent filters. Three case studies are used to evaluate the performance of our proposal, obtaining significant speedups in all cases.

Autores: Gala Barquero / Javier Troya / Antonio Vallecillo / 
Palabras Clave: Data queries - Data stream processing - Dynamic graphs - Performance optimization - Precomputing systems

12 - On the Modular Specification of NFPs: A Case Study

The modular specification of non-functional properties of systems is a current challenge of Software Engineering, for which no clear solution exists. However, in the case of Domain-Specific Languages some successful proposals are starting to emerge, combining model-driven techniques with aspect-weaving mechanisms. In this paper we show one of these approaches in practice, and present the implementation we have developed to fully support it. We apply our approach for the specification and monitoring of non-functional properties using observers to a case study, illustrating how generic observers defining nonfunctional properties can be defined in an independent manner. Then, correspondences between these observers and the domain-specific model of the system can be established, and then weaved into a unified system specification using an ATL model transformation. Such a unified specification can also be analyzed in a natural way to obtain the required non-functional properties of the system.

Autores: Antonio Moreno-Delgado / Javier Troya / Francisco Durán / Antonio Vallecillo / 
Palabras Clave: Domain Specific Languages - model transformations - Non-functional Properties - weaving mechanisms

13 - Model Transformation Testing and Debugging: A Survey

Model transformations are the key technique in Model-Driven Engineering (MDE) to manipulate and construct models. As a consequence, the correctness of software systems built with MDE approaches relies mainly on the correctness of model transformations, and thus, detecting and locating bugs in model transformations have been popular research topics in recent years. This surge of work has led to a vast literature on model transformation testing and debugging, which makes it challenging to gain a comprehensive view of the current state of the art. This is an obstacle for newcomers to this topic and MDE practitioners to apply these approaches. This paper presents a survey on testing and debugging model transformations based on the analysis of 140 papers on the topics. We explore the trends, advances, and evolution over the years, bringing together previously disparate streams of work and providing a comprehensive view of these thriving areas. In addition, we present a conceptual framework to understand and categorise the different proposals. Finally, we identify several open research challenges and propose specific action points for the model transformation community.

Autores: Javier Troya / Sergio Segura / Lola Burgueño / Manuel Wimmer / 
Palabras Clave: Debugging - Model Transformation - survey - Testing

14 - Spectrum-Based Fault Localization in Model Transformations

Model transformations play a cornerstone role in Model-Driven Engineering as they provide the essential mechanisms for manipulating and transforming models. The correctness of software built using MDE techniques greatly relies on the correctness of model transformations. However, it is challenging and error prone to debug them, and the situation gets more critical as the size and complexity of model transformations grow, where manual debugging is no longer possible.Spectrum-Based Fault Localization (SBFL) uses the results of test cases and their corresponding code coverage information to estimate the likelihood of each program component (e.g., statements) of being faulty. In this paper we present an approach to apply SBFL for locating the faulty rules in model transformations. We evaluate the feasibility and accuracy of the approach by comparing the effectiveness of 18 different state-of-the-art SBFL techniques at locating faults in model transformations. Evaluation results revealed that the best techniques, namely Kulcynski2, Mountford, Ochiai and Zoltar, lead the debugger to inspect a maximum of three rules in order to locate the bug in around 74% of the cases. Furthermore, we compare our approach with a static approach for fault localization in model transformations, observing a clear superiority of the proposed SBFL-based method.

Autores: Javier Troya / Sergio Segura / José Antonio Parejo Maestre / Antonio Ruiz-Cortés / 
Palabras Clave: Debugging - Fault Localization - Model Transformation - Spectrum-based - Testing

15 - Automated inference of likely metamorphic relations for model transformations (YA PUBLICADO)

Model transformations play a cornerstone role in Model-Driven Engineering (MDE) as they provide the essential mechanisms for manipulating and transforming models. Checking whether the output of a model transformation is correct is a manual and errorprone task, referred to as the oracle problem. Metamorphic testing alleviates the oracle problem by exploiting the relations among different inputs and outputs of the program under test, so-called metamorphic relations (MRs). One of the main challenges in metamorphic testing is the automated inference of likely MRs. This paper proposes an approach to automatically infer likely MRs for ATL model transformations, where the tester does not need to have any knowledge of the transformation. The inferred MRs aim at detecting faults in model transformations in three application scenarios, namely regression testing, incremental transformations and migrations among transformation languages. In the experiments performed, the inferred likely MRs have proved to be quite accurate, with a precision of 96.4% from a total of 4101 true positives out of 4254 MRs inferred. Furthermore, they have been useful for identifying mutants in regression testing scenarios, with a mutation score of 93.3%. Finally, our approach can be used in conjunction with current approaches for the automatic generation of test cases. Artículo publicado en The Journal of Systems and Software, Vol 136, pp 188-208 (Available Online May 2017; Final Published Version February 2018) – Q1.

Autores: Javier Troya / Sergio Segura / Antonio Ruiz-Cortés / 
Palabras Clave: Automatic inference - Generic approach - Metamorphic relations - metamorphic testing - model transformations - Model-Driven Engineering