{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,2]],"date-time":"2026-05-02T06:57:08Z","timestamp":1777705028953,"version":"3.51.4"},"reference-count":32,"publisher":"SAGE Publications","issue":"6","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["IFS"],"published-print":{"date-parts":[[2022,11,11]]},"abstract":"<jats:p>Software developers find it difficult to select the specific detection rules for different smell types. A set of metrics, thresholds and labels constitutes a code smells detection rule. The generated rules must be optimized efficiently to ensure successful rule selection. The objective is to identify how rules are generated from the labeled data set and selected using bio-inspired algorithms. The goals are met by employing the C4.5 and RIPPER algorithms to generate rules then, optimized using two bio-inspired algorithms, the Salp Swarm Algorithm (SSA) and Cockroach Swarm Optimization (CSO). The optimized sets of rules are evaluated using the similarity metrics which are computed with the help of expected and the detected code smells. The common rule subsets from SSA and CSO are merged to produce the optimal rule subset which can be used for code smell detection. The proposed work has been experimented on Xerces-J, Log4J, Gantt Project and JFreeChart dataset. The work detected code smells with an accuracy of 91.7% for Xerces-J, 96.7% for JFreeChart, 88.6% for Gantt Project and 98% for Log4J. The findings will be useful for both theory and research since the proposed framework allows focusing on rule selection.<\/jats:p>","DOI":"10.3233\/jifs-220474","type":"journal-article","created":{"date-parts":[[2022,7,26]],"date-time":"2022-07-26T13:21:35Z","timestamp":1658841695000},"page":"7243-7260","source":"Crossref","is-referenced-by-count":1,"title":["Metric-based rule optimizing system for code smell detection using Salp Swarm and Cockroach Swarm algorithm"],"prefix":"10.1177","volume":"43","author":[{"given":"D. Juliet","family":"Thessalonica","sequence":"first","affiliation":[{"name":"Ramanujan Computing Centre, Anna University, Chennai, Tamil Nadu, India"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"H.","family":"Khanna Nehemiah","sequence":"additional","affiliation":[{"name":"Ramanujan Computing Centre, Anna University, Chennai, Tamil Nadu, India"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"S.","family":"Sreejith","sequence":"additional","affiliation":[{"name":"Alumnus, Ramanujan Computing Centre, Anna University, Chennai, Tamil Nadu, India"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"A.","family":"Kannan","sequence":"additional","affiliation":[{"name":"School of Computer Science and Engineering, Vellore Institute of Technology, Vellore, India"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"179","reference":[{"key":"10.3233\/JIFS-220474_ref1","unstructured":"Fowler M. Refactoring: improving the design of existing code,Westford, Massachusetts, Addison-Wesley Longman, 1999."},{"key":"10.3233\/JIFS-220474_ref2","unstructured":"Lanza M. , Marinescu R. Object-oriented metrics in practice: using software metrics to characterize, evaluate, and improve the design of object-oriented systems, Heidelberg, Germany, Springer-Verlag, 2007."},{"key":"10.3233\/JIFS-220474_ref3","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2005.63"},{"issue":"11","key":"10.3233\/JIFS-220474_ref4","doi-asserted-by":"publisher","first-page":"867","DOI":"10.1002\/smr.1737","article-title":"A review of code smell mining techniques","volume":"27","author":"Rasool","year":"2015","journal-title":"Journal of Software: Evolution and Process"},{"key":"10.3233\/JIFS-220474_ref5","doi-asserted-by":"publisher","DOI":"10.1109\/CSMR.2008.4493342"},{"key":"10.3233\/JIFS-220474_ref7","unstructured":"Wieman R. Anti-pattern Scanner: an approach to detect anti-patterns and design violations, Delft, Netherlands, Lambert Academic Publishing, 2011."},{"key":"10.3233\/JIFS-220474_ref9","unstructured":"Saranya G. , Nehemiah K. , Arputharaj K. and Vimala S. , Detecting shotgun surgery bad smell using similarity measure distribution model, , 15 (2016), 3205\u20133216."},{"issue":"1","key":"10.3233\/JIFS-220474_ref11","doi-asserted-by":"crossref","first-page":"49","DOI":"10.1007\/s10664-019-09739-0","article-title":"Improving change prediction models with code smell-related information","volume":"25","author":"Catolino","year":"2020","journal-title":"Empirical Software Engineering"},{"issue":"5","key":"10.3233\/JIFS-220474_ref12","doi-asserted-by":"publisher","first-page":"372","DOI":"10.3390\/e20050372","article-title":"Software code smell prediction model using Shannon, R\u00e1\u00b4nyi and Tsallis entropies","volume":"20","author":"Gupta","year":"2018","journal-title":"Entropy"},{"key":"10.3233\/JIFS-220474_ref13","doi-asserted-by":"publisher","first-page":"1","DOI":"10.17485\/ijst\/2018\/v11i20\/122472","article-title":"Prioritizing Code Smell Correction Task using Strength Pareto Evolutionary Algorithm,","volume":"11","author":"Saranya","year":"2015","journal-title":"Indian Journal of Science and Technology"},{"key":"10.3233\/JIFS-220474_ref14","doi-asserted-by":"publisher","DOI":"10.1109\/ESEM.2015.7321194"},{"issue":"1","key":"10.3233\/JIFS-220474_ref15","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/2675067","article-title":"Code-smell detection as a bilevel problem","volume":"24","author":"Sahin","year":"2014","journal-title":"ACM Transactions on Software Engineering and Methodology"},{"issue":"3","key":"10.3233\/JIFS-220474_ref16","doi-asserted-by":"publisher","first-page":"186","DOI":"10.1504\/IJBIC.2018.094624","article-title":"Hybrid particle swarm optimisation with mutation for code smell detection","volume":"12","author":"Saranya","year":"2018","journal-title":"International Journal of Bio-Inspired Computation"},{"issue":"4","key":"10.3233\/JIFS-220474_ref17","doi-asserted-by":"publisher","first-page":"947","DOI":"10.1007\/s11219-015-9271-9","article-title":"Boussaidi and M. Kessentini, On the use of design defect examples to detect model refactoring opportunities","volume":"24","author":"Ghannem","year":"2016","journal-title":"Software Quality Journal"},{"key":"10.3233\/JIFS-220474_ref18","doi-asserted-by":"publisher","first-page":"25","DOI":"10.14257\/ijast.2013.60.03","article-title":"A comparative study on code smell detection tools","volume":"60","author":"Hamid","year":"2013","journal-title":"International Journal of Advanced Science and Technology"},{"issue":"3","key":"10.3233\/JIFS-220474_ref19","doi-asserted-by":"publisher","first-page":"1631","DOI":"10.1016\/j.aej.2017.07.006","article-title":"Model level code smell detection using egapso based on similarity measures","volume":"57","author":"Saranya","year":"2018","journal-title":"Alexandria Engineering Journal"},{"key":"10.3233\/JIFS-220474_ref20","doi-asserted-by":"publisher","first-page":"130","DOI":"10.1016\/j.infsof.2017.09.002","article-title":"Are you smelling it? Investigating how similar developers detect code smells,","volume":"93","author":"Hozano","year":"2018","journal-title":"Information and Software Technology"},{"key":"10.3233\/JIFS-220474_ref21","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2013.56"},{"issue":"3","key":"10.3233\/JIFS-220474_ref22","doi-asserted-by":"publisher","first-page":"1143","DOI":"10.1007\/s10664-015-9378-4","article-title":"Comparing and experimenting machine learning techniques for code smell detection","volume":"21","author":"Fontana","year":"2016","journal-title":"Empirical Software Engineering"},{"key":"10.3233\/JIFS-220474_ref23","doi-asserted-by":"publisher","first-page":"43","DOI":"10.1016\/j.knosys.2017.04.014","article-title":"Code smell severity classification usingmachine learning techniques","volume":"12","author":"Fontana","year":"2017","journal-title":"Knowledge\u2013BasedSystems"},{"key":"10.3233\/JIFS-220474_ref25","doi-asserted-by":"publisher","first-page":"163","DOI":"10.1016\/j.advengsoft.2017.07.002","article-title":"Salp Swarm Algorithm: A bio-inspired optimizer for engineering design problems,","volume":"114","author":"Mirjalili","year":"2017","journal-title":"Advances in Engineering Software"},{"issue":"2","key":"10.3233\/JIFS-220474_ref27","doi-asserted-by":"crossref","first-page":"483","DOI":"10.1007\/s13369-016-2238-8","article-title":"A lightweight approach for detection of code smells","volume":"42","author":"Rasool","year":"2017","journal-title":"Arabian Journal for Science and Engineering"},{"key":"10.3233\/JIFS-220474_ref32","doi-asserted-by":"crossref","first-page":"106783","DOI":"10.1016\/j.infsof.2021.106783","article-title":"How far are we from reproducible research on code smell detection? A systematic literature review,","volume":"144","author":"Lewowski","year":"2022","journal-title":"Information and Software Technology"},{"key":"10.3233\/JIFS-220474_ref33","unstructured":"Quinlan J.R. C4. 5: programs for machine learning, San Mateo, CA, Elsevier; 1993."},{"key":"10.3233\/JIFS-220474_ref34","doi-asserted-by":"publisher","DOI":"10.1016\/B978-1-55860-377-6.50023-2"},{"key":"10.3233\/JIFS-220474_ref35","doi-asserted-by":"publisher","first-page":"652","DOI":"10.1109\/ICCET.2010.5485993","article-title":"Notice of Retraction: Cockroach Swarm Optimization,","volume":"6","author":"ZhaoHui","year":"2010","journal-title":"International Conference on Computer Engineering and Technology"},{"key":"10.3233\/JIFS-220474_ref36","unstructured":"Golberg D.E. Genetic algorithms in search, optimization, and machine learning, Boston, MA, AddisonWesley, 1989."},{"key":"10.3233\/JIFS-220474_ref37","doi-asserted-by":"publisher","first-page":"1942","DOI":"10.1109\/ICNN.1995.488968","article-title":"Particle swarm optimization","volume":"4","author":"Kennedy","year":"1995","journal-title":"ICNN\u201995"},{"key":"10.3233\/JIFS-220474_ref38","doi-asserted-by":"publisher","first-page":"401","DOI":"10.1007\/978-3-642-19811-3_28","article-title":"Search-based design defects detection by example, Mar 26","author":"Kessentini","year":"2011","journal-title":"International Conference on Fundamental Approaches to Software Engineering,"},{"issue":"1","key":"10.3233\/JIFS-220474_ref39","doi-asserted-by":"crossref","first-page":"20","DOI":"10.1109\/TSE.2009.50","article-title":"Decor: A method for the specification and detection of code and design smells","volume":"36","author":"Moha","year":"2009","journal-title":"IEEE Transactions on Software Engineering"},{"issue":"2","key":"10.3233\/JIFS-220474_ref40","doi-asserted-by":"crossref","first-page":"529","DOI":"10.1007\/s11219-016-9309-7","article-title":"Multi-objective code-smells detection using good and bad design examples","volume":"25","author":"Mansoor","year":"2017","journal-title":"Software Quality Journal"},{"issue":"2","key":"10.3233\/JIFS-220474_ref41","doi-asserted-by":"crossref","first-page":"81","DOI":"10.1504\/IJBIC.2018.091233","article-title":"An alternative approach for particle swarm optimisation using serendipiy","volume":"11","author":"Paiva","year":"2018","journal-title":"International Journal of Bio-Inspired Computation"}],"container-title":["Journal of Intelligent &amp; Fuzzy Systems"],"original-title":[],"link":[{"URL":"https:\/\/content.iospress.com\/download?id=10.3233\/JIFS-220474","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,4,29]],"date-time":"2026-04-29T09:42:43Z","timestamp":1777455763000},"score":1,"resource":{"primary":{"URL":"https:\/\/journals.sagepub.com\/doi\/full\/10.3233\/JIFS-220474"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,11,11]]},"references-count":32,"journal-issue":{"issue":"6"},"URL":"https:\/\/doi.org\/10.3233\/jifs-220474","relation":{},"ISSN":["1064-1246","1875-8967"],"issn-type":[{"value":"1064-1246","type":"print"},{"value":"1875-8967","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022,11,11]]}}}