Querying large models efficiently

  • Authors:
  • Javier Espinazo Pagán;Jesús García Molina

  • Affiliations:
  • -;-

  • Venue:
  • Information and Software Technology
  • Year:
  • 2014

Quantified Score

Hi-index 0.00

Visualization

Abstract

Context: The paradigm of Model-Driven Engineering (MDE) has emerged as a new area of software engineering that uses models to improve the productivity and reusability of software in order to achieve industrial standards. As models grow in size and complexity, the need of model persistence and model querying solutions arises to efficiently store large models and obtain information from them in an efficient, usable and safe way. Morsa is a model repository that uses a No-SQL database backend; it has been recently presented [1] and achieves scalable access to models and transparent integration with tools. Objective: Our goal was to develop a query language for Morsa, as the existing model querying approaches cannot take advantage of the design of the our repository. Method: The method followed in this paper comprises the following steps: (i) analyze the problem of model querying and identify a set of dimensions that can be used to characterize querying approaches; (ii) study and evaluate a representative set of model querying approaches and (iii) use the experience gained to design, develop and evaluate a dedicated model querying approach for Morsa that performs better than the studied ones (plain EMF, EMF Query, MDT OCL, IncQuery and CDO OCL). A test case has been defined to evaluate and compare the different approaches. Results: The contributions of this work are: first, an efficient, usable querying approach called Morsa Query Language (MorsaQL) that extends Morsa with querying capabilities, as the existing querying approaches cannot take advantage of our repository, and second, a comparative study of the current model persistence and querying approaches. Conclusion: The experience of analyzing and evaluating the different querying approaches has been very useful, as it has helped us developing our own one, which has been proven to be the best choice for Morsa. Moreover, the results of this paper can guide the MDE developers on which querying approach to use, depending on their needs.