{"title":"有味道吗?一种用于代码气味预测的同构叠加方法","authors":"Rim El Jammal, Danielle Azar","doi":"10.1016/j.infsof.2025.107801","DOIUrl":null,"url":null,"abstract":"<div><h3>Context:</h3><div>Code smells, defined as detrimental patterns and design choices in software development, significantly impact various aspects of software quality, such as maintainability, reusability, and stability. These harmful effects can disrupt the software development cycle and result in a waste of development and managerial resources.</div></div><div><h3>Objective:</h3><div>Although code smell detection has attracted considerable attention in recent years, the existing literature still shows certain limitations whereby most of the studies have been conducted on small data sets, a small number of code smells at once and evaluated using few performance metrics.</div></div><div><h3>Methods:</h3><div>In this work, we propose a Homogeneous Stacking Classifier to predict the presence of nine different code smells. We resort to feature selection to keep the attributes relevant to each code smell.</div></div><div><h3>Results:</h3><div>We use a large data set of 19,000 instances and we evaluate the performance of our proposed model using eight different metrics comparing it to state-of-the-art machine learning techniques that have proven to perform well in current research.</div></div><div><h3>Conclusion:</h3><div>The proposed approach statistically significantly outperforms the other models across most cases therefore, affirming its efficacy in code smell detection.</div></div>","PeriodicalId":54983,"journal":{"name":"Information and Software Technology","volume":"186 ","pages":"Article 107801"},"PeriodicalIF":4.3000,"publicationDate":"2025-06-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Does it smell? A homogeneous stacking approach for code smell prediction\",\"authors\":\"Rim El Jammal, Danielle Azar\",\"doi\":\"10.1016/j.infsof.2025.107801\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><h3>Context:</h3><div>Code smells, defined as detrimental patterns and design choices in software development, significantly impact various aspects of software quality, such as maintainability, reusability, and stability. These harmful effects can disrupt the software development cycle and result in a waste of development and managerial resources.</div></div><div><h3>Objective:</h3><div>Although code smell detection has attracted considerable attention in recent years, the existing literature still shows certain limitations whereby most of the studies have been conducted on small data sets, a small number of code smells at once and evaluated using few performance metrics.</div></div><div><h3>Methods:</h3><div>In this work, we propose a Homogeneous Stacking Classifier to predict the presence of nine different code smells. We resort to feature selection to keep the attributes relevant to each code smell.</div></div><div><h3>Results:</h3><div>We use a large data set of 19,000 instances and we evaluate the performance of our proposed model using eight different metrics comparing it to state-of-the-art machine learning techniques that have proven to perform well in current research.</div></div><div><h3>Conclusion:</h3><div>The proposed approach statistically significantly outperforms the other models across most cases therefore, affirming its efficacy in code smell detection.</div></div>\",\"PeriodicalId\":54983,\"journal\":{\"name\":\"Information and Software Technology\",\"volume\":\"186 \",\"pages\":\"Article 107801\"},\"PeriodicalIF\":4.3000,\"publicationDate\":\"2025-06-11\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Information and Software Technology\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/S0950584925001405\",\"RegionNum\":2,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q2\",\"JCRName\":\"COMPUTER SCIENCE, INFORMATION SYSTEMS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Information and Software Technology","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0950584925001405","RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q2","JCRName":"COMPUTER SCIENCE, INFORMATION SYSTEMS","Score":null,"Total":0}
Does it smell? A homogeneous stacking approach for code smell prediction
Context:
Code smells, defined as detrimental patterns and design choices in software development, significantly impact various aspects of software quality, such as maintainability, reusability, and stability. These harmful effects can disrupt the software development cycle and result in a waste of development and managerial resources.
Objective:
Although code smell detection has attracted considerable attention in recent years, the existing literature still shows certain limitations whereby most of the studies have been conducted on small data sets, a small number of code smells at once and evaluated using few performance metrics.
Methods:
In this work, we propose a Homogeneous Stacking Classifier to predict the presence of nine different code smells. We resort to feature selection to keep the attributes relevant to each code smell.
Results:
We use a large data set of 19,000 instances and we evaluate the performance of our proposed model using eight different metrics comparing it to state-of-the-art machine learning techniques that have proven to perform well in current research.
Conclusion:
The proposed approach statistically significantly outperforms the other models across most cases therefore, affirming its efficacy in code smell detection.
期刊介绍:
Information and Software Technology is the international archival journal focusing on research and experience that contributes to the improvement of software development practices. The journal''s scope includes methods and techniques to better engineer software and manage its development. Articles submitted for review should have a clear component of software engineering or address ways to improve the engineering and management of software development. Areas covered by the journal include:
• Software management, quality and metrics,
• Software processes,
• Software architecture, modelling, specification, design and programming
• Functional and non-functional software requirements
• Software testing and verification & validation
• Empirical studies of all aspects of engineering and managing software development
Short Communications is a new section dedicated to short papers addressing new ideas, controversial opinions, "Negative" results and much more. Read the Guide for authors for more information.
The journal encourages and welcomes submissions of systematic literature studies (reviews and maps) within the scope of the journal. Information and Software Technology is the premiere outlet for systematic literature studies in software engineering.