ICMT 2017 - Inferring Complex In-place Model Transformation Rules


Home
Case Study
Tool Installation
Tool Quick Introduction

Case Study

In the following, we present the examples from which we infer a general transformation rule for the refactoring operation pullUpAttribute as described in the paper. For each of the examples, we show the Henshin rule derived by our approach after adding the example to the set of examples.

Please note that, like in the paper, we present only a subset of the generated Henshin rule comprising those rule elements being typed over the visible excerpt of the UML meta-model shown in the paper. Complete rules can be found as Henshin files in the Examples project provided for download in the Tool Installation section. These rules additionally include rule elements of type LiteralInteger and LiteralUnlimitedNatural signifying upper and lower bounds of multiplicities attached to UML attributes.

Baseline

Example 1: Original (left) and changed (right) model:

Henshin rule derived from Example 1:


Adressing Issue (1): Overspecified structural context

Example 2: Original (left) and changed (right) model:
      
Henshin rule derived after adding Example 2:


Adressing Issue (2): Proper interpretation of attribute values

Example 3: Original (left) and changed (right) model:

Henshin rule derived after adding Example 3:


Adressing Issue (3): Overspecialized typing of nodes

Example 4: Original (left) and changed (right) model:

Henshin rule derived after adding Example 4:


Adressing Issue (4): Incomplete specification of transformation effects

Example 5: Original (left) and changed (right) model:

Henshin rule derived after adding Example :


Adressing Issue (5): Missing negative application conditions

Negative 1 (left) and Negative 2 (right):

Henshin rule derived after adding Negative 1 and Negative 2: