ICMT 2017  Inferring Complex Inplace Model Transformation Rules 

Case StudyIn 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 metamodel 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. BaselineExample 1: Original (left) and changed (right) model:Henshin rule derived from Example 1: Adressing Issue (1): Overspecified structural contextExample 2: Original (left) and changed (right) model:Henshin rule derived after adding Example 2: Adressing Issue (2): Proper interpretation of attribute valuesExample 3: Original (left) and changed (right) model:Henshin rule derived after adding Example 3: Adressing Issue (3): Overspecialized typing of nodesExample 4: Original (left) and changed (right) model:Henshin rule derived after adding Example 4: Adressing Issue (4): Incomplete specification of transformation effectsExample 5: Original (left) and changed (right) model:Henshin rule derived after adding Example : Adressing Issue (5): Missing negative application conditionsNegative 1 (left) and Negative 2 (right):Henshin rule derived after adding Negative 1 and Negative 2: 