147,585 research outputs found

    A Formal Resolution Strategy for Operation-Based Conicts in Model Versioning Using Graph Modications

    Get PDF
    In model-driven engineering, models are primary artifacts and can evolve heavily during their life cycle. Hence, versioning of models is a key technique which has to be offered by an integrated development environment for model-driven engineering. In contrast to textbased versioning systems, our approach takes abstract syntax structures in model states and operational features into account. Considering the abstract syntax of models as graphs, we define a model revision by a span G H, called graph modification, where G and H are the old and new versions, respectively, and D the common subgraph that remains unchanged. Based on notions of behavioural equivalence and parallel independence of graph modifications, we are able to show a Local-Church- Rosser Theorem for graph modifications. The main goal of the paper is to handle conflicts of graph modifications which may occur in the case of parallel dependent graph modifications. The main result is a general merge construction for graph modifications that resolves all conflicts simultaneously in the sense that for delete-insert conflicts insertion has priority over deletion

    A graph-based aspect interference detection approach for UML-based aspect-oriented models

    Get PDF
    Aspect Oriented Modeling (AOM) techniques facilitate separate modeling of concerns and allow for a more flexible composition of these than traditional modeling technique. While this improves the understandability of each submodel, in order to reason about the behavior of the composed system and to detect conflicts among submodels, automated tool support is required. Current techniques for conflict detection among aspects generally have at least one of the following weaknesses. They require to manually model the abstract semantics for each system; or they derive the system semantics from code assuming one specific aspect-oriented language. Defining an extra semantics model for verification bears the risk of inconsistencies between the actual and the verified design; verifying only at implementation level hinders fixng errors in earlier phases. We propose a technique for fully automatic detection of conflicts between aspects at the model level; more specifically, our approach works on UML models with an extension for modeling pointcuts and advice. As back-end we use a graph-based model checker, for which we have defined an operational semantics of UML diagrams, pointcuts and advice. In order to simulate the system, we automatically derive a graph model from the diagrams. The result is another graph, which represents all possible program executions, and which can be verified against a declarative specification of invariants.\ud To demonstrate our approach, we discuss a UML-based AOM model of the "Crisis Management System" and a possible design and evolution scenario. The complexity of the system makes con°icts among composed aspects hard to detect: already in the case of two simulated aspects, the state space contains 623 di®erent states and 9 different execution paths. Nevertheless, in case the right pruning methods are used, the state-space only grows linearly with the number of aspects; therefore, the automatic analysis scales

    A UML/OCL framework for the analysis of fraph transformation rules

    Get PDF
    In this paper we present an approach for the analysis of graph transformation rules based on an intermediate OCL representation. We translate different rule semantics into OCL, together with the properties of interest (like rule applicability, conflicts or independence). The intermediate representation serves three purposes: (i) it allows the seamless integration of graph transformation rules with the MOF and OCL standards, and enables taking the meta-model and its OCL constraints (i.e. well-formedness rules) into account when verifying the correctness of the rules; (ii) it permits the interoperability of graph transformation concepts with a number of standards-based model-driven development tools; and (iii) it makes available a plethora of OCL tools to actually perform the rule analysis. This approach is especially useful to analyse the operational semantics of Domain Specific Visual Languages. We have automated these ideas by providing designers with tools for the graphical specification and analysis of graph transformation rules, including a backannotation mechanism that presents the analysis results in terms of the original language notation

    Conflict Detection for Model Versioning Based on Graph Modifications: Long Version

    Get PDF
    In model-driven engineering, models are primary artifacts and can evolve heavily during their life cycle. Therefore, versioning of models is a key technique which has to be offered by an integrated development environment for model-driven engineering. In contrast to text-based versioning systems we present an approach which takes abstract syntax structures in model states and operational features into account. Considering the abstract syntax of models as graphs, we define model revisions as graph modifications which are not necessarily rule-based. Building up on the DPO approach to graph transformations, we define two different kinds of conflict detection: (1) the check for operation-based conflicts, and (2) the check for state-based conflicts on results of merged graph modifications

    Bin Packing and Related Problems: General Arc-flow Formulation with Graph Compression

    Full text link
    We present an exact method, based on an arc-flow formulation with side constraints, for solving bin packing and cutting stock problems --- including multi-constraint variants --- by simply representing all the patterns in a very compact graph. Our method includes a graph compression algorithm that usually reduces the size of the underlying graph substantially without weakening the model. As opposed to our method, which provides strong models, conventional models are usually highly symmetric and provide very weak lower bounds. Our formulation is equivalent to Gilmore and Gomory's, thus providing a very strong linear relaxation. However, instead of using column-generation in an iterative process, the method constructs a graph, where paths from the source to the target node represent every valid packing pattern. The same method, without any problem-specific parameterization, was used to solve a large variety of instances from several different cutting and packing problems. In this paper, we deal with vector packing, graph coloring, bin packing, cutting stock, cardinality constrained bin packing, cutting stock with cutting knife limitation, cutting stock with binary patterns, bin packing with conflicts, and cutting stock with binary patterns and forbidden pairs. We report computational results obtained with many benchmark test data sets, all of them showing a large advantage of this formulation with respect to the traditional ones

    Hierarchical Graph Models for Conflict Resolution

    Get PDF
    The hierarchical graph model is developed for representing strategic conflicts having a hierarchical structure. More specifically, in a hierarchical graph model, one or more decision makers (DMs) at a higher level are involved in lower level or local disputes, such as when a central government is participating in separate disputes with different provincial governments. These newly defined hierarchical models constitute significant expansions of the Graph Model for Conflict Resolution (GMCR) methodology. Moreover, relationships are developed between preference and stability in local conflicts and those in the higher level conflict. To test and refine the various hierarchical definitions, the new approach is applied to three real world conflicts: controversies over water diversions in China, sales competition of aircraft between Airbus and Boeing, and the dispute between the USA and China over greenhouse gas emissions. DMs are provided with possible resolutions and guidance for courses of actions to follow, which can be beneficial in a hierarchical conflict. GMCR is a conflict analysis methodology that possesses a flexible structure which allows it to be applied to a wide range of real world disputes. Hierarchy in a graph model is defined in this thesis for describing the structure of a complex conflict that includes smaller interrelated conflicts. In a hierarchical graph model, DMs are classified as common decision makers (CDMs) and local decision makers (LDMs). They can initiate different types of moves, and have interrelated preferences. Among the different hierarchical graph models, the basic hierarchical graph model has the simplest structure, containing three DMs: a CDM appearing in both of the two smaller conflicts, plus one LDM in each of the two smaller conflicts. A duo hierarchical graph model has two CDMs and two local conflicts. Each LDM, together with both CDMs, appears in one local conflict. A general hierarchical model may include any number of smaller or local conflicts, and any number of CDMs and LDMs. Stability results in a graph model reflect different solution concepts or stability definitions. Because of the connections between local conflicts, stability in the hierarchical model can be partially obtained from the stability calculations in local models. One component of this thesis is the investigation of the stability interrelationships between stabilities in a hierarchical graph and those in the local conflicts. Hierarchical graph models can be applied to various practical conflicts. Water diversion conflicts in China, caused by the implementation of the South-North Water Diversion Project, are an excellent example. The duo hierarchical graph model can model a competition between Airbus and Boeing, regarding the marketing of wide-body and narrow-body aircraft in the Asia Pacific region. Conflicts between China and the USA over compliance with a bilateral greenhouse gas emissions agreement are modelled by a hierarchal graph model with a more complicated structure. The disputes take place between the two national governments, both of which also face domestic opposition and concerns

    EMF Model Refactoring based on Graph Transformation Concepts

    Get PDF
    The Eclipse Modeling Framework (EMF) provides a modeling and code generation framework for Eclipse applications based on structured data models. Within model driven software development based on EMF, refactoring of EMF models become a key activity. In this paper, we present an approach to define EMF model refactoring methods as transformation rules being applied in place on EMF models. Performing an EMF model refactoring, EMF transformation rules are applied and can be translated to corresponding graph transformation rules, as in the graph transformation environment AGG. If the resulting EMF model is consistent, the corresponding result graph is equivalent and can be used for validating EMF model refactoring. Results on conflicts and dependencies of refactorings for example, can help the developer to decide which refactoring is most suitable for a given model and why
    corecore