The Pragmatics of Model-Driven Development
IEEE Software
Fundamentals of Algebraic Graph Transformation (Monographs in Theoretical Computer Science. An EATCS Series)
Software Abstractions: Logic, Language, and Analysis
Software Abstractions: Logic, Language, and Analysis
Metamodel-based model conformance and multiview consistency checking
ACM Transactions on Software Engineering and Methodology (TOSEM)
Approaches for Model Transformation Reuse: Factorization and Composition
ICMT '08 Proceedings of the 1st international conference on Theory and Practice of Model Transformations
Constructing and Visualizing Transformation Chains
ECMDA-FA '08 Proceedings of the 4th European conference on Model Driven Architecture: Foundations and Applications
D-Praxis: A Peer-to-Peer Collaborative Model Editing Framework
DAIS '09 Proceedings of the 9th IFIP WG 6.1 International Conference on Distributed Applications and Interoperable Systems
Eating our own dog food: DSLs for generative and transformational engineering
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
Automatically Discovering Hidden Transformation Chaining Constraints
MODELS '09 Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems
Combining independent model transformations
Proceedings of the 2010 ACM Symposium on Applied Computing
Transformation composition modelling framework
DAIS'05 Proceedings of the 5th IFIP WG 6.1 international conference on Distributed Applications and Interoperable Systems
Supporting large scale model transformation reuse
Proceedings of the 12th international conference on Generative programming: concepts & experiences
Hi-index | 0.00 |
Model transformation is one of the key practices of Model-Driven Engineering. Building very large model transformations may benefit from the construction of small transformations, in order to manage complexity and enhance reusability, maintainability and modularity. The decomposition of transformations into smaller ones raises the issue of assuring the validity of a composition: if two or more transformations are chained together, are the results of executing the chain the expected ones? This paper addresses the challenge of determining if two transformations are conflicting. Transformations can conflict in numerous ways, e.g., in terms of preconditions, post-conditions, behaviour of individual rules. In this paper, we demonstrate a strong notion of conflict, via commutativity: two transformations do not conflict if they can be chained in either order, and in doing so produce identical results. We propose an approach to detecting such potential conflicts based on static analysis, exploiting an intermediate representation of transformations independent of any concrete language.