A machine-learning based ensemble method for anti-patterns detection
•Different anti-pattern detection tools can be aggregated to improve the detection.•Our method significantly improves the overall detection performances of the so aggregated tools for God Class and Feature Envy.•Our method significantly outperforms other ensemble methods.•None of the competing ensem...
Saved in:
Published in | The Journal of systems and software Vol. 161; p. 110486 |
---|---|
Main Authors | , , |
Format | Journal Article |
Language | English |
Published |
Elsevier Inc
01.03.2020
|
Subjects | |
Online Access | Get full text |
Cover
Loading…
Abstract | •Different anti-pattern detection tools can be aggregated to improve the detection.•Our method significantly improves the overall detection performances of the so aggregated tools for God Class and Feature Envy.•Our method significantly outperforms other ensemble methods.•None of the competing ensemble method can improve the performances for both anti-patterns.
Anti-patterns are poor solutions to recurring design problems. Several empirical studies have highlighted their negative impact on program comprehension, maintainability, as well as fault-proneness. A variety of detection approaches have been proposed to identify their occurrences in source code. However, these approaches can identify only a subset of the occurrences and report large numbers of false positives and misses. Furthermore, a low agreement is generally observed among different approaches. Recent studies have shown the potential of machine-learning models to improve this situation. However, such algorithms require large sets of manually-produced training-data, which often limits their application in practice.
In this paper, we present SMAD (SMart Aggregation of Anti-patterns Detectors), a machine-learning based ensemble method to aggregate various anti-patterns detection approaches on the basis of their internal detection rules. Thus, our method uses several detection tools to produce an improved prediction from a reasonable number of training examples. We implemented SMAD for the detection of two well known anti-patterns: God Class and Feature Envy. With the results of our experiments conducted on eight java projects, we show that: (1) Our method clearly improves the so aggregated tools; (2) SMAD significantly outperforms other ensemble methods. |
---|---|
AbstractList | •Different anti-pattern detection tools can be aggregated to improve the detection.•Our method significantly improves the overall detection performances of the so aggregated tools for God Class and Feature Envy.•Our method significantly outperforms other ensemble methods.•None of the competing ensemble method can improve the performances for both anti-patterns.
Anti-patterns are poor solutions to recurring design problems. Several empirical studies have highlighted their negative impact on program comprehension, maintainability, as well as fault-proneness. A variety of detection approaches have been proposed to identify their occurrences in source code. However, these approaches can identify only a subset of the occurrences and report large numbers of false positives and misses. Furthermore, a low agreement is generally observed among different approaches. Recent studies have shown the potential of machine-learning models to improve this situation. However, such algorithms require large sets of manually-produced training-data, which often limits their application in practice.
In this paper, we present SMAD (SMart Aggregation of Anti-patterns Detectors), a machine-learning based ensemble method to aggregate various anti-patterns detection approaches on the basis of their internal detection rules. Thus, our method uses several detection tools to produce an improved prediction from a reasonable number of training examples. We implemented SMAD for the detection of two well known anti-patterns: God Class and Feature Envy. With the results of our experiments conducted on eight java projects, we show that: (1) Our method clearly improves the so aggregated tools; (2) SMAD significantly outperforms other ensemble methods. |
ArticleNumber | 110486 |
Author | Khomh, Foutse Barbez, Antoine Guéhéneuc, Yann-Gaël |
Author_xml | – sequence: 1 givenname: Antoine surname: Barbez fullname: Barbez, Antoine email: antoine.barbez@polymtl.ca organization: Polytechnique Montreal, Canada – sequence: 2 givenname: Foutse surname: Khomh fullname: Khomh, Foutse email: foutse.khomh@polymtl.ca organization: Polytechnique Montreal, Canada – sequence: 3 givenname: Yann-Gaël surname: Guéhéneuc fullname: Guéhéneuc, Yann-Gaël email: yann-gael.gueheneuc@concordia.ca organization: Concordia University, Canada |
BookMark | eNp9kE1LAzEQhoNUsFZ_gLf8gV0z2XQ_8FTqJxS86Dlkk4nNspstSRD896bUk4ee5mWYZ5h5rsnCzx4JuQNWAoP6fiiHGEvOoCsBmGjrC7KEtqkK4LxdkGWeETkDvyLXMQ6MsYYzviSPGzopvXceixFV8M5_0V5FNBR9xKkfkU6Y9rOhdg5U-eSKg0oJg4_UYEKd3OxvyKVVY8Tbv7oin89PH9vXYvf-8rbd7ArNuyYVrWkRTL8GLbRgSvRdx3vomtqurelNbgrD1xb6VuhO8KpiVkDVdKoVWDc5rgic9uowxxjQykNwkwo_Epg8apCDzBrkUYM8achM84_RLqnj1SkoN54lH04k5pe-HQYZtUOv0biQ_5ZmdmfoX7YKeWg |
CitedBy_id | crossref_primary_10_1016_j_infsof_2021_106783 crossref_primary_10_1007_s10664_024_10445_9 crossref_primary_10_1109_ACCESS_2023_3334258 crossref_primary_10_1007_s10515_025_00486_9 crossref_primary_10_4018_IJOSSP_287612 crossref_primary_10_1016_j_engappai_2024_109527 crossref_primary_10_31857_S0002338823040078 crossref_primary_10_1016_j_jss_2024_112058 crossref_primary_10_1134_S106423072304007X crossref_primary_10_1109_ACCESS_2024_3387856 crossref_primary_10_1007_s00607_024_01294_x crossref_primary_10_1002_smr_2454 crossref_primary_10_1007_s41870_022_00943_8 crossref_primary_10_1016_j_jss_2023_111934 crossref_primary_10_1016_j_eswa_2023_121640 crossref_primary_10_1016_j_ins_2024_121753 crossref_primary_10_3390_chemosensors11020126 crossref_primary_10_1016_j_infsof_2025_107673 crossref_primary_10_1016_j_jobe_2021_102812 crossref_primary_10_1007_s10664_023_10345_4 crossref_primary_10_1145_3432690 crossref_primary_10_1145_3596908 crossref_primary_10_1155_2021_2730246 |
Cites_doi | 10.1007/s10664-011-9171-y 10.1007/s10664-017-9535-z 10.1023/A:1009783721306 10.1016/j.jss.2010.11.921 10.1016/j.jss.2012.04.013 10.1007/s10462-009-9124-7 10.1016/j.entcs.2005.02.059 10.1007/s10664-015-9378-4 10.1109/TSE.2010.51 10.1016/0005-2795(75)90109-9 10.1109/TSE.2014.2372760 10.1109/TETCI.2017.2699224 10.1109/TSE.2009.1 10.1109/TSE.2009.50 |
ContentType | Journal Article |
Copyright | 2019 |
Copyright_xml | – notice: 2019 |
DBID | AAYXX CITATION |
DOI | 10.1016/j.jss.2019.110486 |
DatabaseName | CrossRef |
DatabaseTitle | CrossRef |
DatabaseTitleList | |
DeliveryMethod | fulltext_linktorsrc |
Discipline | Computer Science |
EISSN | 1873-1228 |
ExternalDocumentID | 10_1016_j_jss_2019_110486 S0164121219302602 |
GroupedDBID | --K --M -~X .DC .~1 0R~ 1B1 1~. 1~5 29L 4.4 457 4G. 5GY 5VS 7-5 71M 8P~ 9JN 9M8 AABNK AACTN AAEDT AAEDW AAIKJ AAKOC AALRI AAOAW AAQFI AAQXK AAXUO AAYFN AAYOK ABBOA ABEFU ABFNM ABFRF ABFSI ABJNI ABMAC ABTAH ABXDB ABYKQ ACDAQ ACGFO ACGFS ACGOD ACNNM ACRLP ACZNC ADBBV ADEZE ADHUB ADJOM ADMUD AEBSH AEFWE AEKER AENEX AFKWA AFTJW AGHFR AGUBO AGYEJ AHHHB AHZHX AI. AIALX AIEXJ AIKHN AITUG AJBFU AJOXV ALMA_UNASSIGNED_HOLDINGS AMFUW AMRAJ AOUOD ASPBG AVWKF AXJTR AZFZN BKOJK BKOMP BLXMC CS3 DU5 E.L EBS EFJIC EFLBG EJD EO8 EO9 EP2 EP3 FDB FEDTE FGOYB FIRID FNPLU FYGXN G-Q G8K GBLVA GBOLZ HLZ HVGLF HZ~ IHE J1W KOM LG9 M41 MO0 MS~ N9A O-L O9- OAUVE OZT P-8 P-9 P2P PC. PQQKQ Q38 R2- RIG RNS ROL RPZ RXW SBC SDF SDG SDP SES SEW SPC SPCBC SSV SSZ T5K TAE TN5 TWZ UHS UNMZH VH1 WUQ XPP ZMT ZY4 ~G- AATTM AAXKI AAYWO AAYXX ABDPE ABWVN ACRPL ACVFH ADCNI ADNMO AEIPS AEUPX AFJKZ AFPUW AFXIZ AGCQF AGQPQ AGRNS AIGII AIIUN AKBMS AKRWK AKYEP ANKPU APXCP BNPGV CITATION SSH |
ID | FETCH-LOGICAL-c297t-8d8e1db51c4c40a4b992b1976f5fdbd4c44d25f1b84c942330f41379a84e67413 |
IEDL.DBID | .~1 |
ISSN | 0164-1212 |
IngestDate | Tue Jul 01 03:45:09 EDT 2025 Thu Apr 24 23:01:31 EDT 2025 Fri Feb 23 02:49:09 EST 2024 |
IsPeerReviewed | true |
IsScholarly | true |
Keywords | Anti-patterns Ensemble methods Software quality Machine learning |
Language | English |
LinkModel | DirectLink |
MergedId | FETCHMERGED-LOGICAL-c297t-8d8e1db51c4c40a4b992b1976f5fdbd4c44d25f1b84c942330f41379a84e67413 |
ParticipantIDs | crossref_primary_10_1016_j_jss_2019_110486 crossref_citationtrail_10_1016_j_jss_2019_110486 elsevier_sciencedirect_doi_10_1016_j_jss_2019_110486 |
ProviderPackageCode | CITATION AAYXX |
PublicationCentury | 2000 |
PublicationDate | March 2020 2020-03-00 |
PublicationDateYYYYMMDD | 2020-03-01 |
PublicationDate_xml | – month: 03 year: 2020 text: March 2020 |
PublicationDecade | 2020 |
PublicationTitle | The Journal of systems and software |
PublicationYear | 2020 |
Publisher | Elsevier Inc |
Publisher_xml | – name: Elsevier Inc |
References | Abbes, Khomh, Gueheneuc, Antoniol (bib0001) 2011 Jansche (bib0018) 2005 Maiga, Ali, Bhattacharya, Sabané, Guéhéneuc, Antoniol, Aïmeur (bib0028) 2012 Khomh, Vaucher, Guéhéneuc, Sahraoui (bib0020) 2009 Wang, Li, Shi, Liu (bib0043) 2011; 8 Rokach (bib0038) 2010; 33 Marinescu, Ganea, Verebi (bib0030) 2010 Tempero, Anslow, Dietrich, Han, Li, Lumpe, Melton, Noble (bib0040) 2010 Glorot, Bengio (bib0014) 2010 Kreimer (bib0022) 2005; 141 Khomh, Vaucher, Guéhéneuc, Sahraoui (bib0021) 2011; 84 Moha, Guéhéneuc, Laurence, Anne-Franccoise (bib0033) 2010; 36 Lanza, Marinescu (bib0024) 2007 Sales, Terra, Miranda, Valente (bib0039) 2013 Palomba, Bavota, Di Penta, Fasano, Oliveto, De Lucia (bib0034) 2018; 23 Fokaefs, Tsantalis, Chatzigeorgiou (bib0008) 2007 Bergstra, Bengio (bib0003) 2012; 13 Briand, Daly, Wüst (bib0004) 1998; 3 Fontana, Braione, Zanoni (bib0011) 2012; 11 Liu, Xu, Zou (bib0025) 2018 Maiga, Ali, Bhattacharya, Sabane, Gueheneuc, Aimeur (bib0027) 2012 Matthews (bib0031) 1975; 405 Fokaefs, Tsantalis, Stroulia, Chatzigeorgiou (bib0009) 2011 Di Nucci, Palomba, Oliveto, De Lucia (bib0005) 2017; 1 Witten, Frank, Hall, Pal (bib0044) 2016 Amorim, Costa, Antunes, Fonseca, Ribeiro (bib0002) 2015 Fowler (bib0013) 1999 Liu, Khoshgoftaar, Seliya (bib0026) 2010; 36 Krizhevsky, Sutskever, Hinton (bib0023) 2012 Moghadam, Cinneide (bib0032) 2012 Vaucher, Khomh, Moha, Guéhéneuc (bib0042) 2009 He, Garcia (bib0017) 2008 Tsantalis, Chatzigeorgiou (bib0041) 2009; 35 Palomba, Bavota, Penta, Oliveto, Lucia, Poshyvanyk (bib0036) 2013 Marinescu (bib0029) 2004 Powers, D. M., 2011. Evaluation: from precision, recall and f-measure to roc, informedness, markedness and correlation. Yamashita, Moonen (bib0045) 2013 Palomba, Bavota, Penta, Oliverto, Poshyvanyk, Lucia (bib0035) 2015; 41 Fokaefs, Tsantalis, Stroulia, Chatzigeorgiou (bib0010) 2012; 85 Graves, Mohamed, Hinton (bib0015) 2013 Guéhéneuc (bib0016) 2005 Dietterich (bib0007) 2000 Khomh, Di Penta, Guéhéneuc, Antoniol (bib0019) 2012; 17 Di Nucci, Palomba, Tamburri, Serebrenik, De Lucia (bib0006) 2018 Fontana, Mäntylä, Zanoni, Marino (bib0012) 2016; 21 Graves (10.1016/j.jss.2019.110486_bib0015) 2013 Sales (10.1016/j.jss.2019.110486_bib0039) 2013 He (10.1016/j.jss.2019.110486_bib0017) 2008 Fontana (10.1016/j.jss.2019.110486_bib0012) 2016; 21 Di Nucci (10.1016/j.jss.2019.110486_bib0005) 2017; 1 Wang (10.1016/j.jss.2019.110486_bib0043) 2011; 8 Jansche (10.1016/j.jss.2019.110486_bib0018) 2005 Tempero (10.1016/j.jss.2019.110486_bib0040) 2010 Bergstra (10.1016/j.jss.2019.110486_bib0003) 2012; 13 Yamashita (10.1016/j.jss.2019.110486_bib0045) 2013 Khomh (10.1016/j.jss.2019.110486_bib0021) 2011; 84 Liu (10.1016/j.jss.2019.110486_bib0025) 2018 Liu (10.1016/j.jss.2019.110486_bib0026) 2010; 36 Guéhéneuc (10.1016/j.jss.2019.110486_bib0016) 2005 10.1016/j.jss.2019.110486_bib0037 Maiga (10.1016/j.jss.2019.110486_bib0027) 2012 Moghadam (10.1016/j.jss.2019.110486_bib0032) 2012 Tsantalis (10.1016/j.jss.2019.110486_bib0041) 2009; 35 Witten (10.1016/j.jss.2019.110486_bib0044) 2016 Fowler (10.1016/j.jss.2019.110486_bib0013) 1999 Marinescu (10.1016/j.jss.2019.110486_bib0030) 2010 Matthews (10.1016/j.jss.2019.110486_bib0031) 1975; 405 Khomh (10.1016/j.jss.2019.110486_bib0020) 2009 Khomh (10.1016/j.jss.2019.110486_bib0019) 2012; 17 Krizhevsky (10.1016/j.jss.2019.110486_bib0023) 2012 Fokaefs (10.1016/j.jss.2019.110486_bib0010) 2012; 85 Rokach (10.1016/j.jss.2019.110486_bib0038) 2010; 33 Vaucher (10.1016/j.jss.2019.110486_bib0042) 2009 Palomba (10.1016/j.jss.2019.110486_bib0034) 2018; 23 Marinescu (10.1016/j.jss.2019.110486_bib0029) 2004 Amorim (10.1016/j.jss.2019.110486_bib0002) 2015 Fokaefs (10.1016/j.jss.2019.110486_bib0009) 2011 Moha (10.1016/j.jss.2019.110486_bib0033) 2010; 36 Di Nucci (10.1016/j.jss.2019.110486_bib0006) 2018 Kreimer (10.1016/j.jss.2019.110486_bib0022) 2005; 141 Glorot (10.1016/j.jss.2019.110486_bib0014) 2010 Lanza (10.1016/j.jss.2019.110486_bib0024) 2007 Palomba (10.1016/j.jss.2019.110486_bib0035) 2015; 41 Palomba (10.1016/j.jss.2019.110486_bib0036) 2013 Fokaefs (10.1016/j.jss.2019.110486_bib0008) 2007 Fontana (10.1016/j.jss.2019.110486_sbref0011) 2012; 11 Maiga (10.1016/j.jss.2019.110486_bib0028) 2012 Abbes (10.1016/j.jss.2019.110486_bib0001) 2011 Dietterich (10.1016/j.jss.2019.110486_bib0007) 2000 Briand (10.1016/j.jss.2019.110486_bib0004) 1998; 3 |
References_xml | – volume: 13 start-page: 281 year: 2012 end-page: 305 ident: bib0003 article-title: Random search for hyper-parameter optimization publication-title: J. Mach. Learn. Res. – volume: 3 start-page: 65 year: 1998 end-page: 117 ident: bib0004 article-title: A unified framework for cohesion measurement in object-oriented systems publication-title: Empir. Softw. Eng. – volume: 11 year: 2012 ident: bib0011 article-title: Automatic detection of bad smells in code: An experimental assessment. publication-title: J. Object Technol. – volume: 141 start-page: 117 year: 2005 end-page: 136 ident: bib0022 article-title: Adaptive detection of design flaws publication-title: Electron. Notes Theoret. Comput. Sci. – volume: 84 start-page: 559 year: 2011 end-page: 572 ident: bib0021 article-title: Bdtex: a gqm-based bayesian approach for the detection of antipatterns publication-title: J. Syst. Softw. – start-page: 1097 year: 2012 end-page: 1105 ident: bib0023 article-title: Imagenet classification with deep convolutional neural networks publication-title: Advances in neural information processing systems – start-page: 1263 year: 2008 end-page: 1284 ident: bib0017 article-title: Learning from imbalanced data publication-title: IEEE Trans. Knowl. Data Eng. – volume: 36 start-page: 852 year: 2010 end-page: 864 ident: bib0026 article-title: Evolutionary optimization of software quality modeling with multiple repositories publication-title: IEEE Trans. Softw. Eng. – start-page: 268 year: 2013 end-page: 278 ident: bib0036 article-title: Detecting bad smells in source code using change history information. publication-title: ASE – start-page: 466 year: 2012 end-page: 475 ident: bib0027 article-title: Smurf: a svm-based incremental anti-pattern detection approach publication-title: Reverse engineering (WCRE), 2012 19th working conference on – volume: 21 start-page: 1143 year: 2016 end-page: 1191 ident: bib0012 article-title: Comparing and experimenting machine learning techniques for code smell detection publication-title: Empir. Softw. Eng. – start-page: 350 year: 2004 end-page: 359 ident: bib0029 article-title: Detection strategies: metrics-based rules for detecting design flaws publication-title: Software Maintenance, 2004. Proceedings. 20th IEEE International Conference on – year: 2007 ident: bib0024 article-title: Object-oriented Metrics in Practice: Using Software Metrics to Characterize, Evaluate, and Improve the Design of object-Oriented Systems – volume: 405 start-page: 442 year: 1975 end-page: 451 ident: bib0031 article-title: Comparison of the predicted and observed secondary structure of t4 phage lysozyme publication-title: Biochimica et Biophysica Acta (BBA)-Protein Structure – volume: 17 start-page: 243 year: 2012 end-page: 275 ident: bib0019 article-title: An exploratory study of the impact of antipatterns on class change-and fault-proneness publication-title: Empir. Softw. Eng. – start-page: 682 year: 2013 end-page: 691 ident: bib0045 article-title: Exploring the impact of inter-smell relations on software maintainability: An empirical study publication-title: Proceedings of the 2013 International Conference on Software Engineering – start-page: 249 year: 2010 end-page: 256 ident: bib0014 article-title: Understanding the difficulty of training deep feedforward neural networks publication-title: Proceedings of the thirteenth international conference on artificial intelligence and statistics – start-page: 261 year: 2015 end-page: 269 ident: bib0002 article-title: Experience report: Evaluating the effectiveness of decision trees for detecting code smells publication-title: Software Reliability Engineering (ISSRE), 2015 IEEE 26th International Symposium on – volume: 23 start-page: 1188 year: 2018 end-page: 1221 ident: bib0034 article-title: On the diffuseness and the impact on maintainability of code smells: a large scale empirical investigation publication-title: Empirical Softw. Eng. – volume: 33 start-page: 1 year: 2010 end-page: 39 ident: bib0038 article-title: Ensemble-based classifiers publication-title: Artif. Intell. Rev. – volume: 85 start-page: 2241 year: 2012 end-page: 2260 ident: bib0010 article-title: Identification and application of extract class refactorings in object-oriented systems publication-title: J. Syst. Softw. – start-page: 305 year: 2009 end-page: 314 ident: bib0020 article-title: A Bayesian approach for the detection of code and design smells publication-title: Quality Software, 2009. QSIC’09. 9th International Conference on – start-page: 232 year: 2013 end-page: 241 ident: bib0039 article-title: Recommending move method refactorings using dependency sets publication-title: Reverse Engineering (WCRE), 2013 20th Working Conference on – year: 2016 ident: bib0044 article-title: Data Mining: Practical Machine Learning Tools and Techniques – reference: Powers, D. M., 2011. Evaluation: from precision, recall and f-measure to roc, informedness, markedness and correlation. – volume: 1 start-page: 202 year: 2017 end-page: 212 ident: bib0005 article-title: Dynamic selection of classifiers in bug prediction: an adaptive method publication-title: IEEE Trans. Emerg. Top. Comput. Intell. – start-page: 1 year: 2000 end-page: 15 ident: bib0007 article-title: Ensemble methods in machine learning publication-title: International workshop on multiple classifier systems – year: 1999 ident: bib0013 article-title: Refactoring: Improving the Design of Existing Code – start-page: 145 year: 2009 end-page: 154 ident: bib0042 article-title: Tracking design smells: lessons from a study of god classes publication-title: Reverse Engineering, 2009. WCRE’09. 16th Working Conference on – start-page: 692 year: 2005 end-page: 699 ident: bib0018 article-title: Maximum expected f-measure training of logistic regression models publication-title: Proceedings of the conference on Human Language Technology and Empirical Methods in Natural Language Processing – start-page: 336 year: 2010 end-page: 345 ident: bib0040 article-title: The qualitas corpus: a curated collection of java code for empirical studies publication-title: Software Engineering Conference (APSEC), 2010 17th Asia Pacific – start-page: 1037 year: 2011 end-page: 1039 ident: bib0009 article-title: Jdeodorant: identification and application of extract class refactorings publication-title: Software Engineering (ICSE), 2011 33rd International Conference on – start-page: 6645 year: 2013 end-page: 6649 ident: bib0015 article-title: Speech recognition with deep recurrent neural networks publication-title: Acoustics, speech and signal processing (icassp), 2013 ieee international conference on – start-page: 43 year: 2012 end-page: 52 ident: bib0032 article-title: Automated refactoring using design differencing publication-title: Software maintenance and reengineering (CSMR), 2012 16th European conference on – volume: 36 start-page: 20 year: 2010 end-page: 36 ident: bib0033 article-title: Decor: a method for the specification and detection of code and design smells publication-title: IEEE Trans. Softw. Eng. (TSE) – volume: 35 start-page: 347 year: 2009 end-page: 367 ident: bib0041 article-title: Identification of move method refactoring opportunities publication-title: IEEE Trans. Softw. Eng. – year: 2005 ident: bib0016 article-title: Ptidej: promoting patterns with patterns publication-title: Proceedings of the 1st ECOOP workshop on Building a System using Patterns. Springer-Verlag – start-page: 274 year: 2010 end-page: 275 ident: bib0030 article-title: Incode: continuous quality assessment and improvement publication-title: Software Maintenance and Reengineering (CSMR), 2010 14th European Conference on – volume: 41 start-page: 462 year: 2015 end-page: 489 ident: bib0035 article-title: Mining version histories for detecting code smells publication-title: IEEE Trans. Softw. Eng. – start-page: 278 year: 2012 end-page: 281 ident: bib0028 article-title: Support vector machines for anti-pattern detection publication-title: Automated Software Engineering (ASE), 2012 Proceedings of the 27th IEEE/ACM International Conference on – start-page: 519 year: 2007 end-page: 520 ident: bib0008 article-title: Jdeodorant: identification and removal of feature envy bad smells publication-title: Software Maintenance, 2007. ICSM 2007. IEEE International Conference on – volume: 8 start-page: 4241 year: 2011 end-page: 4254 ident: bib0043 article-title: Software defect prediction based on classifiers ensemble publication-title: J. Inf. Comput. Sci. – start-page: 612 year: 2018 end-page: 621 ident: bib0006 article-title: Detecting code smells using machine learning techniques: are we there yet? publication-title: 2018 IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER) – start-page: 385 year: 2018 end-page: 396 ident: bib0025 article-title: Deep learning based feature envy detection publication-title: Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering – start-page: 181 year: 2011 end-page: 190 ident: bib0001 article-title: An empirical study of the impact of two antipatterns, blob and spaghetti code, on program comprehension publication-title: Software maintenance and reengineering (CSMR), 2011 15th European conference on – start-page: 336 year: 2010 ident: 10.1016/j.jss.2019.110486_bib0040 article-title: The qualitas corpus: a curated collection of java code for empirical studies – start-page: 350 year: 2004 ident: 10.1016/j.jss.2019.110486_bib0029 article-title: Detection strategies: metrics-based rules for detecting design flaws – ident: 10.1016/j.jss.2019.110486_bib0037 – volume: 13 start-page: 281 issue: Feb year: 2012 ident: 10.1016/j.jss.2019.110486_bib0003 article-title: Random search for hyper-parameter optimization publication-title: J. Mach. Learn. Res. – volume: 17 start-page: 243 issue: 3 year: 2012 ident: 10.1016/j.jss.2019.110486_bib0019 article-title: An exploratory study of the impact of antipatterns on class change-and fault-proneness publication-title: Empir. Softw. Eng. doi: 10.1007/s10664-011-9171-y – start-page: 1037 year: 2011 ident: 10.1016/j.jss.2019.110486_bib0009 article-title: Jdeodorant: identification and application of extract class refactorings – volume: 11 issue: 2 year: 2012 ident: 10.1016/j.jss.2019.110486_sbref0011 article-title: Automatic detection of bad smells in code: An experimental assessment. publication-title: J. Object Technol. – start-page: 6645 year: 2013 ident: 10.1016/j.jss.2019.110486_bib0015 article-title: Speech recognition with deep recurrent neural networks – start-page: 612 year: 2018 ident: 10.1016/j.jss.2019.110486_bib0006 article-title: Detecting code smells using machine learning techniques: are we there yet? – start-page: 278 year: 2012 ident: 10.1016/j.jss.2019.110486_bib0028 article-title: Support vector machines for anti-pattern detection – start-page: 274 year: 2010 ident: 10.1016/j.jss.2019.110486_bib0030 article-title: Incode: continuous quality assessment and improvement – start-page: 145 year: 2009 ident: 10.1016/j.jss.2019.110486_bib0042 article-title: Tracking design smells: lessons from a study of god classes – year: 2016 ident: 10.1016/j.jss.2019.110486_bib0044 – year: 2007 ident: 10.1016/j.jss.2019.110486_bib0024 – start-page: 1097 year: 2012 ident: 10.1016/j.jss.2019.110486_bib0023 article-title: Imagenet classification with deep convolutional neural networks – start-page: 43 year: 2012 ident: 10.1016/j.jss.2019.110486_bib0032 article-title: Automated refactoring using design differencing – volume: 23 start-page: 1188 issue: 3 year: 2018 ident: 10.1016/j.jss.2019.110486_bib0034 article-title: On the diffuseness and the impact on maintainability of code smells: a large scale empirical investigation publication-title: Empirical Softw. Eng. doi: 10.1007/s10664-017-9535-z – start-page: 232 year: 2013 ident: 10.1016/j.jss.2019.110486_bib0039 article-title: Recommending move method refactorings using dependency sets – year: 2005 ident: 10.1016/j.jss.2019.110486_bib0016 article-title: Ptidej: promoting patterns with patterns – start-page: 1263 issue: 9 year: 2008 ident: 10.1016/j.jss.2019.110486_bib0017 article-title: Learning from imbalanced data publication-title: IEEE Trans. Knowl. Data Eng. – start-page: 181 year: 2011 ident: 10.1016/j.jss.2019.110486_bib0001 article-title: An empirical study of the impact of two antipatterns, blob and spaghetti code, on program comprehension – volume: 3 start-page: 65 issue: 1 year: 1998 ident: 10.1016/j.jss.2019.110486_bib0004 article-title: A unified framework for cohesion measurement in object-oriented systems publication-title: Empir. Softw. Eng. doi: 10.1023/A:1009783721306 – volume: 84 start-page: 559 issue: 4 year: 2011 ident: 10.1016/j.jss.2019.110486_bib0021 article-title: Bdtex: a gqm-based bayesian approach for the detection of antipatterns publication-title: J. Syst. Softw. doi: 10.1016/j.jss.2010.11.921 – volume: 85 start-page: 2241 issue: 10 year: 2012 ident: 10.1016/j.jss.2019.110486_bib0010 article-title: Identification and application of extract class refactorings in object-oriented systems publication-title: J. Syst. Softw. doi: 10.1016/j.jss.2012.04.013 – start-page: 466 year: 2012 ident: 10.1016/j.jss.2019.110486_bib0027 article-title: Smurf: a svm-based incremental anti-pattern detection approach – start-page: 305 year: 2009 ident: 10.1016/j.jss.2019.110486_bib0020 article-title: A Bayesian approach for the detection of code and design smells – start-page: 268 year: 2013 ident: 10.1016/j.jss.2019.110486_bib0036 article-title: Detecting bad smells in source code using change history information. – volume: 33 start-page: 1 issue: 1–2 year: 2010 ident: 10.1016/j.jss.2019.110486_bib0038 article-title: Ensemble-based classifiers publication-title: Artif. Intell. Rev. doi: 10.1007/s10462-009-9124-7 – volume: 141 start-page: 117 issue: 4 year: 2005 ident: 10.1016/j.jss.2019.110486_bib0022 article-title: Adaptive detection of design flaws publication-title: Electron. Notes Theoret. Comput. Sci. doi: 10.1016/j.entcs.2005.02.059 – start-page: 692 year: 2005 ident: 10.1016/j.jss.2019.110486_bib0018 article-title: Maximum expected f-measure training of logistic regression models – start-page: 249 year: 2010 ident: 10.1016/j.jss.2019.110486_bib0014 article-title: Understanding the difficulty of training deep feedforward neural networks – volume: 21 start-page: 1143 issue: 3 year: 2016 ident: 10.1016/j.jss.2019.110486_bib0012 article-title: Comparing and experimenting machine learning techniques for code smell detection publication-title: Empir. Softw. Eng. doi: 10.1007/s10664-015-9378-4 – volume: 36 start-page: 852 issue: 6 year: 2010 ident: 10.1016/j.jss.2019.110486_bib0026 article-title: Evolutionary optimization of software quality modeling with multiple repositories publication-title: IEEE Trans. Softw. Eng. doi: 10.1109/TSE.2010.51 – volume: 405 start-page: 442 issue: 2 year: 1975 ident: 10.1016/j.jss.2019.110486_bib0031 article-title: Comparison of the predicted and observed secondary structure of t4 phage lysozyme publication-title: Biochimica et Biophysica Acta (BBA)-Protein Structure doi: 10.1016/0005-2795(75)90109-9 – volume: 41 start-page: 462 issue: 5 year: 2015 ident: 10.1016/j.jss.2019.110486_bib0035 article-title: Mining version histories for detecting code smells publication-title: IEEE Trans. Softw. Eng. doi: 10.1109/TSE.2014.2372760 – year: 1999 ident: 10.1016/j.jss.2019.110486_bib0013 – volume: 1 start-page: 202 issue: 3 year: 2017 ident: 10.1016/j.jss.2019.110486_bib0005 article-title: Dynamic selection of classifiers in bug prediction: an adaptive method publication-title: IEEE Trans. Emerg. Top. Comput. Intell. doi: 10.1109/TETCI.2017.2699224 – volume: 35 start-page: 347 issue: 3 year: 2009 ident: 10.1016/j.jss.2019.110486_bib0041 article-title: Identification of move method refactoring opportunities publication-title: IEEE Trans. Softw. Eng. doi: 10.1109/TSE.2009.1 – start-page: 519 year: 2007 ident: 10.1016/j.jss.2019.110486_bib0008 article-title: Jdeodorant: identification and removal of feature envy bad smells – start-page: 385 year: 2018 ident: 10.1016/j.jss.2019.110486_bib0025 article-title: Deep learning based feature envy detection – volume: 36 start-page: 20 issue: 1 year: 2010 ident: 10.1016/j.jss.2019.110486_bib0033 article-title: Decor: a method for the specification and detection of code and design smells publication-title: IEEE Trans. Softw. Eng. (TSE) doi: 10.1109/TSE.2009.50 – volume: 8 start-page: 4241 issue: 16 year: 2011 ident: 10.1016/j.jss.2019.110486_bib0043 article-title: Software defect prediction based on classifiers ensemble publication-title: J. Inf. Comput. Sci. – start-page: 261 year: 2015 ident: 10.1016/j.jss.2019.110486_bib0002 article-title: Experience report: Evaluating the effectiveness of decision trees for detecting code smells – start-page: 682 year: 2013 ident: 10.1016/j.jss.2019.110486_bib0045 article-title: Exploring the impact of inter-smell relations on software maintainability: An empirical study – start-page: 1 year: 2000 ident: 10.1016/j.jss.2019.110486_bib0007 article-title: Ensemble methods in machine learning |
SSID | ssj0007202 |
Score | 2.458728 |
Snippet | •Different anti-pattern detection tools can be aggregated to improve the detection.•Our method significantly improves the overall detection performances of the... |
SourceID | crossref elsevier |
SourceType | Enrichment Source Index Database Publisher |
StartPage | 110486 |
SubjectTerms | Anti-patterns Ensemble methods Machine learning Software quality |
Title | A machine-learning based ensemble method for anti-patterns detection |
URI | https://dx.doi.org/10.1016/j.jss.2019.110486 |
Volume | 161 |
hasFullText | 1 |
inHoldings | 1 |
isFullTextHit | |
isPrint | |
link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV07T8MwELaqsrDwRpRH5YEJyTRO7MQZq0JVQOoClbpFSeygVm1a0bDy27lzHB4SMLBF1p0UfXHukXz-jpDL2ISewcMxWqQSGpQ0ZMrnAZPKy03BraQcsi3G4Wgi7qdy2iKD5iwM0ipd7K9juo3WbqXn0OytZ7PeI4pDcYi8UIKgMBbGYSEi3OXXb580j8i3vEM0Zmjd_Nm0HK_5BhW7eYxkeIHHqX_KTV_yzXCP7LhCkfbre9knLVMekN1mCAN17-QhuenTpSVEGuYmQDxTTE2aQoNqltnC0HpKNIXylAKOM7a2mprlhmpTWSZWeUQmw9unwYi50Qgs9-OoYkorw3UmeS5yAFhkcexnHEqLQhY607AotC8LnimRx1AxBV4B2SqKUyVMCEVEcEza5ao0J4RqsIbWVBYCrqRMlRcEuVA6TAHYVAYd4jWgJLnTDcfxFYukIYjNE8AxQRyTGscOufpwWdeiGX8Ziwbp5NuTTyCo_-52-j-3M7LtY8dsP6Kck3b18mouoKyosq7dN12y1b97GI3fAVyoyco |
linkProvider | Elsevier |
linkToHtml | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV09T8MwELWqMsDCN6J8emBCMo0TO3HGqlAVKF1opW5WEjuoVRsqGlZ-O2fH4UMCBrYoOkvRS3z3Tnl-h9BFrENPm8MxiiUcGpQkJMKnAeHCy3ROraWcUVsMw_6Y3U34pIG69VkYI6t0ub_K6TZbuztth2Z7OZ22H405FIXMCxTEGGNBHl5jsH3NGIOrt0-dR-Rb4aGJJia8_rVpRV6zlbHsprFRwzNznvqn4vSl4PS20aZjirhTPcwOauhiF23VUxiw25R76LqDF1YRqYkbAfGETW1SGDpUvUjnGldjojHwUwxATsnSmmoWK6x0aaVYxT4a925G3T5xsxFI5sdRSYQSmqqU04xlgDBL49hPKXCLnOcqVXCTKZ_nNBUsi4EyBV4O5SqKE8F0CCwiOEDN4rnQhwgriIbelOcMrjhPhBcEGRMqTADZhAct5NWgyMwZh5v5FXNZK8RmEnCUBkdZ4dhClx9LlpVrxl_BrEZafnv1ErL678uO_rfsHK33Rw8DObgd3h-jDd-0z1ZSdoKa5curPgWOUaZn9ht6By_Vy1o |
openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=A+machine-learning+based+ensemble+method+for+anti-patterns+detection&rft.jtitle=The+Journal+of+systems+and+software&rft.au=Barbez%2C+Antoine&rft.au=Khomh%2C+Foutse&rft.au=Gu%C3%A9h%C3%A9neuc%2C+Yann-Ga%C3%ABl&rft.date=2020-03-01&rft.pub=Elsevier+Inc&rft.issn=0164-1212&rft.eissn=1873-1228&rft.volume=161&rft_id=info:doi/10.1016%2Fj.jss.2019.110486&rft.externalDocID=S0164121219302602 |
thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0164-1212&client=summon |
thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0164-1212&client=summon |
thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0164-1212&client=summon |