1,646 research outputs found
Avoiding Unnecessary Information Loss: Correct and Efficient Model Synchronization Based on Triple Graph Grammars
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.Comment: 33 pages, 20 figures, 3 table
Supporting user-oriented analysis for multi-view domain-specific visual languages
This is the post-print version of the final paper published in Information and Software Technology. The published article is available from the link below. Changes resulting from the publishing process, such as peer review, editing, corrections, structural formatting, and other quality control mechanisms may not be reflected in this document. Changes may have been made to this work since it was submitted for publication. Copyright @ 2008 Elsevier B.V.The integration of usable and flexible analysis support in modelling environments is a key success factor in Model-Driven Development. In this paradigm, models are the core asset from which code is automatically generated, and thus ensuring model correctness is a fundamental quality control activity. For this purpose, a common approach is to transform the system models into formal semantic domains for verification. However, if the analysis results are not shown in a proper way to the end-user (e.g. in terms of the original language) they may become useless.
In this paper we present a novel DSVL called BaVeL that facilitates the flexible annotation of verification results obtained in semantic domains to different formats, including the context of the original language. BaVeL is used in combination with a consistency framework, providing support for all steps in a verification process: acquisition of additional input data, transformation of the system models into semantic domains, verification, and flexible annotation of analysis results.
The approach has been validated analytically by the cognitive dimensions framework, and empirically by its implementation and application to several DSVLs. Here we present a case study of a notation in the area of Digital Libraries, where the analysis is performed by transformations into Petri nets and a process algebra.Spanish Ministry of Education and Science and MODUWEB
Model transformation by graph transformation: A comparative study
This is an electronic version of the paper presented at the Model Transformation in Practice, held in Montego Bay on 2005Graph transformation has been widely used for expressing
model transformations. Especially transformations of visual models can
be naturally formulated by graph transformations, since graphs are well
suited to describe the underlying structures of models. Based on a common
sample model transformation, four different model transformation
approaches are presented which all perform graph transformations. At
first, a basic solution is presented and crucial points of model transformations
are indicated. Subsequent solutions focus mainly on the indicated
problems. Finally, a first comparison of the chosen approaches to model
transformation is presented where the main ingredients of each approach
are summarized
Event-driven grammars: Relating abstract and concrete levels of visual languages
The final publication is available at Springer via http://dx.doi.org/10.1007/s10270-007-0051-2In this work we introduce event-driven grammars, a kind of graph grammars that are especially suited for visual modelling environments generated by meta-modelling. Rules in these grammars may be triggered by user actions (such as creating, editing or connecting elements) and in their turn may trigger other user-interface events. Their combination with triple graph transformation systems allows constructing and checking the consistency of the abstract syntax graph while the user is building the concrete syntax model, as well as managing the layout of the concrete syntax representation. As an example of these concepts, we show the definition of a modelling environment for UML sequence diagrams. A discussion is also presented of methodological aspects for the generation of environments for visual languages with multiple views, its connection with triple graph grammars, the formalization of the latter in the double pushout approach and its extension with an inheritance concept.This work has been partially sponsored by the Spanish Ministry of Education and Science with projects MOSAIC (TSI2005-08225-C07-06) and MODUWEB (TIN 2006-09678)
A Comparison of Incremental Triple Graph Grammar Tools
Triple Graph Grammars (TGGs) are a graph-based and visual technique for specifying bidirectional model transformation. TGGs can be used to transform models from scratch (in the batch mode), but the real potential of TGGs lies in propagating updates incrementally. Existing TGG tools differ considerably in their incremental mode concerning underlying algorithms, user-oriented aspects, incremental update capabilities, and formal properties. Indeed, the different foci, strengths, and weaknesses of current TGG tools in the incremental mode are difficult to discern, especially for non-developers. In this paper, we close this gap by (i) identifying a set of criteria for a qualitative comparison of TGG tools in the incremental mode, (ii) comparing three prominent incremental TGG tools with regard to these criteria, and (iii) conducting a quantitative comparison by means of runtime measurements
Bidirectional Transformation "bx" (Dagstuhl Seminar 11031)
Bidirectional transformations bx are a mechanism for maintaining the
consistency of two (or more) related sources of information. Researchers from
many different areas of computer science including databases (DB), graph
transformations (GT), software engineering (SE), and programming languages (PL)
are actively investigating the use of bx to solve a diverse set of
problems. Although researchers have been actively working on bidirectional
transformations in the above mentioned communities for many years already, there
has been very little cross-discipline interaction and cooperation so far. The
purpose of a first International Meeting on Bidirectional Transformations (GRACE-BX), held in December 2008 near Tokyo, was therefore to bring together international elites, promising young researchers, and leading practitioners to share problems, discuss solutions, and open a dialogue towards understanding the common underpinnings of bx in all these areas. While the GRACE-BX meeting provided a starting point for exchanging ideas in different communities and confirmed our believe that there is a considerable overlap of studied problems and developed solutions in the identified communities, the Dagstuhl Seminar 11031 on ``Bidirectional Transformations\u27\u27 also aimed at providing a place for working together to define a common vocabulary of terms and desirable properties of bidirectional transformations, develop a suite of
benchmarks, solve some challenging problems, and launch joint efforts to form a
living bx community of cooperating experts across the identified
subdisciplines. This report documents the program and the outcomes of Dagstuhl
Seminar 11031 with abstracts of tutorials, working groups, and presentations on
specific research topics
Attribute Handling for Bidirectional Model Transformations: The Triple Graph Grammar Case
When describing bidirectional model transformations in a declarative (relational) way, the relation between structures in source and target models is specified. But not only structural correspondences between source and target models need to be described. Another important aspect is the specification of the relation between attribute values of elements in source and target models. However, most existing approaches either do not allow such a relational kind of specification for attributes or allow it only in a restricted way.We consider the challenge of bridging the gap between a flexible declarative attribute specification and its operationalization for the triple graph grammar (TGG) specification technique as an important representative for describing bidirectional model transformations in a relational way. First, we present a formal way to specify attributes in TGG rules in a purely declarative (relational) way. Then, we give an overview of characteristic barriers that bidirectional model transformation tool developers are confronted with when operationalizing relational attribute constraints for different TGG application scenarios. Moreover, we present pragmatic solutions to overcome the operationalization barriers for different TGG application scenarios in our own TGG implementation
Correctness of Generalisation and Customisation of Concurrent Model Synchronisation Based on Triple Graph Grammars
Triple graph grammars (TGGs) have been successfully applied to specify and analyse bidirectional model transformations. Recently, a formal approach to concurrent model synchronisation has been presented, where a source and a target modification have to be synchronised simultaneously. In this approach, conflicts between the given and propagated source or target model modifications are taken into account. A semi-automatic conflict resolution strategy is proposed, where a formal resolution strategy can be combined with a user-specific strategy. Up to now, our approach requires deterministic propagation operations. In this paper, we want to relax this condition and also consider non-deterministic (conflicting) operations which might require backtracking. For optimisation, we propose to eliminate conflicts between the operational rules of a TGG using the concept of filter NACs. Nevertheless, concurrent synchronisation is non-deterministic from a user perspective: The user may choose between forward synchronisation and backward synchronisation. Moreover, the conflict resolution strategy may result in several solutions from which the user has to select the most adequate one. Hence, we discuss different kinds of customisation of the synchronisation process and explain the impacts of the different strategies
Correctness, completeness and termination of pattern-based model-to-model transformation
The final publication is available at Springer via http://dx.doi.org/10.1007/978-3-642-03741-2_26Proceedings of Third International Conference, CALCO 2009, Udine, Italy, September 7-10, 2009.Model-to-model (M2M) transformation consists in trans- forming models from a source to a target language. Many transformation languages exist, but few of them combine a declarative and relational style with a formal underpinning able to show properties of the transformation. Pattern-based transformation is an algebraic, bidirectional, and relational approach to M2M transformation. Specifications are made of patterns stating the allowed or forbidden relations between source and target models, and then compiled into low level operational mechanisms to perform source-to-target or target-to-source transformations. In this paper, we study the compilation into operational triple graph grammar rules and show: (i) correctness of the compilation of a specification without negative patterns; (ii) termination of the rules, and (iii) completeness, in the sense that every model considered relevant can be built by the rules.Work supported by the Spanish Ministry of Science and Innovation, projects METEORIC (TIN2008-02081), MODUWEB (TIN2006-09678) and FORMALISM (TIN2007-66523). Moreover, part of this work was done during a sabbatical leave of the first author at TU Berlin, with financial support from the Spanish Ministry of Science and Innovation (grant ref. PR2008-0185). We thank the referees for their useful comment
- …