Extracting models from source code in software modernization

被引:0
|
作者
Javier Luis Cánovas Izquierdo
Jesús García Molina
机构
[1] University of Murcia,Depto. de Informática y Sistemas, Facultad de Informática
[2] Universidad de Murcia,AtlanMod
[3] Campus de Espinardo,undefined
[4] Ecole des Mines de Nantes,undefined
[5] INRIA,undefined
[6] LINA,undefined
[7] EMN,undefined
[8] École des Mines de Nantes,undefined
来源
关键词
Model-driven engineering; Model-driven software development; Domain-specific languages; Software modernization; Model-driven software modernization;
D O I
暂无
中图分类号
学科分类号
摘要
Model-driven software modernization is a discipline in which model-driven development (MDD) techniques are used in the modernization of legacy systems. When existing software artifacts are evolved, they must be transformed into models to apply MDD techniques such as model transformations. Since most modernization scenarios (e.g., application migration) involve dealing with code in general-purpose programming languages (GPL), the extraction of models from GPL code is an essential task in a model-based modernization process. This activity could be performed by tools to bridge grammarware and MDD technical spaces, which is normally carried out by dedicated parsers. Grammar-to-Model Transformation Language (Gra2MoL) is a domain-specific language (DSL) tailored to the extraction of models from GPL code. This DSL is actually a text-to-model transformation language which can be applied to any code conforming to a grammar. Gra2MoL aims to reduce the effort needed to implement grammarware-MDD bridges, since building dedicated parsers is a complex and time-consuming task. Like ATL and RubyTL languages, Gra2MoL incorporates the binding concept needed to write mappings between grammar elements and metamodel elements in a simple declarative style. The language also provides a powerful query language which eases the retrieval of scattered information in syntax trees. Moreover, it incorporates extensibility and grammar reuse mechanisms. This paper describes Gra2MoL in detail and includes a case study based on the application of the language in the extraction of models from Delphi code.
引用
收藏
页码:713 / 734
页数:21
相关论文
共 50 条
  • [21] Mapping Source Code to Software Architecture by Leveraging Large Language Models
    Johansson, Nils
    Caporuscio, Mauro
    Olsson, Tobias
    SOFTWARE ARCHITECTURE, ECSA 2024 TRACKS AND WORKSHOPS, 2024, 14937 : 133 - 149
  • [22] Approximating the Evolution History of Software from Source Code
    Kanda, Tetsuya
    Ishio, Takashi
    Inoue, Katsuro
    IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, 2015, E98D (06): : 1185 - 1193
  • [23] Extracting Customer Traces from CRMS: From Software to Process Models
    Osman, Cristina-Claudia
    Ghiran, Ana-Maria
    12TH INTERNATIONAL CONFERENCE INTERDISCIPLINARITY IN ENGINEERING (INTER-ENG 2018), 2019, 32 : 619 - 626
  • [24] Extracting Relative Thresholds for Source Code Metrics
    Oliveira, Paloma
    Valente, Marco Tulio
    Lima, Fernando Paim
    2014 SOFTWARE EVOLUTION WEEK - IEEE CONFERENCE ON SOFTWARE MAINTENANCE, REENGINEERING, AND REVERSE ENGINEERING (CSMR-WCRE), 2014, : 254 - +
  • [25] Athena: A framework to automatically generate security test oracle via extracting policies from source code and intended software behaviour
    Homaei, Hossein
    Shahriari, Hamid Reza
    INFORMATION AND SOFTWARE TECHNOLOGY, 2019, 107 : 112 - 124
  • [26] A Mechanism for Automatically Extracting Reusable and Maintainable Code Idioms from Software Repositories
    Papoudakis, Argyrios
    Karanikiotis, Thomas
    Symeonidis, Andreas L.
    PROCEEDINGS OF THE 17TH INTERNATIONAL CONFERENCE ON SOFTWARE TECHNOLOGIES (ICSOFT), 2022, : 79 - 90
  • [27] Semi-Automatically Extracting Features from Source Code of Android Applications
    Kanda, Tetsuya
    Manabe, Yuki
    Ishio, Takashi
    Matsushita, Makoto
    Inoue, Katsuro
    IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, 2013, E96D (12): : 2857 - 2859
  • [28] Java']JavaCompExt: Extracting Architectural Elements from Java']Java Source Code
    Anquetil, Nicolas
    Royer, Jean-Claude
    Andre, Pascal
    Ardourel, Gilles
    Hnetynka, Petr
    Poch, Tomas
    Petrascu, Dragos
    Petrascu, Vladiela
    16TH WORKING CONFERENCE ON REVERSE ENGINEERING (WCRE 2009), 2009, : 317 - +
  • [29] Research on Extracting Design Patterns from Source Code based on dynamic analysis
    Li Wen-jin
    Chen Guang-ping
    Pan Ju-long
    2011 INTERNATIONAL CONFERENCE ON COMPUTER APPLICATION AND EDUCATION TECHNOLOGY (ICCAET 2011), 2011, : 369 - 373
  • [30] Behavioural Verification in Embedded Software, from Model to Source Code
    Pires, Anthony Fernandes
    Polacsek, Thomas
    Wiels, Virginie
    Duprat, Stephane
    MODEL-DRIVEN ENGINEERING LANGUAGES AND SYSTEMS, 2013, 8107 : 320 - 335