Towards the Identification of Cross-Cutting Concerns: A Comprehensive Dynamic Approach Based on Execution Relations
Aspect-oriented software development (AOSD) helps to solve the problem of low scalability and high maintenance costs of legacy systems caused by code scattering and tangling by extracting cross-cutting concerns and inserting them into aspects. Identifying the cross-cutting concerns of legacy systems...
Gespeichert in:
Veröffentlicht in: | IEICE Transactions on Information and Systems 2014/05/01, Vol.E97.D(5), pp.1235-1243 |
---|---|
Hauptverfasser: | , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 1243 |
---|---|
container_issue | 5 |
container_start_page | 1235 |
container_title | IEICE Transactions on Information and Systems |
container_volume | E97.D |
creator | YU, Dongjin SU, Xiang MU, Yunlei |
description | Aspect-oriented software development (AOSD) helps to solve the problem of low scalability and high maintenance costs of legacy systems caused by code scattering and tangling by extracting cross-cutting concerns and inserting them into aspects. Identifying the cross-cutting concerns of legacy systems is the key to reconstructing such systems using the approach of AOSD. However, current dynamic approaches to the identification of cross-cutting concerns simply check the methods' execution sequence, but do not consider their calling context, which may cause low precision. In this paper, we propose an improved comprehensive approach to the identification of candidate cross-cutting concerns of legacy systems based on the combination of the analysis of recurring execution relations and fan-ins. We first analyse the execution trace with a given test case and identify four types of execution relations for neighbouring methods: exit-entry, entry-exit, entry-entry and exit-exit. Afterwards, we measure the methods' left cross-cutting degrees and right cross-cutting degrees. The former ensures that the candidate recurs in a similar running context, whereas the latter indicates how many times the candidate cross-cuts different methods. The final candidates are then obtained from those high fan-in methods, which not only cross-cut others more times than a predefined threshold, but are always entered or left under the same running context. The experiment conducted on three open source systems shows that our approach improves the precision of identifying cross-cutting concerns compared with tradition ones. |
doi_str_mv | 10.1587/transinf.E97.D.1235 |
format | Article |
fullrecord | <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_miscellaneous_1551043563</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>1551043563</sourcerecordid><originalsourceid>FETCH-LOGICAL-c510t-ab957ac1fc0f691052cb94a45d56d53b78f059f918d059ec86108b5e0496b8133</originalsourceid><addsrcrecordid>eNpdkEtPwzAQhC0EEuXxC7j4yCXFW8d5cCtpgUqVkFA5W46zpkapU2wX6L8npYAQp93DfDO7Q8gFsCGIIr-KXrlgnRlOy3w4GcKIiwMygDwVCfAMDsmAlZAlheCjY3ISwgtjUIxADEhYdO_KN4HGJdJZgy5aY7WKtnO0M7TyXQhJtYnRumdadU6jd-Gajvt9tfa4xD73Delk69TKajper32n9JLeqIAN7U2mH6g3X3aP2H75hjNyZFQb8Px7npKn2-miuk_mD3ezajxPtAAWE1WXIlcajGYmK4GJka7LVKWiEVkjeJ0XhonSlFA0_URdZMCKWiBLy6wugPNTcrn37W963WCIcmWDxrZVDrtNkCD6nJSLbCfle6nePezRyLW3K-W3EpjcVSx_KpZ9xXIidxX31GxPvYSonvGXUT5a3eJ_RvxhfzV6qbxExz8BrBeNuA</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>1551043563</pqid></control><display><type>article</type><title>Towards the Identification of Cross-Cutting Concerns: A Comprehensive Dynamic Approach Based on Execution Relations</title><source>J-STAGE Free</source><source>EZB-FREE-00999 freely available EZB journals</source><creator>YU, Dongjin ; SU, Xiang ; MU, Yunlei</creator><creatorcontrib>YU, Dongjin ; SU, Xiang ; MU, Yunlei</creatorcontrib><description>Aspect-oriented software development (AOSD) helps to solve the problem of low scalability and high maintenance costs of legacy systems caused by code scattering and tangling by extracting cross-cutting concerns and inserting them into aspects. Identifying the cross-cutting concerns of legacy systems is the key to reconstructing such systems using the approach of AOSD. However, current dynamic approaches to the identification of cross-cutting concerns simply check the methods' execution sequence, but do not consider their calling context, which may cause low precision. In this paper, we propose an improved comprehensive approach to the identification of candidate cross-cutting concerns of legacy systems based on the combination of the analysis of recurring execution relations and fan-ins. We first analyse the execution trace with a given test case and identify four types of execution relations for neighbouring methods: exit-entry, entry-exit, entry-entry and exit-exit. Afterwards, we measure the methods' left cross-cutting degrees and right cross-cutting degrees. The former ensures that the candidate recurs in a similar running context, whereas the latter indicates how many times the candidate cross-cuts different methods. The final candidates are then obtained from those high fan-in methods, which not only cross-cut others more times than a predefined threshold, but are always entered or left under the same running context. The experiment conducted on three open source systems shows that our approach improves the precision of identifying cross-cutting concerns compared with tradition ones.</description><identifier>ISSN: 0916-8532</identifier><identifier>EISSN: 1745-1361</identifier><identifier>DOI: 10.1587/transinf.E97.D.1235</identifier><language>eng</language><publisher>The Institute of Electronics, Information and Communication Engineers</publisher><subject>aspects ; cross-cutting concerns ; Dynamical systems ; Dynamics ; execution relations ; execution trace ; fan-in ; Freeware ; Legacy ; Neighbouring ; Running ; running context ; Software development ; Tangling</subject><ispartof>IEICE Transactions on Information and Systems, 2014/05/01, Vol.E97.D(5), pp.1235-1243</ispartof><rights>2014 The Institute of Electronics, Information and Communication Engineers</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><cites>FETCH-LOGICAL-c510t-ab957ac1fc0f691052cb94a45d56d53b78f059f918d059ec86108b5e0496b8133</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,1883,4024,27923,27924,27925</link.rule.ids></links><search><creatorcontrib>YU, Dongjin</creatorcontrib><creatorcontrib>SU, Xiang</creatorcontrib><creatorcontrib>MU, Yunlei</creatorcontrib><title>Towards the Identification of Cross-Cutting Concerns: A Comprehensive Dynamic Approach Based on Execution Relations</title><title>IEICE Transactions on Information and Systems</title><addtitle>IEICE Trans. Inf. & Syst.</addtitle><description>Aspect-oriented software development (AOSD) helps to solve the problem of low scalability and high maintenance costs of legacy systems caused by code scattering and tangling by extracting cross-cutting concerns and inserting them into aspects. Identifying the cross-cutting concerns of legacy systems is the key to reconstructing such systems using the approach of AOSD. However, current dynamic approaches to the identification of cross-cutting concerns simply check the methods' execution sequence, but do not consider their calling context, which may cause low precision. In this paper, we propose an improved comprehensive approach to the identification of candidate cross-cutting concerns of legacy systems based on the combination of the analysis of recurring execution relations and fan-ins. We first analyse the execution trace with a given test case and identify four types of execution relations for neighbouring methods: exit-entry, entry-exit, entry-entry and exit-exit. Afterwards, we measure the methods' left cross-cutting degrees and right cross-cutting degrees. The former ensures that the candidate recurs in a similar running context, whereas the latter indicates how many times the candidate cross-cuts different methods. The final candidates are then obtained from those high fan-in methods, which not only cross-cut others more times than a predefined threshold, but are always entered or left under the same running context. The experiment conducted on three open source systems shows that our approach improves the precision of identifying cross-cutting concerns compared with tradition ones.</description><subject>aspects</subject><subject>cross-cutting concerns</subject><subject>Dynamical systems</subject><subject>Dynamics</subject><subject>execution relations</subject><subject>execution trace</subject><subject>fan-in</subject><subject>Freeware</subject><subject>Legacy</subject><subject>Neighbouring</subject><subject>Running</subject><subject>running context</subject><subject>Software development</subject><subject>Tangling</subject><issn>0916-8532</issn><issn>1745-1361</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2014</creationdate><recordtype>article</recordtype><recordid>eNpdkEtPwzAQhC0EEuXxC7j4yCXFW8d5cCtpgUqVkFA5W46zpkapU2wX6L8npYAQp93DfDO7Q8gFsCGIIr-KXrlgnRlOy3w4GcKIiwMygDwVCfAMDsmAlZAlheCjY3ISwgtjUIxADEhYdO_KN4HGJdJZgy5aY7WKtnO0M7TyXQhJtYnRumdadU6jd-Gajvt9tfa4xD73Delk69TKajper32n9JLeqIAN7U2mH6g3X3aP2H75hjNyZFQb8Px7npKn2-miuk_mD3ezajxPtAAWE1WXIlcajGYmK4GJka7LVKWiEVkjeJ0XhonSlFA0_URdZMCKWiBLy6wugPNTcrn37W963WCIcmWDxrZVDrtNkCD6nJSLbCfle6nePezRyLW3K-W3EpjcVSx_KpZ9xXIidxX31GxPvYSonvGXUT5a3eJ_RvxhfzV6qbxExz8BrBeNuA</recordid><startdate>2014</startdate><enddate>2014</enddate><creator>YU, Dongjin</creator><creator>SU, Xiang</creator><creator>MU, Yunlei</creator><general>The Institute of Electronics, Information and Communication Engineers</general><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>2014</creationdate><title>Towards the Identification of Cross-Cutting Concerns: A Comprehensive Dynamic Approach Based on Execution Relations</title><author>YU, Dongjin ; SU, Xiang ; MU, Yunlei</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c510t-ab957ac1fc0f691052cb94a45d56d53b78f059f918d059ec86108b5e0496b8133</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2014</creationdate><topic>aspects</topic><topic>cross-cutting concerns</topic><topic>Dynamical systems</topic><topic>Dynamics</topic><topic>execution relations</topic><topic>execution trace</topic><topic>fan-in</topic><topic>Freeware</topic><topic>Legacy</topic><topic>Neighbouring</topic><topic>Running</topic><topic>running context</topic><topic>Software development</topic><topic>Tangling</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>YU, Dongjin</creatorcontrib><creatorcontrib>SU, Xiang</creatorcontrib><creatorcontrib>MU, Yunlei</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>IEICE Transactions on Information and Systems</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>YU, Dongjin</au><au>SU, Xiang</au><au>MU, Yunlei</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Towards the Identification of Cross-Cutting Concerns: A Comprehensive Dynamic Approach Based on Execution Relations</atitle><jtitle>IEICE Transactions on Information and Systems</jtitle><addtitle>IEICE Trans. Inf. & Syst.</addtitle><date>2014</date><risdate>2014</risdate><volume>E97.D</volume><issue>5</issue><spage>1235</spage><epage>1243</epage><pages>1235-1243</pages><issn>0916-8532</issn><eissn>1745-1361</eissn><abstract>Aspect-oriented software development (AOSD) helps to solve the problem of low scalability and high maintenance costs of legacy systems caused by code scattering and tangling by extracting cross-cutting concerns and inserting them into aspects. Identifying the cross-cutting concerns of legacy systems is the key to reconstructing such systems using the approach of AOSD. However, current dynamic approaches to the identification of cross-cutting concerns simply check the methods' execution sequence, but do not consider their calling context, which may cause low precision. In this paper, we propose an improved comprehensive approach to the identification of candidate cross-cutting concerns of legacy systems based on the combination of the analysis of recurring execution relations and fan-ins. We first analyse the execution trace with a given test case and identify four types of execution relations for neighbouring methods: exit-entry, entry-exit, entry-entry and exit-exit. Afterwards, we measure the methods' left cross-cutting degrees and right cross-cutting degrees. The former ensures that the candidate recurs in a similar running context, whereas the latter indicates how many times the candidate cross-cuts different methods. The final candidates are then obtained from those high fan-in methods, which not only cross-cut others more times than a predefined threshold, but are always entered or left under the same running context. The experiment conducted on three open source systems shows that our approach improves the precision of identifying cross-cutting concerns compared with tradition ones.</abstract><pub>The Institute of Electronics, Information and Communication Engineers</pub><doi>10.1587/transinf.E97.D.1235</doi><tpages>9</tpages><oa>free_for_read</oa></addata></record> |
fulltext | fulltext |
identifier | ISSN: 0916-8532 |
ispartof | IEICE Transactions on Information and Systems, 2014/05/01, Vol.E97.D(5), pp.1235-1243 |
issn | 0916-8532 1745-1361 |
language | eng |
recordid | cdi_proquest_miscellaneous_1551043563 |
source | J-STAGE Free; EZB-FREE-00999 freely available EZB journals |
subjects | aspects cross-cutting concerns Dynamical systems Dynamics execution relations execution trace fan-in Freeware Legacy Neighbouring Running running context Software development Tangling |
title | Towards the Identification of Cross-Cutting Concerns: A Comprehensive Dynamic Approach Based on Execution Relations |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-01T14%3A40%3A00IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Towards%20the%20Identification%20of%20Cross-Cutting%20Concerns:%20A%20Comprehensive%20Dynamic%20Approach%20Based%20on%20Execution%20Relations&rft.jtitle=IEICE%20Transactions%20on%20Information%20and%20Systems&rft.au=YU,%20Dongjin&rft.date=2014&rft.volume=E97.D&rft.issue=5&rft.spage=1235&rft.epage=1243&rft.pages=1235-1243&rft.issn=0916-8532&rft.eissn=1745-1361&rft_id=info:doi/10.1587/transinf.E97.D.1235&rft_dat=%3Cproquest_cross%3E1551043563%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=1551043563&rft_id=info:pmid/&rfr_iscdi=true |