Model-Driven Java']Java Code Refactoring

被引:1
|
作者
Hamioud, Sohaib [1 ]
Atil, Fadila [1 ]
机构
[1] Badji Mokhtar Univ, Dept Comp Sci, Complex Syst Engn Lab LISCO, Annaba 23000, Algeria
关键词
code refactoring; metamodeling; model-driven engineering; LANGUAGE;
D O I
10.2298/CSIS141025015H
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Refactoring is an important technique for restructuring code to improve its design and increase programmer productivity and code reuse. Performing refactorings manually, however, is tedious, time consuming and error-prone. Thus, providing an automated support for them is necessary. Unfortunately even in our days, such automation is still not easily achieved and requires formal specifications of the refactoring process. Moreover, extensibility and tool development automation are factors that should be taken into consideration when designing and implementing automated refactorings. In this paper, we introduce a model-driven approach where refactoring features, such as code representation, analysis and transformation adopt models as first-class artifacts. We aim at exploring the value of model transformation and code generation when formalizing refactorings and developing tool support. The presented approach is applied to the refactoring of Java code using a prototypical implementation based on the Eclipse Modeling Framework, a language workbench, a Java metamodel and a set of OMG standards.
引用
收藏
页码:375 / 403
页数:29
相关论文
共 50 条
  • [1] Model-Driven Fault Injection in Java']Java Source Code
    Rodrigues Jr, Elder
    Montecchi, Leonardo
    Ceccarelli, Andrea
    [J]. 2020 IEEE 31ST INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE 2020), 2020, : 414 - 425
  • [2] Correct Refactoring of Concurrent Java']Java Code
    Schaefer, Max
    Dolby, Julian
    Sridharan, Manu
    Torlak, Emina
    Tip, Frank
    [J]. ECOOP 2010: OBJECT-ORIENTED PROGRAMMING, 2010, 6183 : 225 - +
  • [3] Model-driven Consolidation of Java']Java Workloads on Multicores
    Ansaloni, Danilo
    Chen, Lydia Y.
    Smirni, Evgenia
    Binder, Walter
    [J]. 2012 42ND ANNUAL IEEE/IFIP INTERNATIONAL CONFERENCE ON DEPENDABLE SYSTEMS AND NETWORKS (DSN), 2012,
  • [4] Model-Driven Development of Java']Java Enterprise Applications
    Pflueger, Andre
    Golubski, Wolfgang
    Haubold, Tobias
    [J]. 22ND INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING & KNOWLEDGE ENGINEERING (SEKE 2010), 2010, : 787 - 790
  • [5] LiveRef: a Tool for Live Refactoring Java']Java Code
    Fernandes, Sara
    Aguiar, Ademar
    Restivo, Andre
    [J]. PROCEEDINGS OF THE 37TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE 2022, 2022,
  • [6] Refactoring Java']Java Code for Automatic API Generation
    Liu, Genggeng
    Hu, Chuanshumin
    Chen, Shihong
    Zhang, Ying
    Chen, Xing
    [J]. 2018 INTERNATIONAL CONFERENCE ON CLOUD COMPUTING, BIG DATA AND BLOCKCHAIN (ICCBB 2018), 2018, : 114 - 119
  • [7] Mutation Testing for Java']Java based on Model-Driven Development
    Gonzalez, Ariel
    Luna, Carlos
    Bressan, Gonzalo
    [J]. 2018 XLIV LATIN AMERICAN COMPUTER CONFERENCE (CLEI 2018), 2018, : 1 - 10
  • [8] Refactoring a Java']Java code base to AspectJ: An illustrative example
    Monteiro, MP
    Fernandes, JM
    [J]. ICSM 2005: PROCEEDINGS OF THE 21ST IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, 2005, : 17 - 26
  • [9] A Refactoring Suggestion Tool for Removing Clones in Java']Java Code
    Fontana, Francesca Arcelli
    Zanoni, Marco
    Zanoni, Francesco
    [J]. ERCIM NEWS, 2014, (99): : 25 - 26
  • [10] Component-Based Java']Java Legacy Code Refactoring
    Arboleda, Hugo
    Paz, Andres
    Royer, Jean-Claude
    [J]. REVISTA FACULTAD DE INGENIERIA-UNIVERSIDAD DE ANTIOQUIA, 2013, (68): : 104 - 114