On the reuse and recommendation of model refactoring specifications

被引:15
|
作者
Reimann, Jan [1 ]
Seifert, Mirko [2 ]
Assmann, Uwe [1 ]
机构
[1] Tech Univ Dresden, Inst Software & Multimediatech, D-01062 Dresden, Germany
[2] DevBoost GmbH, D-10179 Berlin, Germany
来源
SOFTWARE AND SYSTEMS MODELING | 2013年 / 12卷 / 03期
关键词
Generic model refactoring; Role-based refactoring; Refactoring reuse; Refactoring recommendation; Role modelling; TRANSFORMATION;
D O I
10.1007/s10270-012-0243-2
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Refactorings can be used to improve the structure of software artefacts while preserving the semantics of the encapsulated information. Various types of refactorings have been proposed and implemented for programming languages (e.g., Java or C#). With the advent of (MDSD), a wealth of modelling languages rises and the need for restructuring models similar to programs has emerged. Since parts of these modelling languages are often very similar, we consider it beneficial to reuse the core transformation steps of refactorings across languages. In this sense, reusing the abstract transformation steps and the abstract participating elements suggests itself. Previous work in this field indicates that refactorings can be specified generically to foster their reuse. However, existing approaches can handle certain types of modelling languages only and solely reuse refactorings once per language. In this paper, a novel approach based on role models to specify generic refactorings is presented. Role models are suitable for this problem since they support declaration of roles which have to be played in a certain context. Assigned to generic refactoring, contexts are different refactorings and roles are the participating elements. We discuss how this resolves the limitations of previous works, as well as how specific refactorings can be defined as extensions to generic ones. The approach was implemented in our tool Refactory based on the (EMF) and evaluated using multiple modelling languages and refactorings. In addition, this paper investigates on the recommendation of refactoring specifications. This is motivated by the fact that language designers have many possibilities to enable refactorings in their modelling languages with regard to the language structures. To overcome this problem and to support language designers in deciding which refactorings to enable, we propose a solution and a prototypical implementation.
引用
收藏
页码:579 / 596
页数:18
相关论文
共 11 条
  • [1] On the reuse and recommendation of model refactoring specifications
    Jan Reimann
    Mirko Seifert
    Uwe Aßmann
    Software & Systems Modeling, 2013, 12 : 579 - 596
  • [2] Recommending Model Refactoring Rules from Refactoring Examples
    Mokaddem, Chihab Eddine
    Sahraoui, Houari
    Syriani, Eugene
    21ST ACM/IEEE INTERNATIONAL CONFERENCE ON MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS (MODELS 2018), 2018, : 257 - 267
  • [3] MIRROR: multi-objective refactoring recommendation via correlation analysis
    Yang Zhang
    Ke Guan
    Lining Fang
    Automated Software Engineering, 2024, 31
  • [4] MIRROR: multi-objective refactoring recommendation via correlation analysis
    Zhang, Yang
    Guan, Ke
    Fang, Lining
    AUTOMATED SOFTWARE ENGINEERING, 2024, 31 (01)
  • [5] Pattern-Based Model Refactoring
    El-Sharqwi, Mohamed
    Mahdi, Hani
    El-Madah, Islam
    ICCES'2010: THE 2010 INTERNATIONAL CONFERENCE ON COMPUTER ENGINEERING & SYSTEMS, 2010, : 301 - 306
  • [6] Move method refactoring recommendation based on deep learning and LLM-generated information
    Zhang, Yang
    Li, Yanlei
    Meredith, Grant
    Zheng, Kun
    Li, Xiaobin
    INFORMATION SCIENCES, 2025, 697
  • [7] Model refactoring using examples: a search-based approach
    Ghannem, Adnane
    El Boussaidi, Ghizlane
    Kessentini, Marouane
    JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2014, 26 (07) : 692 - 713
  • [8] A Replicable Valorisation Model for the Adaptive Reuse of Rationalist Architecture
    Lami, Isabella M. M.
    Todella, Elena
    Prataviera, Enrica
    LAND, 2023, 12 (04)
  • [9] Safe reuse in modelling language engineering using model subtyping with OCL constraints
    Boronat, Artur
    SOFTWARE AND SYSTEMS MODELING, 2023, 22 (03): : 797 - 818
  • [10] ACTIVITYDIAGRAM2PETRINET: TRANSFORMATION-BASED MODEL IN ACCORDANCE WITH THE OMG SYSML SPECIFICATIONS
    Foures, Damien
    Albert, Vincent
    Pascal, Jean-Claude
    EUROPEAN SIMULATION AND MODELLING CONFERENCE 2011, 2011, : 429 - +