{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,8,3]],"date-time":"2025-08-03T22:47:55Z","timestamp":1754261275219},"reference-count":44,"publisher":"World Scientific Pub Co Pte Lt","issue":"07n08","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Advs. Complex Syst."],"published-print":{"date-parts":[[2014,12]]},"abstract":"<jats:p> It is an intrinsic property of real-world software to evolve, which is usually accompanied by the increase of software complexity and deterioration of software quality. So successful software has to be reconditioned from time to time. Though many refactoring approaches have been proposed, only a few of them are performed at the package level. In this paper, we present a novel approach to refactor the package structure of object-oriented (OO) software. It uses weighted bipartite software networks to represent classes, packages, and their dependencies; it proposes a guidance community detection algorithm (GUIDA) to obtain the optimized package structure; and it finally provides a list of classes as refactoring candidates by comparing the optimized package structure with the real package structure. Through a set of experiments we have shown that the proposed approach is able to identify a majority of classes that experts recognize as refactoring candidates, and the benefits of our approach are illustrated in comparison with other two approaches. <\/jats:p>","DOI":"10.1142\/s0219525914500064","type":"journal-article","created":{"date-parts":[[2014,5,15]],"date-time":"2014-05-15T02:01:36Z","timestamp":1400119296000},"page":"1450006","source":"Crossref","is-referenced-by-count":12,"title":["RECODE: SOFTWARE PACKAGE REFACTORING VIA COMMUNITY DETECTION IN BIPARTITE SOFTWARE NETWORKS"],"prefix":"10.1142","volume":"17","author":[{"given":"WEIFENG","family":"PAN","sequence":"first","affiliation":[{"name":"School of Computer Science and Information Engineering, Zhejiang Gongshang University, Hangzhou, Zhejiang 310018, China"}]},{"given":"BING","family":"LI","sequence":"additional","affiliation":[{"name":"State Key Laboratory of Software Engineering, Wuhan University, Wuhan, Hubei 430072, China"}]},{"given":"BO","family":"JIANG","sequence":"additional","affiliation":[{"name":"School of Computer Science and Information Engineering, Zhejiang Gongshang University, Hangzhou, Zhejiang 310018, China"}]},{"given":"KUN","family":"LIU","sequence":"additional","affiliation":[{"name":"Department of Information Management, Hubei University of Economics, Wuhan, Hubei 430072, China"}]}],"member":"219","published-online":{"date-parts":[[2015,5,20]]},"reference":[{"key":"rf1","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2010.103"},{"key":"rf2","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2004.1265817"},{"key":"rf3","volume-title":"Agile Software Development: Principles, Patterns and Practices","author":"Martin R. C.","year":"2002"},{"key":"rf4","volume-title":"Refactoring: Improving the Design of Existing Code","author":"Fowler M.","year":"1990"},{"key":"rf6","doi-asserted-by":"publisher","DOI":"10.1007\/s11424-011-0319-z"},{"key":"rf7","doi-asserted-by":"publisher","DOI":"10.1103\/PhysRevE.68.046116"},{"key":"rf8","doi-asserted-by":"publisher","DOI":"10.1145\/1060710.1060716"},{"key":"rf9","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2007.1019"},{"key":"rf10","doi-asserted-by":"publisher","DOI":"10.1007\/s11390-010-9399-9"},{"key":"rf11","doi-asserted-by":"publisher","DOI":"10.1073\/pnas.122653799"},{"key":"rf12","doi-asserted-by":"publisher","DOI":"10.1073\/pnas.0601602103"},{"key":"rf13","doi-asserted-by":"publisher","DOI":"10.1016\/j.physrep.2009.11.002"},{"key":"rf14","doi-asserted-by":"publisher","DOI":"10.1016\/j.physa.2013.01.035"},{"key":"rf15","doi-asserted-by":"publisher","DOI":"10.1016\/j.physa.2011.03.036"},{"key":"rf16","volume-title":"Software Engineering: A Practitioner's Approach","author":"Pressman R. S.","year":"2010"},{"key":"rf17","volume-title":"Component Software: Beyond Object-Oriented Programming","author":"Szyperski C.","year":"1998"},{"key":"rf19","doi-asserted-by":"publisher","DOI":"10.5381\/jot.2005.4.9.a1"},{"key":"rf20","doi-asserted-by":"publisher","DOI":"10.1109\/32.799945"},{"key":"rf21","volume-title":"Universal properties of bipartite software graphs","author":"Valverde S.","year":"2004"},{"key":"rf22","doi-asserted-by":"publisher","DOI":"10.1109\/TSMCB.2009.2020206"},{"key":"rf23","doi-asserted-by":"publisher","DOI":"10.1209\/epl\/i2005-10314-9"},{"key":"rf24","doi-asserted-by":"publisher","DOI":"10.1142\/S0219525909002362"},{"key":"rf25","doi-asserted-by":"publisher","DOI":"10.1140\/epjb\/e2011-20448-7"},{"key":"rf27","doi-asserted-by":"publisher","DOI":"10.1126\/science.286.5439.509"},{"key":"rf28","doi-asserted-by":"publisher","DOI":"10.1016\/j.ins.2007.01.021"},{"key":"rf29","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-25501-4_12"},{"key":"rf30","doi-asserted-by":"publisher","DOI":"10.1073\/pnas.1115960108"},{"key":"rf31","doi-asserted-by":"publisher","DOI":"10.1002\/smr.348"},{"key":"rf32","doi-asserted-by":"publisher","DOI":"10.1016\/j.ins.2009.01.011"},{"key":"rf33","doi-asserted-by":"publisher","DOI":"10.1103\/PhysRevE.72.026107"},{"key":"rf34","doi-asserted-by":"publisher","DOI":"10.1007\/s11424-006-0157-6"},{"key":"rf35","first-page":"2371","volume":"34","author":"Li B.","year":"2006","journal-title":"Tien Tzu Hsueh Pao"},{"key":"rf36","doi-asserted-by":"publisher","DOI":"10.1016\/j.physa.2008.06.050"},{"key":"rf37","first-page":"805","volume":"38","author":"Li B.","year":"2008","journal-title":"Adv. Mech."},{"key":"rf38","first-page":"1636","volume":"60","author":"Pan W. F.","year":"2011","journal-title":"World Acad. Sci. Eng. Technol."},{"key":"rf39","volume-title":"Community Organizing: Canadian Experiences","author":"Wharf B.","year":"1997"},{"key":"rf40","doi-asserted-by":"publisher","DOI":"10.1038\/nature03607"},{"key":"rf41","doi-asserted-by":"publisher","DOI":"10.1103\/PhysRevE.76.036102"},{"key":"rf42","doi-asserted-by":"publisher","DOI":"10.1103\/PhysRevE.76.066102"},{"key":"rf43","doi-asserted-by":"publisher","DOI":"10.1103\/PhysRevE.78.016108"},{"key":"rf46","doi-asserted-by":"publisher","DOI":"10.1103\/PhysRevE.83.066120"},{"key":"rf50","doi-asserted-by":"publisher","DOI":"10.1049\/iet-sen.2010.0070"},{"key":"rf51","doi-asserted-by":"publisher","DOI":"10.1007\/s11704-009-0054-y"},{"key":"rf52","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2006.112"}],"container-title":["Advances in Complex Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.worldscientific.com\/doi\/pdf\/10.1142\/S0219525914500064","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,8,7]],"date-time":"2019-08-07T01:31:48Z","timestamp":1565141508000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.worldscientific.com\/doi\/abs\/10.1142\/S0219525914500064"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2014,12]]},"references-count":44,"journal-issue":{"issue":"07n08","published-online":{"date-parts":[[2015,5,20]]},"published-print":{"date-parts":[[2014,12]]}},"alternative-id":["10.1142\/S0219525914500064"],"URL":"https:\/\/doi.org\/10.1142\/s0219525914500064","relation":{},"ISSN":["0219-5259","1793-6802"],"issn-type":[{"value":"0219-5259","type":"print"},{"value":"1793-6802","type":"electronic"}],"subject":[],"published":{"date-parts":[[2014,12]]}}}