Synchronization of Models of Rich Languages with Triple Graph Grammars: An Experience Report
نویسندگان
چکیده
We report our experience of using Triple Graph Grammars (TGG) to synchronize models of the rich and complex Architecture Analysis and Design Language (AADL), an aerospace standard of the Society of Automotive Engineers. A synchronization layer has been developed between the OSATE (Open Source AADL Tool Environment) textual editor and the Adele graphical editor in order to improve their integration. Adele has been designed to support editing AADL models in a way that does not necessarily follow the structure of the language, but is adapted to the way designers think. For this reason, it operates on a different meta-model than OSATE. As a result, changes on the graphical model must be propagated automatically to the textual model to ensure consistency of the models. Since Adele does not cover the complete AADL language, this must be done without re-instantiation of the objects to avoid losing the information not represented in the graphical part. The TGG language implemented in the MoTE tool has been used to synchronize the tools. Our results provide a validation of the TGG approach for synchronizing models of large meta-models, but also show that model synchronization remains a challenging task, since several improvements of the TGG language and its tool were required to succeed.
منابع مشابه
Petri Net DAG Languages and Regular Tree Languages with Synchronization
A true-concurrency semantics is often given via pomsets. A pomset is an abstract directed acyclic graph that is in addition transitive: any grandson of a node is also a son of that node. We will drop this rather artificial transitive property in this paper and research abstract directed acyclic graphs (dags) as a true-concurrency semantics for Petri nets and their relation to regular languages ...
متن کاملIndustrial Case Study on the Integration of SysML and AUTOSAR with Triple Graph Grammars
During the overall development of complex engineering systems different modeling notations are employed. For example, in the domain of automotive systems system engineering models are employed quite early to capture the requirements and basic structuring of the entire system, while software engineering models are used later on to describe the concrete software architecture. Each model helps in ...
متن کاملConcurrent Model Synchronization with Conflict Resolution Based on Triple Graph Grammars
Triple graph grammars (TGGs) have been used successfully to analyse correctness of bidirectional model transformations. Recently, also a corresponding formal approach to model synchronization has been presented, where updates on a given domain (either source or target) can be correctly (forward or backward) propagated to the other model. However, a corresponding formal approach of concurrent mo...
متن کاملOn Modularizing Triple Graph Grammars with Rule Refinement
A Triple Graph Grammar (TGG) is a set of declarative rules describing how consistent triples of graph structures in a source, target, and correspondence domain are to be generated. This generative and high-level specification of consistency can be automatically operationalized and used to derive model generators for test case generation, forward and backward translators, and incremental model s...
متن کاملExisting and New Ideas on Least Change Triple Graph Grammars
At least two actively developed model synchronization frameworks employ a conceptually similar algorithm based on Triple Graph Grammars as an underlying formalism. Although this algorithm exhibits acceptable behavior for many use cases, there are still scenarios in which it is sub-optimal, especially regarding the “least change” criterion, i.e., the extent to which models are changed to restore...
متن کامل