Model Driven Engineering (MDE) is a common-used method for producing complex systems nowadays. In this method, a software product will automatically be produced from the created models. Model transformation is one of the important pillars that automatically transform the model into code.
With the complexity of software systems, the transformation of models is also large and complex. As a result, the quality of transformations and their understanding has encountered a problem. For this reason, the main concern in the MDE methods is the production of a quality transformation. One way to improve the quality of transformations and to overcome these complexities is an appropriate and suitable use of transformation patterns. Using transform patterns is a new concern in model-driven engineering. In recent decades, several studies have been conducted on the introduction of patterns, but there is no comprehensive process for using and applying the patterns.
The purpose of this research is to provide a solution to facilitate and improve the use of transformation patterns in order to enhance the quality of written transformation. For this purpose, a process is used to apply important patterns in model transformation. In the presented process, Higher Order transformation (HOT) techniques and transformation libraries have been used. In order to ease the use of transformation patterns, the proposed process is implemented as a tool called AMTPA. In evaluating the proposed method, the transformation code is assessed before applying the pattern and after applying the pattern based on qualitative parameters such as efficiency, complexity, and modularity. Measurement of these parameters is automated and integrated with the tool. By measuring the value of the parameters, the results of using the patterns before and after applying the patterns can be easily measured. In general, the results show that the use of patterns increases the quality, efficiency, cohesion, and simplicity of the transformation code. Additionally, in this study, the usefulness of applying transformation patterns to real transformations in different sizes is evaluated qualitatively.