![]() Breaking a declarative transformation means to state the given transformation in terms of operations on composing declarative transformations, while the recombination to get the α -solution is done by means of the corresponding operations on the α -solution of each component. That is to say, we are able to break a declarative transformation into sub transformations whose α -solutions might be recombined in an α -solution for the original transformation. Having the composition machinery accurately synchronized at both QVT levels would allow us to fully exploit the divide-and- conquer paradigm in the development of model transformations. In this article we described how the algebraic theory of problems is applied as a basis to build a mathematical foundation for the transformation composition problem in QVT, embracing both levels (descriptive and operational). This is the main difference with respect to our approach, which provides a holistic foundation for the transformation composition problem embracing declarative as well as operational dimensions. However they do not cover the entire composition spectrum. All these approaches are focused on the operational aspects of the composition machinery, offering interesting and useful solutions to a wide range of practical needs. Jon Oldevik in introduces a modeling framework for compound transformations, based on a hierarchy of transformation types, some of which represent simple atomic transformations, while others represent complex transformations. From them, they derive a core set of common definitions regarding model composition, and define a set of requirements for model composition frameworks, in terms of language and tool support. ![]() On the other hand, Bézivin and colleagues in analyze three model composition frameworks: the Atlas Model Weaver, the Glue Generator Tool (GGT) and the Epsilon Merging Language (EML). Other approaches that are closely related to the work described in are the Model Bus approach which tackles composition in the manner of OMG’s CORBA and the UMLAUT transformation toolkit that is build with the intension to provide the model designer with a freedom of choice with regard to combinations of transformations to be executed by providing a transformation library and a pluggable architecture. Transformation tools can be combined by using three commonly known combinatorial operators: sequence, parallel and choice. Anneke Kleppe in describes an open environment for model transformations in which users may combine the available tools that implement transformations and apply them to models in various languages. Left screen displays the composition on the declarative level while right screen displays the same composition but on the operational level. On the bottom panel we can see a preview of the composition result. The first screen exhibits the selection, from a transformation repository, of the transformations to be composed the second and third screens show the application of an algebraic operation on the selected transformations. Figure 3 shows the most relevant screenshots. The tool was built as an extension of ePlatero that is an open source plug-in for Eclipse running on top of the EMF metamodelling framework. ![]() The resulting transformations are automatically ‘calculated’ by the tool. Then, they can build more complex transformations by applying the composition operations presented in this paper. To assist the transformation development activities we are developing a software tool that allows developers to edit and store atomic QVT transformations. ![]() results can be proven for the QVT materialization of each operation of the algebraic theory of problems.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |