Decomposing class responsibilities using distance-based method similarity

Cohesion is a design quality that has a great im- pact on the posterior development and maintenance. As software evolves, the cohesion of the system becomes weaker due to the changes introduced during evolution. Over evolution, a single responsibility class may be unintentionally assigned other resp...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Frontiers of Computer Science 2016-08, Vol.10 (4), p.612-630
Hauptverfasser: LEE, Junha, KIM, Dae-Kyoo, KIM, Suntae, PARK, Sooyong
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 630
container_issue 4
container_start_page 612
container_title Frontiers of Computer Science
container_volume 10
creator LEE, Junha
KIM, Dae-Kyoo
KIM, Suntae
PARK, Sooyong
description Cohesion is a design quality that has a great im- pact on the posterior development and maintenance. As software evolves, the cohesion of the system becomes weaker due to the changes introduced during evolution. Over evolution, a single responsibility class may be unintentionally assigned other responsibilities, which makes the class less cohesive and more complex and consequently increases the complexity of the entire system. There has been much work on decomposing class responsibilities based on internal class relationships such as method-attribute referencing and internal method calls. However, object-oriented systems involve significant external class relationships carrying important behavioral semantics, which should be taken into account in identifying class responsibilities. In this paper, we present a novel approach for identifying and decomposing classes responsibilities based on method similarity using both internal and external class relationships. We extend the existing work for measuring similarity of internal class relationships and present a distance-based method for measuring external class relationships. We evaluate the approach using three open source applications -- JMeter, JHotDraw, and ArgoUML. The evaluation shows that the presented approach improves precision over the existing work. We validate the results using independent samples T-test and ANOVA applied to a set of hypotheses. The validation confirms that the results are statistically significant.
doi_str_mv 10.1007/s11704-015-5001-5
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_journals_2918720756</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><cqvip_id>669659431</cqvip_id><sourcerecordid>2918720756</sourcerecordid><originalsourceid>FETCH-LOGICAL-c392t-ce393a179abaa30b98fefe19529b92094a77c64138100f286aa0a625d6819d783</originalsourceid><addsrcrecordid>eNp9kLtOwzAUhiMEElXpA7BFMAd8iW8jKrdKlVhgtpzESVylceqTDn17XFKVrZMt-f_O-f0lyT1GTxgh8QwYC5RnCLOMIYQzdpXMCFIsI4Ty6_OdyNtkAbBBCBFEGCNklqxebem3gwfXN2nZGYA0WBh8D65wnRudhXT_91g5GE1f2qwwYKt0a8fWVym4retMcOPhLrmpTQd2cTrnyc_72_fyM1t_fayWL-uspIqMWWmpogYLZQpjKCqUrG1tsWJEFSoWzY0QJc8xlfFrNZHcGGQ4YRWXWFVC0nnyOM0dgt_tLYx64_ehjys1UVgKggTjMYWnVBk8QLC1HoLbmnDQGOmjND1J01GaPkrTLDJkYiBm-8aG_8mXIDlBrWtaG2w1RH-g6-D7KC9cRh9OHVvfN7u48lySc8WZyimmvx8IjB8</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2918720756</pqid></control><display><type>article</type><title>Decomposing class responsibilities using distance-based method similarity</title><source>Springer Journals</source><source>ProQuest Central</source><creator>LEE, Junha ; KIM, Dae-Kyoo ; KIM, Suntae ; PARK, Sooyong</creator><creatorcontrib>LEE, Junha ; KIM, Dae-Kyoo ; KIM, Suntae ; PARK, Sooyong</creatorcontrib><description>Cohesion is a design quality that has a great im- pact on the posterior development and maintenance. As software evolves, the cohesion of the system becomes weaker due to the changes introduced during evolution. Over evolution, a single responsibility class may be unintentionally assigned other responsibilities, which makes the class less cohesive and more complex and consequently increases the complexity of the entire system. There has been much work on decomposing class responsibilities based on internal class relationships such as method-attribute referencing and internal method calls. However, object-oriented systems involve significant external class relationships carrying important behavioral semantics, which should be taken into account in identifying class responsibilities. In this paper, we present a novel approach for identifying and decomposing classes responsibilities based on method similarity using both internal and external class relationships. We extend the existing work for measuring similarity of internal class relationships and present a distance-based method for measuring external class relationships. We evaluate the approach using three open source applications -- JMeter, JHotDraw, and ArgoUML. The evaluation shows that the presented approach improves precision over the existing work. We validate the results using independent samples T-test and ANOVA applied to a set of hypotheses. The validation confirms that the results are statistically significant.</description><identifier>ISSN: 2095-2228</identifier><identifier>EISSN: 2095-2236</identifier><identifier>DOI: 10.1007/s11704-015-5001-5</identifier><language>eng</language><publisher>Beijing: Higher Education Press</publisher><subject>class decomposition ; Cohesion ; Complexity ; Computer Science ; Decomposition ; Evolution ; external relationships ; identifying responsibility ; Measurement methods ; method similarity ; Research Article ; Responsibilities ; Semantics ; Similarity</subject><ispartof>Frontiers of Computer Science, 2016-08, Vol.10 (4), p.612-630</ispartof><rights>Copyright reserved, 2016, Higher Education Press and Springer-Verlag Berlin Heidelberg</rights><rights>Higher Education Press and Springer-Verlag Berlin Heidelberg 2016</rights><rights>Higher Education Press and Springer-Verlag Berlin Heidelberg 2016.</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c392t-ce393a179abaa30b98fefe19529b92094a77c64138100f286aa0a625d6819d783</citedby><cites>FETCH-LOGICAL-c392t-ce393a179abaa30b98fefe19529b92094a77c64138100f286aa0a625d6819d783</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Uhttp://image.cqvip.com/vip1000/qk/71018X/71018X.jpg</thumbnail><linktopdf>$$Uhttps://link.springer.com/content/pdf/10.1007/s11704-015-5001-5$$EPDF$$P50$$Gspringer$$H</linktopdf><linktohtml>$$Uhttps://www.proquest.com/docview/2918720756?pq-origsite=primo$$EHTML$$P50$$Gproquest$$H</linktohtml><link.rule.ids>314,776,780,21367,27901,27902,33721,41464,42533,43781,51294</link.rule.ids></links><search><creatorcontrib>LEE, Junha</creatorcontrib><creatorcontrib>KIM, Dae-Kyoo</creatorcontrib><creatorcontrib>KIM, Suntae</creatorcontrib><creatorcontrib>PARK, Sooyong</creatorcontrib><title>Decomposing class responsibilities using distance-based method similarity</title><title>Frontiers of Computer Science</title><addtitle>Front. Comput. Sci</addtitle><addtitle>Frontiers of Computer Science in China</addtitle><description>Cohesion is a design quality that has a great im- pact on the posterior development and maintenance. As software evolves, the cohesion of the system becomes weaker due to the changes introduced during evolution. Over evolution, a single responsibility class may be unintentionally assigned other responsibilities, which makes the class less cohesive and more complex and consequently increases the complexity of the entire system. There has been much work on decomposing class responsibilities based on internal class relationships such as method-attribute referencing and internal method calls. However, object-oriented systems involve significant external class relationships carrying important behavioral semantics, which should be taken into account in identifying class responsibilities. In this paper, we present a novel approach for identifying and decomposing classes responsibilities based on method similarity using both internal and external class relationships. We extend the existing work for measuring similarity of internal class relationships and present a distance-based method for measuring external class relationships. We evaluate the approach using three open source applications -- JMeter, JHotDraw, and ArgoUML. The evaluation shows that the presented approach improves precision over the existing work. We validate the results using independent samples T-test and ANOVA applied to a set of hypotheses. The validation confirms that the results are statistically significant.</description><subject>class decomposition</subject><subject>Cohesion</subject><subject>Complexity</subject><subject>Computer Science</subject><subject>Decomposition</subject><subject>Evolution</subject><subject>external relationships</subject><subject>identifying responsibility</subject><subject>Measurement methods</subject><subject>method similarity</subject><subject>Research Article</subject><subject>Responsibilities</subject><subject>Semantics</subject><subject>Similarity</subject><issn>2095-2228</issn><issn>2095-2236</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2016</creationdate><recordtype>article</recordtype><sourceid>BENPR</sourceid><recordid>eNp9kLtOwzAUhiMEElXpA7BFMAd8iW8jKrdKlVhgtpzESVylceqTDn17XFKVrZMt-f_O-f0lyT1GTxgh8QwYC5RnCLOMIYQzdpXMCFIsI4Ty6_OdyNtkAbBBCBFEGCNklqxebem3gwfXN2nZGYA0WBh8D65wnRudhXT_91g5GE1f2qwwYKt0a8fWVym4retMcOPhLrmpTQd2cTrnyc_72_fyM1t_fayWL-uspIqMWWmpogYLZQpjKCqUrG1tsWJEFSoWzY0QJc8xlfFrNZHcGGQ4YRWXWFVC0nnyOM0dgt_tLYx64_ehjys1UVgKggTjMYWnVBk8QLC1HoLbmnDQGOmjND1J01GaPkrTLDJkYiBm-8aG_8mXIDlBrWtaG2w1RH-g6-D7KC9cRh9OHVvfN7u48lySc8WZyimmvx8IjB8</recordid><startdate>20160801</startdate><enddate>20160801</enddate><creator>LEE, Junha</creator><creator>KIM, Dae-Kyoo</creator><creator>KIM, Suntae</creator><creator>PARK, Sooyong</creator><general>Higher Education Press</general><general>Springer Nature B.V</general><scope>2RA</scope><scope>92L</scope><scope>CQIGP</scope><scope>W92</scope><scope>~WA</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>8FE</scope><scope>8FG</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>P5Z</scope><scope>P62</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope></search><sort><creationdate>20160801</creationdate><title>Decomposing class responsibilities using distance-based method similarity</title><author>LEE, Junha ; KIM, Dae-Kyoo ; KIM, Suntae ; PARK, Sooyong</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c392t-ce393a179abaa30b98fefe19529b92094a77c64138100f286aa0a625d6819d783</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2016</creationdate><topic>class decomposition</topic><topic>Cohesion</topic><topic>Complexity</topic><topic>Computer Science</topic><topic>Decomposition</topic><topic>Evolution</topic><topic>external relationships</topic><topic>identifying responsibility</topic><topic>Measurement methods</topic><topic>method similarity</topic><topic>Research Article</topic><topic>Responsibilities</topic><topic>Semantics</topic><topic>Similarity</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>LEE, Junha</creatorcontrib><creatorcontrib>KIM, Dae-Kyoo</creatorcontrib><creatorcontrib>KIM, Suntae</creatorcontrib><creatorcontrib>PARK, Sooyong</creatorcontrib><collection>维普_期刊</collection><collection>中文科技期刊数据库-CALIS站点</collection><collection>维普中文期刊数据库</collection><collection>中文科技期刊数据库-工程技术</collection><collection>中文科技期刊数据库- 镜像站点</collection><collection>CrossRef</collection><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>ProQuest Central UK/Ireland</collection><collection>Advanced Technologies &amp; Aerospace Database‎ (1962 - current)</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central</collection><collection>ProQuest Central Student</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Computer Science Collection</collection><collection>Computer Science Database</collection><collection>ProQuest advanced technologies &amp; aerospace journals</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><jtitle>Frontiers of Computer Science</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>LEE, Junha</au><au>KIM, Dae-Kyoo</au><au>KIM, Suntae</au><au>PARK, Sooyong</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Decomposing class responsibilities using distance-based method similarity</atitle><jtitle>Frontiers of Computer Science</jtitle><stitle>Front. Comput. Sci</stitle><addtitle>Frontiers of Computer Science in China</addtitle><date>2016-08-01</date><risdate>2016</risdate><volume>10</volume><issue>4</issue><spage>612</spage><epage>630</epage><pages>612-630</pages><issn>2095-2228</issn><eissn>2095-2236</eissn><abstract>Cohesion is a design quality that has a great im- pact on the posterior development and maintenance. As software evolves, the cohesion of the system becomes weaker due to the changes introduced during evolution. Over evolution, a single responsibility class may be unintentionally assigned other responsibilities, which makes the class less cohesive and more complex and consequently increases the complexity of the entire system. There has been much work on decomposing class responsibilities based on internal class relationships such as method-attribute referencing and internal method calls. However, object-oriented systems involve significant external class relationships carrying important behavioral semantics, which should be taken into account in identifying class responsibilities. In this paper, we present a novel approach for identifying and decomposing classes responsibilities based on method similarity using both internal and external class relationships. We extend the existing work for measuring similarity of internal class relationships and present a distance-based method for measuring external class relationships. We evaluate the approach using three open source applications -- JMeter, JHotDraw, and ArgoUML. The evaluation shows that the presented approach improves precision over the existing work. We validate the results using independent samples T-test and ANOVA applied to a set of hypotheses. The validation confirms that the results are statistically significant.</abstract><cop>Beijing</cop><pub>Higher Education Press</pub><doi>10.1007/s11704-015-5001-5</doi><tpages>19</tpages></addata></record>
fulltext fulltext
identifier ISSN: 2095-2228
ispartof Frontiers of Computer Science, 2016-08, Vol.10 (4), p.612-630
issn 2095-2228
2095-2236
language eng
recordid cdi_proquest_journals_2918720756
source Springer Journals; ProQuest Central
subjects class decomposition
Cohesion
Complexity
Computer Science
Decomposition
Evolution
external relationships
identifying responsibility
Measurement methods
method similarity
Research Article
Responsibilities
Semantics
Similarity
title Decomposing class responsibilities using distance-based method similarity
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-11T16%3A27%3A36IST&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=Decomposing%20class%20responsibilities%20using%20distance-based%20method%20similarity&rft.jtitle=Frontiers%20of%20Computer%20Science&rft.au=LEE,%20Junha&rft.date=2016-08-01&rft.volume=10&rft.issue=4&rft.spage=612&rft.epage=630&rft.pages=612-630&rft.issn=2095-2228&rft.eissn=2095-2236&rft_id=info:doi/10.1007/s11704-015-5001-5&rft_dat=%3Cproquest_cross%3E2918720756%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=2918720756&rft_id=info:pmid/&rft_cqvip_id=669659431&rfr_iscdi=true