A Model Driven Reverse Engineering Framework for Generating High Level UML Models From Java']Java Source Code

被引:19
作者
Sabir, Umair [1 ]
Azam, Farooque [1 ]
Ul Haq, Sami [1 ]
Anwar, Muhammad Waseem [1 ]
Haider, Wasi [1 ]
Amjad, Anam [1 ]
机构
[1] Natl Univ Sci & Technol, Coll Elect & Mech Engn, Dept Comp & Software Engn, Islamabad 44000, Pakistan
来源
IEEE ACCESS | 2019年 / 7卷
关键词
Unified modeling language; Reverse engineering; Aging; !text type='Java']Java[!/text; Object oriented modeling; Software; Tools; Model driven reverse engineering; reverse engineering; UML models; legacy systems; !text type='java']java[!/text] code;
D O I
10.1109/ACCESS.2019.2950884
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Legacy systems are large applications which are significant in performing daily organizational operations and cannot be upgraded easily especially in the absence of architectural and design documentation. Software modernization is an emerging field of software engineering, which transforms the legacy systems into new one according to the specified requirements of stakeholders. It mainly deals with improving the architecture, features, rules and data sources of existing system. It always remained a challenging task to achieve high-level representation of legacy systems. In order to achieve this high-level representation, Reverse Engineering (RE) plays an integral role. The issues of traditional RE are overcome with the help of Model Driven Reverse Engineering (MDRE) such as it generates model-based view of the legacy systems, which is comprehensible and easy to understand for practitioners. MDRE is an active research area but it provides limited tool support to extract and model both structural and behavioral aspects of legacy systems. In this paper, a novel MDRE framework named as Source to Model Framework (Src2MoF)is proposed to generate Unified Modeling Language (UML) structural (class) and behavioral (activity) diagrams from the Java source code. Src2MoF is based on the principles of Model Driven Engineering (MDE), which use models as first-class citizens alleviating the complexity of software systems. The contributions of this paper are as follows; first, an Intermediate Model Discoverer (IMD) is developed using source code parser to get the intermediate representation of the system from the existing Java code. Second, an open source transformation engine named UML model generator is implemented using Java, which takes these intermediate models as input, and produce high-level UML models of the subject legacy system. Finally, the two benchmark case studies are presented to depict the relevance and usability of Src2MoF.
引用
收藏
页码:158931 / 158950
页数:20
相关论文
共 28 条
  • [1] [Anonymous], 2011, P 12 INT C COMP SYST, DOI DOI 10.1145/2023607.2023625
  • [2] [Anonymous], KNOWL DISC MET KDM
  • [3] Model-based design verification for embedded systems through SVOCL: an OCL extension for System Verilog
    Anwar, Muhammad Waseem
    Rashid, Muhammad
    Azam, Farooque
    Kashif, Muhammad
    [J]. DESIGN AUTOMATION FOR EMBEDDED SYSTEMS, 2017, 21 (01) : 1 - 36
  • [4] Bergmayr A, 2016, 2016 IEEE/ACM 8TH INTERNATIONAL WORKSHOP ON MODELING IN SOFTWARE ENGINEERING (MISE), P20, DOI [10.1145/2896982.2896984, 10.1109/MiSE.2016.012]
  • [5] MoDisco: A model driven reverse engineering framework
    Bruneliere, Hugo
    Cabot, Jordi
    Dupe, Gregoire
    Madiot, Frederic
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2014, 56 (08) : 1012 - 1032
  • [6] Bruneliere Hugo., 2010, P IEEEACM INT C AUTO, P173
  • [7] Extracting models from source code in software modernization
    Canovas Izquierdo, Javier Luis
    Garcia Molina, Jesus
    [J]. SOFTWARE AND SYSTEMS MODELING, 2014, 13 (02) : 713 - 734
  • [8] An Architecture-Driven Modernization Tool for Calculating Metrics
    Canovas Izquierdo, Javier Luis
    Garcia Molina, Jesus
    [J]. IEEE SOFTWARE, 2010, 27 (04) : 37 - 43
  • [9] Claudia P., 2011, Proceedings of the 2011 Eighth International Conference on Information Technology: New Generations (ITNG), P737, DOI 10.1109/ITNG.2011.130
  • [10] A Patterns based reverse engineering approach for Java']Java source code
    Couto, Rui
    Ribeiro, Antonio Nestor
    Campos, Jose Creissac
    [J]. PROCEEDINGS OF THE 2012 IEEE 35TH SOFTWARE ENGINEERING WORKSHOP (SEW 2012), 2012, : 140 - 147