Loading…

Extracting models from source code in software modernization

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...

Full description

Saved in:
Bibliographic Details
Published in:Software and systems modeling 2014-05, Vol.13 (2), p.713-734
Main Authors: Canovas Izquierdo, Javier Luis, Garcia Molina, Jesus
Format: Article
Language:English
Subjects:
Citations: Items that this one cites
Items that cite this one
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
cited_by cdi_FETCH-LOGICAL-c426t-fb2e66134403e9f2877ab03769e775741b60a07def6d08b4d17dc24b0bd8686a3
cites cdi_FETCH-LOGICAL-c426t-fb2e66134403e9f2877ab03769e775741b60a07def6d08b4d17dc24b0bd8686a3
container_end_page 734
container_issue 2
container_start_page 713
container_title Software and systems modeling
container_volume 13
creator Canovas Izquierdo, Javier Luis
Garcia Molina, Jesus
description 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.
doi_str_mv 10.1007/s10270-012-0270-z
format article
fullrecord <record><control><sourceid>proquest_hal_p</sourceid><recordid>TN_cdi_hal_primary_oai_HAL_hal_00752688v1</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>3287735451</sourcerecordid><originalsourceid>FETCH-LOGICAL-c426t-fb2e66134403e9f2877ab03769e775741b60a07def6d08b4d17dc24b0bd8686a3</originalsourceid><addsrcrecordid>eNp1kE9Lw0AQxRdRsNR-AG8BL3qIzmw2uwl4KaVaoeBFz8sm2dSVJFt3U__007ttpIjgad4MvzfMPELOEa4RQNx4BCogBqTxXmyPyAg55jEmgh0fNOenZOK9KQAYzXPG-Yjczj97p8redKuotZVufFQ720beblypozKMItOFtu4_lNN7xnVmq3pjuzNyUqvG68lPHZPnu_nTbBEvH-8fZtNlXDLK-7guqOYcE8Yg0XlNMyFUAYnguRYiFQwLDgpEpWteQVawCkVVUlZAUWU84yoZk6th74tq5NqZVrkvaZWRi-lS7mYhhJTyLHvHwF4O7NrZt432vWyNL3XTqE7bjZeYMmQhFsoCevEHfQ1fd-GTQGHOcuB5GigcqNJZ752uDxcgyF38cohfhvjlXmyDhw4eH9hupd2vzf-avgH-nYXf</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>1519490695</pqid></control><display><type>article</type><title>Extracting models from source code in software modernization</title><source>Springer Nature</source><creator>Canovas Izquierdo, Javier Luis ; Garcia Molina, Jesus</creator><creatorcontrib>Canovas Izquierdo, Javier Luis ; Garcia Molina, Jesus</creatorcontrib><description>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.</description><identifier>ISSN: 1619-1366</identifier><identifier>EISSN: 1619-1374</identifier><identifier>DOI: 10.1007/s10270-012-0270-z</identifier><language>eng</language><publisher>Berlin/Heidelberg: Springer Berlin Heidelberg</publisher><subject>Compilers ; Computer programs ; Computer Science ; Extraction ; Grammars ; Information Systems Applications (incl.Internet) ; Interpreters ; IT in Business ; Modernization ; Other ; Parsers ; Programming Languages ; Programming Techniques ; Software ; Software Engineering ; Software Engineering/Programming and Operating Systems ; Subscriber line ; Theme Section Paper ; Transformations</subject><ispartof>Software and systems modeling, 2014-05, Vol.13 (2), p.713-734</ispartof><rights>Springer-Verlag 2012</rights><rights>Springer-Verlag Berlin Heidelberg 2014</rights><rights>Distributed under a Creative Commons Attribution 4.0 International License</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c426t-fb2e66134403e9f2877ab03769e775741b60a07def6d08b4d17dc24b0bd8686a3</citedby><cites>FETCH-LOGICAL-c426t-fb2e66134403e9f2877ab03769e775741b60a07def6d08b4d17dc24b0bd8686a3</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>230,314,777,781,882,27905,27906</link.rule.ids><backlink>$$Uhttps://inria.hal.science/hal-00752688$$DView record in HAL$$Hfree_for_read</backlink></links><search><creatorcontrib>Canovas Izquierdo, Javier Luis</creatorcontrib><creatorcontrib>Garcia Molina, Jesus</creatorcontrib><title>Extracting models from source code in software modernization</title><title>Software and systems modeling</title><addtitle>Softw Syst Model</addtitle><description>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.</description><subject>Compilers</subject><subject>Computer programs</subject><subject>Computer Science</subject><subject>Extraction</subject><subject>Grammars</subject><subject>Information Systems Applications (incl.Internet)</subject><subject>Interpreters</subject><subject>IT in Business</subject><subject>Modernization</subject><subject>Other</subject><subject>Parsers</subject><subject>Programming Languages</subject><subject>Programming Techniques</subject><subject>Software</subject><subject>Software Engineering</subject><subject>Software Engineering/Programming and Operating Systems</subject><subject>Subscriber line</subject><subject>Theme Section Paper</subject><subject>Transformations</subject><issn>1619-1366</issn><issn>1619-1374</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2014</creationdate><recordtype>article</recordtype><recordid>eNp1kE9Lw0AQxRdRsNR-AG8BL3qIzmw2uwl4KaVaoeBFz8sm2dSVJFt3U__007ttpIjgad4MvzfMPELOEa4RQNx4BCogBqTxXmyPyAg55jEmgh0fNOenZOK9KQAYzXPG-Yjczj97p8redKuotZVufFQ720beblypozKMItOFtu4_lNN7xnVmq3pjuzNyUqvG68lPHZPnu_nTbBEvH-8fZtNlXDLK-7guqOYcE8Yg0XlNMyFUAYnguRYiFQwLDgpEpWteQVawCkVVUlZAUWU84yoZk6th74tq5NqZVrkvaZWRi-lS7mYhhJTyLHvHwF4O7NrZt432vWyNL3XTqE7bjZeYMmQhFsoCevEHfQ1fd-GTQGHOcuB5GigcqNJZ752uDxcgyF38cohfhvjlXmyDhw4eH9hupd2vzf-avgH-nYXf</recordid><startdate>20140501</startdate><enddate>20140501</enddate><creator>Canovas Izquierdo, Javier Luis</creator><creator>Garcia Molina, Jesus</creator><general>Springer Berlin Heidelberg</general><general>Springer Nature B.V</general><general>Springer Verlag</general><scope>AAYXX</scope><scope>CITATION</scope><scope>3V.</scope><scope>7SC</scope><scope>7XB</scope><scope>8AL</scope><scope>8AO</scope><scope>8FD</scope><scope>8FE</scope><scope>8FG</scope><scope>8FK</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>ARAPS</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>GNUQQ</scope><scope>HCIFZ</scope><scope>JQ2</scope><scope>K7-</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><scope>M0N</scope><scope>P5Z</scope><scope>P62</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PRINS</scope><scope>Q9U</scope><scope>1XC</scope><scope>VOOES</scope></search><sort><creationdate>20140501</creationdate><title>Extracting models from source code in software modernization</title><author>Canovas Izquierdo, Javier Luis ; Garcia Molina, Jesus</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c426t-fb2e66134403e9f2877ab03769e775741b60a07def6d08b4d17dc24b0bd8686a3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2014</creationdate><topic>Compilers</topic><topic>Computer programs</topic><topic>Computer Science</topic><topic>Extraction</topic><topic>Grammars</topic><topic>Information Systems Applications (incl.Internet)</topic><topic>Interpreters</topic><topic>IT in Business</topic><topic>Modernization</topic><topic>Other</topic><topic>Parsers</topic><topic>Programming Languages</topic><topic>Programming Techniques</topic><topic>Software</topic><topic>Software Engineering</topic><topic>Software Engineering/Programming and Operating Systems</topic><topic>Subscriber line</topic><topic>Theme Section Paper</topic><topic>Transformations</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Canovas Izquierdo, Javier Luis</creatorcontrib><creatorcontrib>Garcia Molina, Jesus</creatorcontrib><collection>CrossRef</collection><collection>ProQuest Central (Corporate)</collection><collection>Computer and Information Systems Abstracts</collection><collection>ProQuest Central (purchase pre-March 2016)</collection><collection>Computing Database (Alumni Edition)</collection><collection>ProQuest Pharma Collection</collection><collection>Technology Research Database</collection><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>ProQuest Central (Alumni) (purchase pre-March 2016)</collection><collection>ProQuest Central (Alumni)</collection><collection>ProQuest Central</collection><collection>Advanced Technologies &amp; Aerospace Collection</collection><collection>ProQuest Central Essentials</collection><collection>AUTh Library subscriptions: ProQuest Central</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central Korea</collection><collection>ProQuest Central Student</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Computer Science Collection</collection><collection>Computer Science Database</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><collection>Computing Database</collection><collection>Advanced Technologies &amp; Aerospace Database</collection><collection>ProQuest Advanced Technologies &amp; Aerospace Collection</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>ProQuest Central China</collection><collection>ProQuest Central Basic</collection><collection>Hyper Article en Ligne (HAL)</collection><collection>Hyper Article en Ligne (HAL) (Open Access)</collection><jtitle>Software and systems modeling</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Canovas Izquierdo, Javier Luis</au><au>Garcia Molina, Jesus</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Extracting models from source code in software modernization</atitle><jtitle>Software and systems modeling</jtitle><stitle>Softw Syst Model</stitle><date>2014-05-01</date><risdate>2014</risdate><volume>13</volume><issue>2</issue><spage>713</spage><epage>734</epage><pages>713-734</pages><issn>1619-1366</issn><eissn>1619-1374</eissn><abstract>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.</abstract><cop>Berlin/Heidelberg</cop><pub>Springer Berlin Heidelberg</pub><doi>10.1007/s10270-012-0270-z</doi><tpages>22</tpages><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 1619-1366
ispartof Software and systems modeling, 2014-05, Vol.13 (2), p.713-734
issn 1619-1366
1619-1374
language eng
recordid cdi_hal_primary_oai_HAL_hal_00752688v1
source Springer Nature
subjects Compilers
Computer programs
Computer Science
Extraction
Grammars
Information Systems Applications (incl.Internet)
Interpreters
IT in Business
Modernization
Other
Parsers
Programming Languages
Programming Techniques
Software
Software Engineering
Software Engineering/Programming and Operating Systems
Subscriber line
Theme Section Paper
Transformations
title Extracting models from source code in software modernization
url http://sfxeu10.hosted.exlibrisgroup.com/loughborough?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-20T02%3A35%3A00IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_hal_p&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Extracting%20models%20from%20source%20code%20in%20software%20modernization&rft.jtitle=Software%20and%20systems%20modeling&rft.au=Canovas%20Izquierdo,%20Javier%20Luis&rft.date=2014-05-01&rft.volume=13&rft.issue=2&rft.spage=713&rft.epage=734&rft.pages=713-734&rft.issn=1619-1366&rft.eissn=1619-1374&rft_id=info:doi/10.1007/s10270-012-0270-z&rft_dat=%3Cproquest_hal_p%3E3287735451%3C/proquest_hal_p%3E%3Cgrp_id%3Ecdi_FETCH-LOGICAL-c426t-fb2e66134403e9f2877ab03769e775741b60a07def6d08b4d17dc24b0bd8686a3%3C/grp_id%3E%3Coa%3E%3C/oa%3E%3Curl%3E%3C/url%3E&rft_id=info:oai/&rft_pqid=1519490695&rft_id=info:pmid/&rfr_iscdi=true