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

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEICE Transactions on Information and Systems 2014/05/01, Vol.E97.D(5), pp.1235-1243
Hauptverfasser: YU, Dongjin, SU, Xiang, MU, Yunlei
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. &amp; 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. &amp; 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