论文标题
避免不必要的信息丢失:基于三图语法的正确有效的模型同步
Avoiding Unnecessary Information Loss: Correct and Efficient Model Synchronization Based on Triple Graph Grammars
论文作者
论文摘要
模型同步,即,在模型更改后两个相互关联的模型之间恢复一致性的任务是一项具有挑战性的任务。三图语法(TGGS)通过描述如何创建一致模型对的规则指定模型一致性。这些规则可用于自动得出进一步的规则,该规则描述了如何以一个模型到另一个模型的变化或如何以保证传播可能是可能的方式更改一个模型的变化。但是,将模型同步限制为这些派生规则,可能会导致不必要的删除和在变化传播过程中模型元素的重现。这是低效的,可能会导致不必要的信息损失,即,当删除的元素包含第二个模型中未表示的信息时,此信息无法轻松恢复。最近已经制定了捷径规则,以避免通过重复现有模型元素来避免不必要的信息丢失。在本文中,我们展示了如何自动得出(短切)维修规则,从换档规则进行传播变化,从而避免信息丢失并加速模型同步。我们基于规则的模型同步过程的关键要素是这些维修规则和一个增量模式匹配器,以告知其适当的应用程序。我们证明了此同步过程的终止和正确性,并讨论了其完整性。作为概念证明,我们已经在Emoflon中实现了此同步过程,Emoflon是一种最新的模型转换工具,并具有对双向性的固有支持。我们的评估表明,与基于TGG的模型同步过程相比,基于(换档)修复规则(短切)维修规则的维修过程大大降低了信息损失和性能的提高。
Model synchronization, i.e., the task of restoring consistency between two interrelated models after a model change, is a challenging task. Triple Graph Grammars (TGGs) specify model consistency by means of rules that describe how to create consistent pairs of models. These rules can be used to automatically derive further rules, which describe how to propagate changes from one model to the other or how to change one model in such a way that propagation is guaranteed to be possible. Restricting model synchronization to these derived rules, however, may lead to unnecessary deletion and recreation of model elements during change propagation. This is inefficient and may cause unnecessary information loss, i.e., when deleted elements contain information that is not represented in the second model, this information cannot be recovered easily. Short-cut rules have recently been developed to avoid unnecessary information loss by reusing existing model elements. In this paper, we show how to automatically derive (short-cut) repair rules from short-cut rules to propagate changes such that information loss is avoided and model synchronization is accelerated. The key ingredients of our rule-based model synchronization process are these repair rules and an incremental pattern matcher informing about suitable applications of them. We prove the termination and the correctness of this synchronization process and discuss its completeness. As a proof of concept, we have implemented this synchronization process in eMoflon, a state-of-the-art model transformation tool with inherent support of bidirectionality. Our evaluation shows that repair processes based on (short-cut) repair rules have considerably decreased information loss and improved performance compared to former model synchronization processes based on TGGs.