A framework for choosing a database query language
ACM Computing Surveys (CSUR)
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Comparative analysis of five XML query languages
ACM SIGMOD Record
Object Relational DBMSs: The Next Great Wave
Object Relational DBMSs: The Next Great Wave
Temporal Query Languages: A Survey
ICTL '94 Proceedings of the First International Conference on Temporal Logic
Programming Language Design Concepts
Programming Language Design Concepts
When and how to develop domain-specific languages
ACM Computing Surveys (CSUR)
EMF: Eclipse Modeling Framework 2.0
EMF: Eclipse Modeling Framework 2.0
Domain-Specific Modeling
Bigtable: a distributed storage system for structured data
OSDI '06 Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation - Volume 7
Dynamo: amazon's highly available key-value store
Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles
ATL: A model transformation tool
Science of Computer Programming
Domain-specific development with visual studio dsl tools
Domain-specific development with visual studio dsl tools
Personal reflections on automation, programming culture, and model-based software engineering
Automated Software Engineering
Software Language Engineering: Creating Domain-Specific Languages Using Metamodels
Software Language Engineering: Creating Domain-Specific Languages Using Metamodels
On the Use of Higher-Order Model Transformations
ECMDA-FA '09 Proceedings of the 5th European Conference on Model Driven Architecture - Foundations and Applications
Computer
A Model-Based Approach to Families of Embedded Domain-Specific Languages
IEEE Transactions on Software Engineering
Xtext: implement your language faster than the quick and dirty way
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
Scalable SQL and NoSQL data stores
ACM SIGMOD Record
Morsa: a scalable approach for persisting and accessing large models
Proceedings of the 14th international conference on Model driven engineering languages and systems
MongoDB in Action
Integrating efficient model queries in state-of-the-art EMF tools
TOOLS'12 Proceedings of the 50th international conference on Objects, Models, Components, Patterns
NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence
NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence
What will it take? A view on adoption of model-based methods in practice
Software and Systems Modeling (SoSyM)
Automated and transparent model fragmentation for persisting large models
MODELS'12 Proceedings of the 15th international conference on Model Driven Engineering Languages and Systems
Model-Driven Software Engineering in Practice
Model-Driven Software Engineering in Practice
Comparative analysis of data persistence technologies for large-scale models
Proceedings of the 2012 Extreme Modeling Workshop
A research roadmap towards achieving scalability in model driven engineering
Proceedings of the Workshop on Scalability in Model Driven Engineering
Hi-index | 0.00 |
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.