当前位置: X-MOL 学术Softw. Syst. Model. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
MUPPIT: a method for using proper patterns in model transformations
Software and Systems Modeling ( IF 2.0 ) Pub Date : 2021-01-17 , DOI: 10.1007/s10270-020-00853-y
Mahsa Panahandeh , Mohammad Hamdaqa , Bahman Zamani , Abdelwahab Hamou-Lhadj

Model transformation plays an important role in developing software systems using the model-driven engineering paradigm. Examples of applications of model transformation include forward engineering, reverse engineering of code into models, and refactoring. Poor-quality model transformation code is costly and hard to maintain. There is a need to develop techniques and tools that can support transformation engineers in designing high-quality model transformations. The goal of this paper is to present a process, called MUPPIT (method for using proper patterns in model transformations), which can be used by transformation engineers to improve the quality of model transformations by detecting anti-patterns in the transformations and automatically applying pattern solutions. MUPPIT consists of four phases: (1) identifying a transformation anti-pattern, (2) proposing a pattern-solution, (3) applying the pattern-solution, and (4) evaluating the transformation model. MUPPIT takes a transformation design model (TDM), which is a representation of the given transformation, to search for the presence of an anti-pattern of interest. If found, MUPPIT proposes a pattern solution from a catalogue of patterns to the transformation engineer. The application of the pattern solution results in the restructuring of the TDM. While MUPPIT, as a process, is independent of any transformation language and transformation engineering framework, we have implemented an instance of it as a tool using transML and MeTAGeM, which support exogenous transformations using rule-based transformation and OCL-based languages such as ATL and ETL. We evaluate MUPPIT through a number of case studies in which we show how MUPPIT can detect four anti-patterns and propose the corresponding pattern solutions. We also evaluate MUPPIT by collecting a number of metrics to assess the quality of the resulting transformations. The results show that MUPPIT optimizes the transformations by improving reusability, modularity, simplicity, and maintainability, as well as decreasing the complexity. MUPPIT can help transformation engineers to produce high-quality transformations using a pattern-based approach. An immediate future direction would be to experiment with more anti-patterns and pattern solutions. Moreover, we need to implement MUPPIT using other transformation engineering frameworks.



中文翻译:

MUPPIT:一种在模型转换中使用适当模式的方法

在使用模型驱动的工程范式开发软件系统中,模型转换起着重要作用。模型转换的应用示例包括正向工程,将代码反向工程到模型中以及重构。劣质的模型转换代码成本高且难以维护。需要开发可以支持转换工程师设计高质量模型转换的技术和工具。本文的目的是提出一种称为MUPPIT(在模型转换中使用适当模式的方法)的过程,转换工程师可以使用该过程通过检测转换中的反模式并自动应用模式来提高模型转换的质量。解决方案。MUPPIT包含四个阶段:(1)识别转化反模式,(2)提出模式解决方案,(3)应用模式解决方案,以及(4)评估转换模型。MUPPIT采用转换设计模型(TDM)(它是给定转换的表示形式)来搜索感兴趣的反模式的存在。如果找到,则MUPPIT会从模式目录向转换工程师提出模式解决方案。模式解决方案的应用导致TDM的重组。尽管MUPPIT作为一个过程独立于任何转换语言和转换工程框架,但我们已经使用transML和MeTAGeM将其实例实现为工具,它们使用基于规则的转换和基于OCL的语言(例如ATL)来支持外源转换和ETL。我们通过许多案例研究对MUPPIT进行评估,在这些案例中,我们展示了MUPPIT如何检测到四个反模式并提出了相应的模式解决方案。我们还通过收集许多指标来评估MUPPIT,以评估生成的转换的质量。结果表明,MUPPIT通过提高可重用性,模块化,简单性和可维护性以及降低复杂性来优化转换。MUPPIT可以帮助转型工程师使用基于模式的方法来进行高质量的转换。近期的方向将是尝试更多的反图案和图案解决方案。此外,我们需要使用其他转换工程框架来实现MUPPIT。我们还通过收集许多指标来评估MUPPIT,以评估生成的转换的质量。结果表明,MUPPIT通过提高可重用性,模块化,简单性和可维护性以及降低复杂性来优化转换。MUPPIT可以帮助转型工程师使用基于模式的方法来进行高质量的转换。近期的方向将是尝试更多的反图案和图案解决方案。此外,我们需要使用其他转换工程框架来实现MUPPIT。我们还通过收集许多指标来评估MUPPIT,以评估生成的转换的质量。结果表明,MUPPIT通过提高可重用性,模块化,简单性和可维护性以及降低复杂性来优化转换。MUPPIT可以帮助转型工程师使用基于模式的方法来进行高质量的转换。近期的方向将是尝试更多的反图案和图案解决方案。此外,我们需要使用其他转换工程框架来实现MUPPIT。MUPPIT可以帮助转型工程师使用基于模式的方法来进行高质量的转换。近期的方向将是尝试更多的反图案和图案解决方案。此外,我们需要使用其他转换工程框架来实现MUPPIT。MUPPIT可以帮助转型工程师使用基于模式的方法来进行高质量的转换。近期的方向将是尝试更多的反图案和图案解决方案。此外,我们需要使用其他转换工程框架来实现MUPPIT。

更新日期:2021-01-18
down
wechat
bug