Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2351676.2351723acmconferencesArticle/Chapter ViewAbstractPublication PagesaseConference Proceedingsconference-collections
Article

Support vector machines for anti-pattern detection

Published: 03 September 2012 Publication History

Abstract

Developers may introduce anti-patterns in their software systems because of time pressure, lack of understanding, communication, and--or skills. Anti-patterns impede development and maintenance activities by making the source code more difficult to understand. Detecting anti-patterns in a whole software system may be infeasible because of the required parsing time and of the subsequent needed manual validation. Detecting anti-patterns on subsets of a system could reduce costs, effort, and resources. Researchers have proposed approaches to detect occurrences of anti-patterns but these approaches have currently some limitations: they require extensive knowledge of anti-patterns, they have limited precision and recall, and they cannot be applied on subsets of systems. To overcome these limitations, we introduce SVMDetect, a novel approach to detect anti-patterns, based on a machine learning technique---support vector machines. Indeed, through an empirical study involving three subject systems and four anti-patterns, we showed that the accuracy of SVMDetect is greater than of DETEX when detecting anti-patterns occurrences on a set of classes. Concerning, the whole system, SVMDetect is able to find more anti-patterns occurrences than DETEX.

References

[1]
E. H. Alikacem and H. A. Sahraoui. Détection d’anomalies utilisant un langage de règle de qualité. In LMO. Hermes Science Publications, 2006.
[2]
J. Bedo, C. Sanderson, and A. Kowalczyk. An efficient alternative to svm based recursive feature elimination with applications in natural language processing and bioinformatics. In A. Sattar and B.-h. Kang, editors, AI 2006: Advances in Artificial Intelligence, volume 4304 of Lecture Notes in Computer Science, pages 170–180. Springer Berlin Heidelberg, 2006.
[3]
G. Cao, J.-Y. Nie, J. Gao, and S. Robertson. Selecting good expansion terms for pseudo-relevance feedback. In Proceedings of the 31st Annual International ACM SIGIR Conference on Research and Development in Information Retrieval, SIGIR 2008, Singapore, July 20-24, 2008, pages 243–250. ACM, 2008.
[4]
M. J. Choi, A. Torralba, and A. S. Willsky. A tree-based context model for object recognition. IEEE Trans. Pattern Anal. Mach. Intell., 34:240–252, Feb. 2012.
[5]
C. Cortes and V. Vapnik. Support-vector networks. Machine Learning, 20:273–297, 1995. 10.1007/BF00994018.
[6]
Y.-G. Guéhéneuc, H. Sahraoui, and Farouk Zaidi. Fingerprinting design patterns. In E. Stroulia and A. de Lucia, editors, Proceedings of the 11th Working Conference on Reverse Engineering (WCRE). IEEE Computer Society Press, November 2004.
[7]
M. Kessentini, S. Vaucher, and H. Sahraoui. Deviance from perfection is a better criterion than closeness to evil when identifying risky code. In Proceedings of the IEEE/ACM international conference on Automated software engineering, ASE ’10, pages 113–122, New York, NY, USA, 2010. ACM.
[8]
F. Khomh, M. D. Penta, and Y.-G. Guéhéneuc. An exploratory study of the impact of antipatterns on class change-and fault-proneness. Journal of Empirical Software Engineering (EMSE), 2011.
[9]
S. Kim, E. J. W. Jr., and Y. Zhang. Classifying software changes: Clean or buggy? IEEE Trans. Software Eng., 34(2):181–196, 2008.
[10]
G. Langelier, H. Sahraoui, and P. Poulin. Visualization-based analysis of quality for large-scale software systems. In Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering, ASE ’05, pages 214–223, New York, NY, USA, 2005. ACM.
[11]
R. Marinescu. Detection strategies: Metrics-based rules for detecting design flaws. In In Proceedings of the IEEE 20th International Conference on Software Maintenance. IEEE Computer Society Press, 2004.
[12]
L. Setia, J. Ick, and H. Burkhardt. Svm-based relevance feedback in image retrieval using invariant feature histograms.
[13]
Naouel Moha, Y.-G. Guéhéneuc, L. Duchien, and A.-F. L. Meur. DECOR: A method for the specification and detection of code and design smells. Transactions on Software Engineering (TSE), 2009.

Cited By

View all
  • (2024)Machine Learning-Based Methods for Code Smell Detection: A SurveyApplied Sciences10.3390/app1414614914:14(6149)Online publication date: 15-Jul-2024
  • (2024)An Exploratory Study on God Header Files in Open-Source C ProjectsProceedings of the 15th Asia-Pacific Symposium on Internetware10.1145/3671016.3671391(477-486)Online publication date: 24-Jul-2024
  • (2024)Automatically Removing Unnecessary Stubbings from Test Suites2024 IEEE Conference on Software Testing, Verification and Validation (ICST)10.1109/ICST60714.2024.00029(233-244)Online publication date: 27-May-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ASE '12: Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering
September 2012
409 pages
ISBN:9781450312042
DOI:10.1145/2351676
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 03 September 2012

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Anti-pattern
  2. empirical software engineering
  3. program comprehension
  4. program maintenance

Qualifiers

  • Article

Conference

ASE'12
Sponsor:

Acceptance Rates

Overall Acceptance Rate 82 of 337 submissions, 24%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)19
  • Downloads (Last 6 weeks)1
Reflects downloads up to 30 Aug 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Machine Learning-Based Methods for Code Smell Detection: A SurveyApplied Sciences10.3390/app1414614914:14(6149)Online publication date: 15-Jul-2024
  • (2024)An Exploratory Study on God Header Files in Open-Source C ProjectsProceedings of the 15th Asia-Pacific Symposium on Internetware10.1145/3671016.3671391(477-486)Online publication date: 24-Jul-2024
  • (2024)Automatically Removing Unnecessary Stubbings from Test Suites2024 IEEE Conference on Software Testing, Verification and Validation (ICST)10.1109/ICST60714.2024.00029(233-244)Online publication date: 27-May-2024
  • (2024)FedCSD: A Federated Learning Based Approach for Code-Smell DetectionIEEE Access10.1109/ACCESS.2024.338016712(44888-44904)Online publication date: 2024
  • (2024)CBReT: A Cluster-Based Resampling Technique for dealing with imbalanced data in code smell predictionKnowledge-Based Systems10.1016/j.knosys.2024.111390286(111390)Online publication date: Feb-2024
  • (2024)CoRT: Transformer-based code representations with self-supervision by predicting reserved words for code smell detectionEmpirical Software Engineering10.1007/s10664-024-10445-929:3Online publication date: 8-Apr-2024
  • (2024)Multi-label learning for identifying co-occurring class code smellsComputing10.1007/s00607-024-01294-x106:8(2585-2612)Online publication date: 1-Aug-2024
  • (2024)An Insight into Code Smell Detection ToolReliability Engineering for Industrial Processes10.1007/978-3-031-55048-5_17(245-273)Online publication date: 23-Apr-2024
  • (2023)Exploring the Intersection between Software Maintenance and Machine Learning—A Systematic Mapping StudyApplied Sciences10.3390/app1303171013:3(1710)Online publication date: 29-Jan-2023
  • (2023)Resource Allocation Modeling Framework to Refactor Software Design SmellsInternational Journal of Mathematical, Engineering and Management Sciences10.33889/IJMEMS.2023.8.2.0138:2(213-229)Online publication date: 1-Apr-2023
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media