transML: A Family of Languages to Model Model Transformations (original) (raw)
Related papers
On the Specification of Model Transformations through a Platform Independent Approach
Proceedings of the 27th International Conference on Software Engineering and Knowledge Engineering, 2015
Transformations are key artifacts in the MDD (Model Driven Development) approach: a software development project can be defined through a transformation chain converting source models into target models until code, enabling development process automation. Transformations can be complex and demand software processes, languages and techniques to improve their development in order to increase reuse, portability, correctness, and so on. In this context we propose a framework to develop model transformations using MDD. This paper presents a Model Transformation Profile (MTP) defined as the domain specific language of the framework.
ATL: A model transformation tool
Science of Computer Programming, 2008
In the context of Model Driven Engineering, models are the main development artifacts and model transformations are among the most important operations applied to models. A number of specialized languages have been proposed, aimed at specifying model transformations. Apart from the software engineering properties of transformation languages, the availability of high quality tool support is also of key importance for the industrial adoption and ultimate success of MDE. In this paper we present ATL: a model transformation language and its execution environment based on the Eclipse framework. ATL tools provide support for the major tasks involved in using a language: editing, compiling, executing, and debugging.
Generating Formal Model Transformation Specification Using a Template-based Approach
2010
Abstract. Model transformation is a key activity in Model-Driven Engineering (MDE). Transformations map between models, in different languages and/or at different levels of abstraction. Model transformation introduces challenges for specification, verification and validation. Normally, MDE development requires planning which includes metamodel and transformation design and a customized testing.
2010
Model Driven Engineering proposes a software development process in which the key notions are models and model transformations. There are already several proposals for model transformation specification, implementation, and execution. In this paper we introduce the notion of domain specific transformation language (DSTL). A DSTL is a transformation language tailored for a specific domain; in contrast to well known transformation languages, such as QVT or ATL, the DSTL's syntax and semantics are directly related to a specific domain and/or kind of transformation. A DSTL makes transformations easer to write and understand, the code is intuitive and the users do not need to know a generic transformation language. Also we analyze a novel way to define its semantics. Our proposal consists in using transformation languages themselves to the implementation of such domain specific languages. We illustrate the proposal through an example in the database domain.
ATC: A Low-Level Model Transformation Language
Proceedings of the 2nd International Workshop on Model-Driven Enterprise Information Systems, 2006
Model Transformations constitute a key component in the evolution of Model Driven Software Development (MDSD). MDSD tools base their full potential on transformation specifications between models. Several languages and tools are already in production, and OMG's MDA is currently undergoing a standardization process of these specifications. In this paper, we present Atomic Transformation Code (ATC), an imperative low-level model transformation language which decouples user transformation languages from the underlying transformation engine. Therefore work invested on this engine is protected against variations on the high-level transformation languages supported. This approach can ease the adoption of QVT and other language initiatives. Also it provides MDA modeling tools with a valuable benefit by supporting the seamless integration of a variety of transformation languages simultaneously.
State of the Art of QVT: A Model Transformation Language Standard
2007
Query/Views/Transformation (QVT) is the OMG standard language for specifying model transformations in the context of MDA. It is regarded as one of the most important standards since model transformations are proposed as major operations for manipulating models. In the first part of the paper we briefly summarize the typical transformation scenarios that developers encounter in software development and formulate key requirements for each scenario. This allows a comparison between the desirable and the formulated requirements for QVT. Such a comparison helps us to initially evaluate the adequacy of the QVT language.The second part of the paper focuses on the current state of the standard: the language architecture, specification, paradigm, and open issues. The three QVT sublanguages Operational Mappings, Relations, and Core are briefly described. Special attention is given to the currently available and expected tool support.
On the interoperability of model-to-model transformation languages
Science of Computer Programming, 2007
Transforming models is a crucial activity in Model Driven Engineering (MDE). With the adoption of the OMG QVT standard for model transformation languages, it is anticipated that the experience in applying model transformations in various domains will increase. However, the QVT standard is just one possible approach for solving model transformation problems. In parallel with the QVT activity, many research groups and companies have been working on their own model transformation approaches and languages. It is important for software developers to be able to compare and select the most suitable languages and tools for a particular problem. This paper compares several model-to-model transformation languages as a step in the direction of gathering knowledge about the existing model transformation approaches. The focus is on the major language components (sublanguages and their features, execution tools, etc.) and how they are related. The major goal is to motivate the need for language interoperability and to explore options and obstacles for such interoperability. We propose a set of heuristics to reason about the problems that must be addressed when translators between languages have to be developed. These heuristics are applied on several examples. The experience from these examples shows that achieving a large degree of interoperability is difficult since some languages expose incompatible features. We managed to identify, however, cases where the interoperability between languages is feasible and brings certain benefits.
A generator framework for domain-specific model transformation languages
Domain specific languages play an important role in model driven development, as they allow to model a system using modeling constructs carrying implicit semantics specific to a domain. Consequently, possibly many reusable, domain specific languages will emerge. Thereby, certain application areas, such as business process engineering, can be jointly covered by a number of conceptually related DSLs, that are similar in a sense of sharing semantically equal concepts. Although, a crucial role in being able to use, manage and integrate all these DSLs comes to model transformation languages with QVT as one of their most prominent representatives, existing approaches have not aimed at reaping benefit of these semantically overlapping DSLs in terms of providing abstraction mechanisms for shared concepts. Therefore, as opposed to a generalpurpose model transformation language sought after with the QVT-RFP, this work discusses the possibility of employing domain-specific model transformation languages. These are specifically tailored for defining transformations between metamodels sharing certain characteristics. In this context, the paper introduces a basic framework which allows generating the necessary tools to define and execute transformations written in such a domain-specific transformation language. To illustrate the approach, an example language will be introduced and its realization within the framework is shown.
Applying MDE to the (semi-)automatic development of model transformations
Information and Software Technology, 2013
Context. Model transformations play a key role in any software development proposal based on Model-Driven Engineering principles. However, despite the inherent complexity of developing model transformations, little attention has been paid to the application of MDE principles to the development of model transformations. Objective. In order to: a) address the inherent complexity of model transformations development and b) alleviate the problem of the diversity of the languages that are available for model transformation, this paper proposes applying MDE principles to the development of model transformations. In particular, we have adopted the idea of handling model transformations as transformation models in order to be able to model, transform and generate model transformations. Method. The proposal follows an MDA-based approach that entails the modeling of model transformations at different abstraction levels and the connection of these models by means of model transformations. It has been empirically validated by conducting a set of case studies following a systematic research methodology. Results. The proposal was supported by the introduction of MeTAGeM, a methodological and technical framework for the model-driven development of model transformations that bundles a set of Domain-Specific Languages for modeling model transformations with a set of model transformations to bridge these languages and (semi-)automate model transformations development.