Author:
Abdelmalek Hamza,Khriss Ismaïl,Jakimi Abdeslam
Abstract
Model Driven Engineering (MDE) adoption in the industry suffers from many technical and non-technical problems. One of the significant technical problems lies in the difficulty of building complex transformations from the composition of small and reusable transformations. Another problem resides in developing transformations from scratch in case they are missing. In this paper, we present an approach to how to handle these issues. The approach allows composing reusable transformations to build more complex ones by providing a catalog of prebuilt transformations targeting common architectures, frameworks, and design patterns. To give guidance and simplify the task of developing new transformations, we describe a platform description model of an entire system or a part of it in two views: a UML profile and a set of transformations. We also present three transformation types, each of which handles different abstraction design concerns. Generic transformations are small and reusable to build complex transformations, system-independent transformations are reusable and implement high-level design decisions, and system-specific transformations are not reusable and implement all design decisions needed for a given system. The approach is implemented as a plugin for a UML modeling tool and validated by developing a system that simulates the behavior of a gas station through model transformations built from the composition of reusable transformations.