173 research outputs found

    Simulating Multigraph Transformations Using Simple Graphs

    Get PDF
    Application of graph transformations for software verification and model transformation is an emergent field of research. In particular, graph transformation approaches provide a natural way of modelling object oriented systems and semantics of object-oriented languages.\ud \ud There exist a number of tools for graph transformations that are often specialised in a particular kind of graphs and/or graph transformation approaches, depending on the desired application domain. The main drawback of this diversity is the lack of interoperability.\ud \ud In this paper we show how (typed) multigraph production systems can be translated into (typed) simple-graph production systems. The presented construction enables the use of multigraphs with DPO transformation approach in tools that only support simple graphs with SPO transformation approach, e.g. the GROOVE tool

    Parsing of Hyperedge Replacement Grammars with Graph Parser Combinators

    Get PDF
    Graph parsing is known to be computationally expensive. For this reason the construction of special-purpose parsers may be beneficial for particular graph languages. In the domain of string languages so-called parser combinators are very popular for writing efficient parsers. Inspired by this approach, we have proposed graph parser combinators in a recent paper, a framework for the rapid development of special-purpose graph parsers. Our basic idea has been to define primitive graph parsers for elementary graph components and a set of combinators for the flexible construction of more advanced graph parsers. Following this approach, a declarative, but also more operational description of a graph language can be given that is a parser at the same time. In this paper we address the question how the process of writing correct parsers on top of our framework can be simplified by demonstrating the translation of hyperedge replacement grammars into graph parsers. The result are recursive descent parsers as known from string parsing with some additional nondeterminism

    Refactoring of Model Transformations

    Get PDF
    Model-to-model transformations between visual languages are often defined by typed, attributed graph transformation systems. Here, the source and target languages of the model transformation are given by type graphs (or meta models), and the relation between source and target model elements is captured by graph transformation rules. On the other hand, refactoring is a technique to improve the structure of a model in order to make it easier to comprehend, more maintainable and amenable to change. Refactoring can be defined by graph transformation rules, too. In the context of model transformation, problems arise when models of the source language of a model transformation become subject to refactoring. It may well be the case that after the refactoring, the model transformation rules are no longer applicable because the refactoring induced structural changes in the models. In this paper, we consider a graph-transformation-based evolution of model transformations which adapts the model transformation rules to the refactored models. In the main result, we show that under suitable assumptions, the evolution leads to an adapted model transformation which is compatible with refactoring of the source and target models. In a small case study, we apply our techniques to a well-known model transformation from statecharts to Petri nets

    Graph Transformation Model of a Triangulated Network of Mobile Units

    Get PDF
    A triangulated network of mobile units is modelled by means of a graph trans-formation system in which graph nodes are labelled with geometric coordinates and edges are labelled with distances. Nodes represent mobile units and edges represent wireless radio communication links between them. Under concurrency the model can describe interesting practical scenarios, for example swarms of taxis in an urban environment. The contribution features the enhancement of a graph transformation system by trigonometric calculations. By the way it is also shown that the classical negative edge condition has only limited applicability if a strict locality principle is assumed, and "vice versa" that there are reasonable modeling cases in which this locality principle itself fails to suffice

    The GP Programming System

    Get PDF
    We describe the programming system for the graph-transformation language GP, focusing on the implementation of its compiler and abstract machine. We also compare the system's performance with other graph-transformation systems. The GP language is based on conditional rule schemata and comes with a simple formal semantics which maps input graphs to sets of output graphs. The implementation faithfully matches the semantics by using backtracking and allowing to compute all possible results for a given input

    Resource-based enactment and adaptation of workflows from activity diagrams

    Get PDF
    Workflow management deals with different types of dependencies among tasks, in particular data- and policy-driven. The ability to reason on dependencies of different type allows workflow designers to consider different alternatives, or to define customized flows, reducing non-determinism. We propose a resource-centered view, in which both data-dependency between tasks and plan-dependent ordering of tasks are expressed as production and consumption of resources. This view is translated into a rule-based formalism, expressed in terms of multi-set rewriting for workflow enactment. In turn, rules are themselves seen as resources, so that they are prone to the same rewriting process, in order to redefine process schemas. We show how workflows expressed as activity diagrams can be translated to the proposed formalism, exploiting enforced generative patterns applied to triple graph grammars, and how redefinition of workflow processes can occur through typical patterns of adaptation. We also discuss possible concrete syntaxes for the obtained rules

    Visualization of Distributed Algorithms Based on Graph Relabelling Systems1 1This work has been supported by the European TMR research network GETGRATS, and by the ā€œConseil RĆ©gional d' Aquitaneā€.

    Get PDF
    AbstractIn this paper, we present a uniform approach to simulate and visualize distributed algorithms encoded by graph relabelling systems. In particular, we use the distributed applications of local relabelling rules to automatically display the execution of the whole distributed algorithm. We have developed a Java prototype tool for implementing and visualizing distributed algorithms. We illustrate the different aspects of our framework using various distributed algorithms including election and spanning trees

    A Query Language With the Star Operator

    Get PDF
    Model pattern matching is an important operation in model transformation and therefore in model-driven development tools. In this paper we present a pattern based approach that includes a star operator that can be used to represent recursive or hierarchical structures in models. We also present a matching algorithm, motivating examples and we discuss its implementation in a modeling tool

    Foreword

    Get PDF

    Model transformations and Tool Integration

    Get PDF
    Model transformations are increasingly recognised as being of significant importance to many areas of software development and integration. Recent attention on model transformations has particularly focused on the OMGs Queries/Views/Transformations (QVT) Request for Proposals (RFP). In this paper I motivate the need for dedicated approaches to model transformations, particularly for the data involved in tool integration, outline the challenges involved, and then present a number of technologies and techniques which allow the construction of flexible, powerful and practical model transformations
    • ā€¦
    corecore