Solving the TTC 2011 Model Migration Case with UML-RSDS

Reading time: 3 minute
...

📝 Original Info

  • Title: Solving the TTC 2011 Model Migration Case with UML-RSDS
  • ArXiv ID: 1111.4741
  • Date: 2021-06-15
  • Authors: K. Lano (Department of Informatics, Kings College London), S. Kolahdouz-Rahimi (Department of Informatics, Kings College London)

📝 Abstract

In this paper we apply the UML-RSDS notation and tools to the GMF model migration case study and explain how to use the UML-RSDS tools.

💡 Deep Analysis

Figure 1

📄 Full Content

This case study [1] is a re-expression transformation which involves a complex restructuring of the data of a model: actual figures are replaced by references to figures, and references from a figure to subfigures are recorded by explicit objects.

Figure 1 shows the unified metamodels of the source (GMF version 1.0) and target (GMF version 2.1) languages. Since most of the data of a model may remain unchanged by the transformation, we specify the transformation as an update-in-place mapping. Class diagrams can be created using the visual class diagram editor of the UML-RSDS tool (executed by invoking java UmlTool).

We assume in Asm that the input model is a syntactically correct version 1.0 model and that the new entities have no instances:

For simplicity of specification, we decompose the transformation into a first transformation which creates the new data from the old, without deleting any data, and a second transformation which removes Figure 1: GMF metamodels in UML-RSDS the version 1.0 data which is not in version 2.1. This is an example of the construction and cleanup design pattern [4].

For clarity, we use conventional mathematical notation here, the specification must however be written in the ASCII syntax for OCL when entered into the toolset (Appendix B).

The first transformation is specified by the following Cons constraints: Each of the Cons constraints can be implemented by simple iterations [4]. This implementation is carried out automatically by the UML-RSDS toolkit: a design level description as a UML activity is derived for each use case. In addition, executable Java code is also generated. The implementation is structured as a sequence of phases, one for each constraint. The phase for C1 must precede the phases for the other three constraints, but they can be executed in any order, so the transformation can be decomposed into several separate use cases if required. Only C4 uses the DiagramElement class and its subclasses, so an input model could be divided into two parts, with the instances of classes The two transformations are composed by executing one after the other, using an intermediate file to hold the target model of the first transformation, which serves as the source model of the second.

We have shown that UML-RSDS can specify the GMF case study transformation in a direct and concise manner, both as high-level specifications and as explicit designs. UML-RSDS has the advantage of using standard UML and OCL notations to specify transformations, reducing the cost of learning a specialpurpose transformation language. Our method has the advantage of making explicit all assumptions on models and providing global specifications (Cons and Asm) of transformations, independent of specific rules.

One deficiency is a lack of graphical specification for transformation rules, ie, by diagrams at the abstract or concrete syntax level. We intend to support such specification as a supplement to the formal specifications of rules.

📸 Image Gallery

cover.png

Reference

This content is AI-processed based on open access ArXiv data.

Start searching

Enter keywords to search articles

↑↓
ESC
⌘K Shortcut