Efficient persistence, query, and transformation of large models

Abstract : The Model Driven Engineering (MDE) paradigm is a softwaredevelopment method that aims to improve productivity and software quality by using models as primary artifacts in all the aspects of software engineering processes. In this approach, models are typically used to represent abstract views of a system, manipulate data, validate properties, and are finally transformed to application artifacts (code, documentation, tests, etc). Among other MDE-based approaches, automatic model generation processes such as Model Driven Reverse Engineering are a family of approaches that rely on existing modeling techniques and languages to automatically create and validate models representing existing artifact. Model extraction tasks are typically performed by a modeler, and produce a set of views that ease the understanding of the system under study. While MDE techniques have shown positive results when integrated in industrial processes, the existing studies also report that scalability of current solutions is one of the key issues that prevent a wider adoption of MDE techniques in the industry. This isparticularly true in the context of generative approaches, that require efficient techniques to store, query, and transform very large models typically built in a single-user context. Several persistence, query, and transformation solutions based on relational and NoSQL databases have been proposed to achieve scalability, but they often rely on a single model-to-database mapping, which suits a specific modeling activity, but may not be optimized for other use cases. For example a graph-based representation is optimized to compute complex navigation paths, but may not be the best solution for repeated atomic accesses. In addition, low-level modeling framework were originally developed to handle simple modeling activities (such as manual model edition), and their APIs have not evolved to handle large models, limiting the benefits of advance storage mechanisms. In this thesis we present a novel modeling infrastructure that aims to tackle scalability issues by providing (i) a new persistence framework that allows to choose the appropriate model-to-database mapping according to a given modeling scenario, (ii) an efficient query approach that delegates complex computation to the underlying database, benefiting of its native optimization and reducing drastically memory consumption and execution time, and (iii) a model transformation solution that directly computes transformations in the database. Our solutions are built on top of OMG standards such as UML and OCL, and are integrated with the de-facto standard modeling solutions such as EMF and ATL.
Document type :
Complete list of metadatas

Cited literature [107 references]  Display  Hide  Download

Contributor : Abes Star <>
Submitted on : Wednesday, December 20, 2017 - 10:20:30 AM
Last modification on : Tuesday, March 26, 2019 - 9:25:23 AM


Version validated by the jury (STAR)


  • HAL Id : tel-01668561, version 1


Gwendal Daniel. Efficient persistence, query, and transformation of large models. Programming Languages [cs.PL]. Ecole nationale supérieure Mines-Télécom Atlantique, 2017. English. ⟨NNT : 2017IMTA0049⟩. ⟨tel-01668561⟩



Record views


Files downloads