Methodbook: Recommending Move Method Refactorings via Relational Topic Models

During software maintenance and evolution the internal structure of the software system undergoes continuous changes. These modifications drift the source code away from its original design, thus deteriorating its quality, including cohesion and coupling of classes. Several refactoring methods have...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEEE transactions on software engineering 2014-07, Vol.40 (7), p.671-694
Hauptverfasser: Bavota, Gabriele, Oliveto, Rocco, Gethers, Malcom, Poshyvanyk, Denys, De Lucia, Andrea
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 694
container_issue 7
container_start_page 671
container_title IEEE transactions on software engineering
container_volume 40
creator Bavota, Gabriele
Oliveto, Rocco
Gethers, Malcom
Poshyvanyk, Denys
De Lucia, Andrea
description During software maintenance and evolution the internal structure of the software system undergoes continuous changes. These modifications drift the source code away from its original design, thus deteriorating its quality, including cohesion and coupling of classes. Several refactoring methods have been proposed to overcome this problem. In this paper we propose a novel technique to identify Move Method refactoring opportunities and remove the Feature Envy bad smell from source code. Our approach, coined as Methodbook, is based on relational topic models (RTM), a probabilistic technique for representing and modeling topics, documents (in our case methods) and known relationships among these. Methodbook uses RTM to analyze both structural and textual information gleaned from software to better support move method refactoring. We evaluated Methodbook in two case studies. The first study has been executed on six software systems to analyze if the move method operations suggested by Methodbook help to improve the design quality of the systems as captured by quality metrics. The second study has been conducted with eighty developers that evaluated the refactoring recommendations produced by Methodbook. The achieved results indicate that Methodbook provides accurate and meaningful recommendations for move method refactoring operations.
doi_str_mv 10.1109/TSE.2013.60
format Article
fullrecord <record><control><sourceid>proquest_RIE</sourceid><recordid>TN_cdi_proquest_journals_1546620686</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>6684534</ieee_id><sourcerecordid>1677904441</sourcerecordid><originalsourceid>FETCH-LOGICAL-c351t-85abb07e138ef3205e4e40222df64caf02ff2e519a2351e3db6d58e4a78153243</originalsourceid><addsrcrecordid>eNpd0E1Lw0AQBuBFFKzVk0cvAS-CpM5-ZuNNSv2AFkHredkks5qadGs2Lfjv3RLx4GngnYdheAk5pzChFPKb5etswoDyiYIDMqI5z1MuGRySEUCuUyl1fkxOQlgBgMwyOSKLBfYfviq8_7xNXrD0bYvrql6_Jwu_w2TYxoWzZe-7mIdkV9sYNLav_do2ydJv6jLqCptwSo6cbQKe_c4xebufLaeP6fz54Wl6N09LLmmfammLAjKkXKPjDCQKFMAYq5wSpXXAnGMoaW5Z9MirQlVSo7CZppIzwcfkari76fzXFkNv2jqU2DR2jX4bDFVZloMQgkZ6-Y-u_LaLj0clhVIMlFZRXQ-q7HwIHTqz6erWdt-GgtlXa2K1Zl-tURD1xaBrRPyTSmkhueA_4ExzGw</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>1546620686</pqid></control><display><type>article</type><title>Methodbook: Recommending Move Method Refactorings via Relational Topic Models</title><source>IEEE Electronic Library (IEL)</source><creator>Bavota, Gabriele ; Oliveto, Rocco ; Gethers, Malcom ; Poshyvanyk, Denys ; De Lucia, Andrea</creator><creatorcontrib>Bavota, Gabriele ; Oliveto, Rocco ; Gethers, Malcom ; Poshyvanyk, Denys ; De Lucia, Andrea</creatorcontrib><description>During software maintenance and evolution the internal structure of the software system undergoes continuous changes. These modifications drift the source code away from its original design, thus deteriorating its quality, including cohesion and coupling of classes. Several refactoring methods have been proposed to overcome this problem. In this paper we propose a novel technique to identify Move Method refactoring opportunities and remove the Feature Envy bad smell from source code. Our approach, coined as Methodbook, is based on relational topic models (RTM), a probabilistic technique for representing and modeling topics, documents (in our case methods) and known relationships among these. Methodbook uses RTM to analyze both structural and textual information gleaned from software to better support move method refactoring. We evaluated Methodbook in two case studies. The first study has been executed on six software systems to analyze if the move method operations suggested by Methodbook help to improve the design quality of the systems as captured by quality metrics. The second study has been conducted with eighty developers that evaluated the refactoring recommendations produced by Methodbook. The achieved results indicate that Methodbook provides accurate and meaningful recommendations for move method refactoring operations.</description><identifier>ISSN: 0098-5589</identifier><identifier>EISSN: 1939-3520</identifier><identifier>DOI: 10.1109/TSE.2013.60</identifier><identifier>CODEN: IESEDJ</identifier><language>eng</language><publisher>New York: IEEE</publisher><subject>Computer programs ; Couplings ; Design engineering ; Deterioration ; Educational institutions ; Electronic mail ; empirical studies ; Evolution ; Mathematical problems ; Measurement ; Object oriented modeling ; Probability ; Refactoring ; relational topic models ; Resin transfer molding ; Smell ; Software ; Software engineering ; Software quality ; Software systems ; Source code ; Studies ; Systems design</subject><ispartof>IEEE transactions on software engineering, 2014-07, Vol.40 (7), p.671-694</ispartof><rights>Copyright IEEE Computer Society Jul 1, 2014</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c351t-85abb07e138ef3205e4e40222df64caf02ff2e519a2351e3db6d58e4a78153243</citedby><cites>FETCH-LOGICAL-c351t-85abb07e138ef3205e4e40222df64caf02ff2e519a2351e3db6d58e4a78153243</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/6684534$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>314,776,780,792,27901,27902,54733</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/6684534$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Bavota, Gabriele</creatorcontrib><creatorcontrib>Oliveto, Rocco</creatorcontrib><creatorcontrib>Gethers, Malcom</creatorcontrib><creatorcontrib>Poshyvanyk, Denys</creatorcontrib><creatorcontrib>De Lucia, Andrea</creatorcontrib><title>Methodbook: Recommending Move Method Refactorings via Relational Topic Models</title><title>IEEE transactions on software engineering</title><addtitle>TSE</addtitle><description>During software maintenance and evolution the internal structure of the software system undergoes continuous changes. These modifications drift the source code away from its original design, thus deteriorating its quality, including cohesion and coupling of classes. Several refactoring methods have been proposed to overcome this problem. In this paper we propose a novel technique to identify Move Method refactoring opportunities and remove the Feature Envy bad smell from source code. Our approach, coined as Methodbook, is based on relational topic models (RTM), a probabilistic technique for representing and modeling topics, documents (in our case methods) and known relationships among these. Methodbook uses RTM to analyze both structural and textual information gleaned from software to better support move method refactoring. We evaluated Methodbook in two case studies. The first study has been executed on six software systems to analyze if the move method operations suggested by Methodbook help to improve the design quality of the systems as captured by quality metrics. The second study has been conducted with eighty developers that evaluated the refactoring recommendations produced by Methodbook. The achieved results indicate that Methodbook provides accurate and meaningful recommendations for move method refactoring operations.</description><subject>Computer programs</subject><subject>Couplings</subject><subject>Design engineering</subject><subject>Deterioration</subject><subject>Educational institutions</subject><subject>Electronic mail</subject><subject>empirical studies</subject><subject>Evolution</subject><subject>Mathematical problems</subject><subject>Measurement</subject><subject>Object oriented modeling</subject><subject>Probability</subject><subject>Refactoring</subject><subject>relational topic models</subject><subject>Resin transfer molding</subject><subject>Smell</subject><subject>Software</subject><subject>Software engineering</subject><subject>Software quality</subject><subject>Software systems</subject><subject>Source code</subject><subject>Studies</subject><subject>Systems design</subject><issn>0098-5589</issn><issn>1939-3520</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2014</creationdate><recordtype>article</recordtype><sourceid>RIE</sourceid><recordid>eNpd0E1Lw0AQBuBFFKzVk0cvAS-CpM5-ZuNNSv2AFkHredkks5qadGs2Lfjv3RLx4GngnYdheAk5pzChFPKb5etswoDyiYIDMqI5z1MuGRySEUCuUyl1fkxOQlgBgMwyOSKLBfYfviq8_7xNXrD0bYvrql6_Jwu_w2TYxoWzZe-7mIdkV9sYNLav_do2ydJv6jLqCptwSo6cbQKe_c4xebufLaeP6fz54Wl6N09LLmmfammLAjKkXKPjDCQKFMAYq5wSpXXAnGMoaW5Z9MirQlVSo7CZppIzwcfkari76fzXFkNv2jqU2DR2jX4bDFVZloMQgkZ6-Y-u_LaLj0clhVIMlFZRXQ-q7HwIHTqz6erWdt-GgtlXa2K1Zl-tURD1xaBrRPyTSmkhueA_4ExzGw</recordid><startdate>20140701</startdate><enddate>20140701</enddate><creator>Bavota, Gabriele</creator><creator>Oliveto, Rocco</creator><creator>Gethers, Malcom</creator><creator>Poshyvanyk, Denys</creator><creator>De Lucia, Andrea</creator><general>IEEE</general><general>IEEE Computer Society</general><scope>97E</scope><scope>RIA</scope><scope>RIE</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>JQ2</scope><scope>K9.</scope><scope>7SC</scope><scope>7SP</scope><scope>8FD</scope><scope>F28</scope><scope>FR3</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>20140701</creationdate><title>Methodbook: Recommending Move Method Refactorings via Relational Topic Models</title><author>Bavota, Gabriele ; Oliveto, Rocco ; Gethers, Malcom ; Poshyvanyk, Denys ; De Lucia, Andrea</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c351t-85abb07e138ef3205e4e40222df64caf02ff2e519a2351e3db6d58e4a78153243</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2014</creationdate><topic>Computer programs</topic><topic>Couplings</topic><topic>Design engineering</topic><topic>Deterioration</topic><topic>Educational institutions</topic><topic>Electronic mail</topic><topic>empirical studies</topic><topic>Evolution</topic><topic>Mathematical problems</topic><topic>Measurement</topic><topic>Object oriented modeling</topic><topic>Probability</topic><topic>Refactoring</topic><topic>relational topic models</topic><topic>Resin transfer molding</topic><topic>Smell</topic><topic>Software</topic><topic>Software engineering</topic><topic>Software quality</topic><topic>Software systems</topic><topic>Source code</topic><topic>Studies</topic><topic>Systems design</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Bavota, Gabriele</creatorcontrib><creatorcontrib>Oliveto, Rocco</creatorcontrib><creatorcontrib>Gethers, Malcom</creatorcontrib><creatorcontrib>Poshyvanyk, Denys</creatorcontrib><creatorcontrib>De Lucia, Andrea</creatorcontrib><collection>IEEE All-Society Periodicals Package (ASPP) 2005-present</collection><collection>IEEE All-Society Periodicals Package (ASPP) 1998-Present</collection><collection>IEEE Electronic Library (IEL)</collection><collection>CrossRef</collection><collection>ProQuest Computer Science Collection</collection><collection>ProQuest Health &amp; Medical Complete (Alumni)</collection><collection>Computer and Information Systems Abstracts</collection><collection>Electronics &amp; Communications Abstracts</collection><collection>Technology Research Database</collection><collection>ANTE: Abstracts in New Technology &amp; Engineering</collection><collection>Engineering Research 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><jtitle>IEEE transactions on software engineering</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Bavota, Gabriele</au><au>Oliveto, Rocco</au><au>Gethers, Malcom</au><au>Poshyvanyk, Denys</au><au>De Lucia, Andrea</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Methodbook: Recommending Move Method Refactorings via Relational Topic Models</atitle><jtitle>IEEE transactions on software engineering</jtitle><stitle>TSE</stitle><date>2014-07-01</date><risdate>2014</risdate><volume>40</volume><issue>7</issue><spage>671</spage><epage>694</epage><pages>671-694</pages><issn>0098-5589</issn><eissn>1939-3520</eissn><coden>IESEDJ</coden><abstract>During software maintenance and evolution the internal structure of the software system undergoes continuous changes. These modifications drift the source code away from its original design, thus deteriorating its quality, including cohesion and coupling of classes. Several refactoring methods have been proposed to overcome this problem. In this paper we propose a novel technique to identify Move Method refactoring opportunities and remove the Feature Envy bad smell from source code. Our approach, coined as Methodbook, is based on relational topic models (RTM), a probabilistic technique for representing and modeling topics, documents (in our case methods) and known relationships among these. Methodbook uses RTM to analyze both structural and textual information gleaned from software to better support move method refactoring. We evaluated Methodbook in two case studies. The first study has been executed on six software systems to analyze if the move method operations suggested by Methodbook help to improve the design quality of the systems as captured by quality metrics. The second study has been conducted with eighty developers that evaluated the refactoring recommendations produced by Methodbook. The achieved results indicate that Methodbook provides accurate and meaningful recommendations for move method refactoring operations.</abstract><cop>New York</cop><pub>IEEE</pub><doi>10.1109/TSE.2013.60</doi><tpages>24</tpages><oa>free_for_read</oa></addata></record>
fulltext fulltext_linktorsrc
identifier ISSN: 0098-5589
ispartof IEEE transactions on software engineering, 2014-07, Vol.40 (7), p.671-694
issn 0098-5589
1939-3520
language eng
recordid cdi_proquest_journals_1546620686
source IEEE Electronic Library (IEL)
subjects Computer programs
Couplings
Design engineering
Deterioration
Educational institutions
Electronic mail
empirical studies
Evolution
Mathematical problems
Measurement
Object oriented modeling
Probability
Refactoring
relational topic models
Resin transfer molding
Smell
Software
Software engineering
Software quality
Software systems
Source code
Studies
Systems design
title Methodbook: Recommending Move Method Refactorings via Relational Topic Models
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-06T08%3A14%3A11IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_RIE&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Methodbook:%20Recommending%20Move%20Method%20Refactorings%20via%20Relational%20Topic%20Models&rft.jtitle=IEEE%20transactions%20on%20software%20engineering&rft.au=Bavota,%20Gabriele&rft.date=2014-07-01&rft.volume=40&rft.issue=7&rft.spage=671&rft.epage=694&rft.pages=671-694&rft.issn=0098-5589&rft.eissn=1939-3520&rft.coden=IESEDJ&rft_id=info:doi/10.1109/TSE.2013.60&rft_dat=%3Cproquest_RIE%3E1677904441%3C/proquest_RIE%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=1546620686&rft_id=info:pmid/&rft_ieee_id=6684534&rfr_iscdi=true