Loading…
EVL+Strace: a novel bidirectional model transformation approach
•The Bidirectional EVL+Strace approach is built based on the Epsilon Validation Language (EVL) and a domain-specific trace metamodel.•EVL+Strace is compared to four Bx approaches, using a feature-based bidirectional classification model.•It is the first interactive Bx approach that supports the pres...
Saved in:
Published in: | Information and software technology 2018-08, Vol.100, p.47-72 |
---|---|
Main Authors: | , , |
Format: | Article |
Language: | English |
Subjects: | |
Citations: | Items that this one cites Items that cite this one |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | •The Bidirectional EVL+Strace approach is built based on the Epsilon Validation Language (EVL) and a domain-specific trace metamodel.•EVL+Strace is compared to four Bx approaches, using a feature-based bidirectional classification model.•It is the first interactive Bx approach that supports the preservation and propagation features.•The MoDEBiTE toolkit is developed to automatically generate the domain-specific trace metamodel and produce the EVL+Strace transformation code.•MoDEBiTE can generate the main part of the EVL+Strace code using the MDE principles.
Context: Model transformation, as one of the cornerstones of Model-Driven Engineering (MDE) paradigm, produces target models from source models. In most of the practical cases, both source and target models are changed independently and it is essential to preserve the consistency between them. Bidirectional transformation (Bx) provides a mechanism to re-establish this inter-model consistency. Bx approaches suffer from several limitations, such as lack of a comprehensive implementation, low learnability, and mismanagement of update conflicts.
Objective: To alleviate the aforementioned drawbacks, we propose a novel Bx approach, called EVL+Strace, which is built using the Epsilon Validation Language (EVL) on a domain-specific trace metamodel (Strace). Furthermore, an Eclipse-based toolkit, called MoDEBiTE, is developed to automatically produce the EVL+Strace artifacts including the specific trace metamodel and transformation code.
Method: EVL+Strace exploits the ability of EVL to transform user updates on models from source to target and vice versa, simultaneously. The applied trace metamodel should be specific to the domains of source and target metamodels that prevents illegitimate trace elements. Additionally, it enables developers to specify the transformation concepts more precisely. A running example is applied to explain the components of EVL+Strace and application of MoDEBiTE.
Result: EVL+Strace is the first practical interactive approach that can provide important bidirectional features, such as preservation and propagation. A feature model of Bx approaches is applied to compare EVL+Strace with the well-known Bx languages. To show the superiority of EVL+Strace and applicability of MoDEBiTE, a comprehensive evaluation on six case studies is performed.
Conclusion: EVL+Strace provides an interactive transformation system to manage update conflicts. It uses the EVL language for defining Bx transformat |
---|---|
ISSN: | 0950-5849 1873-6025 |
DOI: | 10.1016/j.infsof.2018.03.011 |