Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

VIATRA2/UseCases/TraceabilityModels

< VIATRA2‎ | UseCases
Revision as of 14:05, 19 March 2010 by Gabor.bergmann.incquerylabs.com (Talk | contribs) (Visualization)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Traceability models in VIATRA2

Storing the correspondence between the source and target models when using inter model transformations is important for several MT scenarios. These scenarios include:

  • Model synchronization
  • Change-driven model transformations
  • Live transformations
  • Approaches requiring back-annotation

The correspondence information can be stored in traceability models (TMs), which should be separated from the target and source model for the following reasons:

  • The TM contains information that is not part of the source and target models, rather it is related to the MT.
  • The TM often conforms to a metamodel defined separately from metamodels of the source and target models.
  • Models can be the target or source of various MTs, thus repeated MT application would clutter the models with elements unnecessary to other MTs.

Metamodel sample

In most cases the traceability metamodel contains definitions for records that include references to source and target elements. These references can point to multiple elements and if required, additional attributes can be defined. Note that source and target are element types in the source and target metamodels.

 entity(source2target) {
  relation(ref_source,source2target,source);
  relation(ref_target,source2target,target);
 }

Traceability Metamodel Sample

Visualization

TMs are used with automated solutions in most case, but sometimes they are used manually. In these cases the visualization of TMs are essential. VIATRA includes a model visualization component which is capable of presenting traceability models as well.

Traceability Visualization

See traceability visualization minisite

Advanced uses

Model synchronization

The TM is used for reacting to changes in the source or target models. For example if a new element appears in the source model without correspondence information in the TM, the synchronization MT can automatically create the target elements and update the TM. Similarly, if the source element is deleted, the TM and the target model can be automatically updated to match the source model. For further information, see [1]

Back-annotation

Automated MTs are widely used for creating analysis models from design models for executing validation, verification, qualitative or quantitative analysis. Back-annotation (presenting the results on the design level) appears as an additional challange in most analysis techniques. The TM can be used for identifying the desing model elements to which the results are related. For further information, see [2]

References

  1. I. Rath, A. Okros, D. Varro: Synchronization of abstract and concrete syntax in domain-specific modeling languages. Journal of Software and Systems Modeling (2009) [| download PDF]
  2. L. Gonczy, A. Hegedus, D. Varro: [| download PDF]

Copyright © Eclipse Foundation, Inc. All Rights Reserved.