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...
Gespeichert in:
Veröffentlicht in: | Frontiers of Computer Science 2016-08, Vol.10 (4), p.612-630 |
---|---|
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 | 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 & 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 & aerospace journals</collection><collection>ProQuest Advanced Technologies & 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 |