131,901 research outputs found

    Generic Model Refactorings

    Get PDF
    Many modeling languages share some common concepts and principles. For example, Java, MOF, and UML share some aspects of the concepts\ud of classes, methods, attributes, and inheritance. However, model\ud transformations such as refactorings specified for a given language\ud cannot be readily reused for another language because their related\ud metamodels may be structurally different. Our aim is to enable a\ud flexible reuse of model transformations across various metamodels.\ud Thus, in this paper, we present an approach allowing the specification\ud of generic model transformations, in particular refactorings, so\ud that they can be applied to different metamodels. Our approach relies\ud on two mechanisms: (1) an adaptation based mainly on the weaving\ud of aspects; (2) the notion of model typing, an extension of object\ud typing in the model-oriented context. We validated our approach by\ud performing some experiments that consisted of specifying three well\ud known refactorings (Encapsulate Field, Move Method, and Pull Up Method)\ud and applying each of them onto three different metamodels (Java,\ud MOF, and UML)

    A General Methodology for Internalising Multi-level Model Typing

    Get PDF
    Multilevel Modelling approaches allow for an arbitrary number of abstraction levels in typing chains. In this paper, a transformation of a multi-level typing chain into a single all-covering representing model is proposed. This comprehensive model is of equal size as the most concrete model in the chain and encodes all typing information in its labels, such that the typing chain can completely be restored. This guideline for maintaining multi-level typing chains in respective implementations of multi-level typing environments is based on a categorical equivalence theorem, which we generalize to a more convenient graph-oriented version.acceptedVersio
    • …
    corecore