Code similarity detection through control statement and program features
•Methods to identify duplicate codes (code clones) are introduced.•All four types of clones can be identified.•Does not require external lexer or parser to process the code.•Less complex approach compared to AST and PDG based approaches. Software clone detection is an emerging research area in the f...
Saved in:
| Published in | Expert systems with applications Vol. 132; pp. 63 - 75 |
|---|---|
| Main Authors | , |
| Format | Journal Article |
| Language | English |
| Published |
New York
Elsevier Ltd
15.10.2019
Elsevier BV |
| Subjects | |
| Online Access | Get full text |
| ISSN | 0957-4174 1873-6793 |
| DOI | 10.1016/j.eswa.2019.04.045 |
Cover
| Abstract | •Methods to identify duplicate codes (code clones) are introduced.•All four types of clones can be identified.•Does not require external lexer or parser to process the code.•Less complex approach compared to AST and PDG based approaches.
Software clone detection is an emerging research area in the field of software engineering. Software systems are subjected to continuous modifications in source code to improve the performance of the software, which may lead to code redundancy. Duplicate code/code clone is a piece of code reworked several times in software programs due to copy paste activity or reusability of existing software. Code clone is a prime subject in software evolution. Detection of software clones at the time of software evolution may improve the performance of software and reduce the maintenance cost and effort. This paper proposes metric based methods to detect code clones, as software clone is a universal problem in large scale programming environment. This paper introduces two metric based approaches to detect code clones by comparing (i) Control Statement Features (ii) Program Features like different types of statements, operators and operands. In order to demonstrate the effectiveness of the proposed approaches, extensive experiments are conducted on two datasets, C projects of Bellon's benchmark dataset and student lab programs (SLP).The methods efficiently identify similar functional clones. Proposed models only find similarity of whole programs but intelligent enough to highlight similar code segments across program files. |
|---|---|
| AbstractList | •Methods to identify duplicate codes (code clones) are introduced.•All four types of clones can be identified.•Does not require external lexer or parser to process the code.•Less complex approach compared to AST and PDG based approaches.
Software clone detection is an emerging research area in the field of software engineering. Software systems are subjected to continuous modifications in source code to improve the performance of the software, which may lead to code redundancy. Duplicate code/code clone is a piece of code reworked several times in software programs due to copy paste activity or reusability of existing software. Code clone is a prime subject in software evolution. Detection of software clones at the time of software evolution may improve the performance of software and reduce the maintenance cost and effort. This paper proposes metric based methods to detect code clones, as software clone is a universal problem in large scale programming environment. This paper introduces two metric based approaches to detect code clones by comparing (i) Control Statement Features (ii) Program Features like different types of statements, operators and operands. In order to demonstrate the effectiveness of the proposed approaches, extensive experiments are conducted on two datasets, C projects of Bellon's benchmark dataset and student lab programs (SLP).The methods efficiently identify similar functional clones. Proposed models only find similarity of whole programs but intelligent enough to highlight similar code segments across program files. Software clone detection is an emerging research area in the field of software engineering. Software systems are subjected to continuous modifications in source code to improve the performance of the software, which may lead to code redundancy. Duplicate code/code clone is a piece of code reworked several times in software programs due to copy paste activity or reusability of existing software. Code clone is a prime subject in software evolution. Detection of software clones at the time of software evolution may improve the performance of software and reduce the maintenance cost and effort. This paper proposes metric based methods to detect code clones, as software clone is a universal problem in large scale programming environment. This paper introduces two metric based approaches to detect code clones by comparing (i) Control Statement Features (ii) Program Features like different types of statements, operators and operands. In order to demonstrate the effectiveness of the proposed approaches, extensive experiments are conducted on two datasets, C projects of Bellon's benchmark dataset and student lab programs (SLP).The methods efficiently identify similar functional clones. Proposed models only find similarity of whole programs but intelligent enough to highlight similar code segments across program files. |
| Author | Sudhamani, M. Rangarajan, Lalitha |
| Author_xml | – sequence: 1 givenname: M. surname: Sudhamani fullname: Sudhamani, M. email: Sudhamanimrsh@compsci.uni-mysore.ac.in – sequence: 2 givenname: Lalitha surname: Rangarajan fullname: Rangarajan, Lalitha email: lalithar@Compsci.uni-mysore.ac.in |
| BookMark | eNp9kE9LAzEQxYNUsFa_gKcFz7vm72YXvEhRKxS86DmkyWybpd3UJFX67c1STx4KA3N5v5n33jWaDH4AhO4Irggm9UNfQfzRFcWkrTDPIy7QlDSSlbVs2QRNcStkyYnkV-g6xh5jIjGWU7SYewtFdDu31cGlY2EhgUnOD0XaBH9YbwrjhxT8tohJJ9jBkAo92GIf_DroXdGBTocA8QZddnob4fZvz9Dny_PHfFEu31_f5k_L0jDapFIYBpJ1tKuZNkJrbSm2jArQjDOwtVh1NV4xQUA0VkisCeXENsIYzvOrls3Q_eluNvB1gJhU7w9hyC8VpbyVrBZCZFVzUpngYwzQKeOyfTdG0W6rCFZjb6pXY29q7E1hnmdE6T90H9xOh-N56PEEQY7-7SCoaBwMBqwLuU5lvTuH_wKcyopa |
| CitedBy_id | crossref_primary_10_1109_ACCESS_2024_3484995 crossref_primary_10_1016_j_cola_2022_101177 crossref_primary_10_1016_j_jss_2023_111796 crossref_primary_10_1109_TSE_2020_3042553 crossref_primary_10_1108_IJPCC_06_2022_0236 crossref_primary_10_1007_s11219_022_09606_0 |
| Cites_doi | 10.1007/3-540-47764-0_3 10.1145/361598.361623 10.1002/spe.4380210706 10.1145/384266.299783 10.1007/BF00126960 10.1016/j.eswa.2013.07.106 10.26808/rs.ca.i8v2.02 10.1016/j.scico.2009.02.007 10.1145/360825.360861 10.7753/IJCATR0410.1003 10.1007/s10664-008-9076-6 10.1016/j.eswa.2017.12.040 10.1109/TSE.2007.70725 10.1109/TSE.2002.1019480 10.1109/TSE.2006.28 10.1007/s10664-011-9195-3 |
| ContentType | Journal Article |
| Copyright | 2019 Elsevier Ltd Copyright Elsevier BV Oct 15, 2019 |
| Copyright_xml | – notice: 2019 Elsevier Ltd – notice: Copyright Elsevier BV Oct 15, 2019 |
| DBID | AAYXX CITATION 7SC 8FD JQ2 L7M L~C L~D |
| DOI | 10.1016/j.eswa.2019.04.045 |
| DatabaseName | CrossRef Computer and Information Systems Abstracts Technology Research Database ProQuest Computer Science Collection Advanced Technologies Database with Aerospace Computer and Information Systems Abstracts Academic Computer and Information Systems Abstracts Professional |
| DatabaseTitle | CrossRef Computer and Information Systems Abstracts Technology Research Database Computer and Information Systems Abstracts – Academic Advanced Technologies Database with Aerospace ProQuest Computer Science Collection Computer and Information Systems Abstracts Professional |
| DatabaseTitleList | Computer and Information Systems Abstracts |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 1873-6793 |
| EndPage | 75 |
| ExternalDocumentID | 10_1016_j_eswa_2019_04_045 S0957417419302751 |
| GroupedDBID | --K --M .DC .~1 0R~ 13V 1B1 1RT 1~. 1~5 4.4 457 4G. 5GY 5VS 7-5 71M 8P~ 9JN 9JO AAAKF AABNK AACTN AAEDT AAEDW AAIAV AAIKJ AAKOC AALRI AAOAW AAQFI AARIN AAXUO AAYFN ABBOA ABFNM ABMAC ABMVD ABUCO ABYKQ ACDAQ ACGFS ACHRH ACNTT ACRLP ACZNC ADBBV ADEZE ADTZH AEBSH AECPX AEKER AENEX AFKWA AFTJW AGHFR AGJBL AGUBO AGUMN AGYEJ AHHHB AHJVU AHZHX AIALX AIEXJ AIKHN AITUG AJOXV ALEQD ALMA_UNASSIGNED_HOLDINGS AMFUW AMRAJ AOUOD APLSM AXJTR BJAXD BKOJK BLXMC BNSAS CS3 DU5 EBS EFJIC EFLBG EJD EO8 EO9 EP2 EP3 F5P FDB FIRID FNPLU FYGXN G-Q GBLVA GBOLZ HAMUX IHE J1W JJJVA KOM LG9 LY1 LY7 M41 MO0 N9A O-L O9- OAUVE OZT P-8 P-9 P2P PC. PQQKQ Q38 RIG ROL RPZ SDF SDG SDP SDS SES SPC SPCBC SSB SSD SSL SST SSV SSZ T5K TN5 ~G- 29G AAAKG AAQXK AATTM AAXKI AAYWO AAYXX ABJNI ABKBG ABUFD ABWVN ABXDB ACLOT ACNNM ACRPL ACVFH ADCNI ADJOM ADMUD ADNMO AEIPS AEUPX AFJKZ AFPUW AGQPQ AIGII AIIUN AKBMS AKRWK AKYEP ANKPU APXCP ASPBG AVWKF AZFZN CITATION EFKBS FEDTE FGOYB G-2 HLZ HVGLF HZ~ R2- SBC SET SEW WUQ XPP ZMT ~HD 7SC 8FD AFXIZ AGCQF AGRNS JQ2 L7M L~C L~D SSH |
| ID | FETCH-LOGICAL-c328t-5c3e73f2f63ac5aaad20d325ea343ed65bf60b351e58d570a1241d85cc44fea93 |
| IEDL.DBID | .~1 |
| ISSN | 0957-4174 |
| IngestDate | Fri Jul 25 08:24:45 EDT 2025 Sat Oct 25 05:09:18 EDT 2025 Thu Apr 24 23:02:20 EDT 2025 Fri Feb 23 02:24:27 EST 2024 |
| IsPeerReviewed | true |
| IsScholarly | true |
| Keywords | Code duplication and Functional clones Program features Control Statement features |
| Language | English |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c328t-5c3e73f2f63ac5aaad20d325ea343ed65bf60b351e58d570a1241d85cc44fea93 |
| Notes | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 14 |
| PQID | 2249736555 |
| PQPubID | 2045477 |
| PageCount | 13 |
| ParticipantIDs | proquest_journals_2249736555 crossref_citationtrail_10_1016_j_eswa_2019_04_045 crossref_primary_10_1016_j_eswa_2019_04_045 elsevier_sciencedirect_doi_10_1016_j_eswa_2019_04_045 |
| PublicationCentury | 2000 |
| PublicationDate | 2019-10-15 |
| PublicationDateYYYYMMDD | 2019-10-15 |
| PublicationDate_xml | – month: 10 year: 2019 text: 2019-10-15 day: 15 |
| PublicationDecade | 2010 |
| PublicationPlace | New York |
| PublicationPlace_xml | – name: New York |
| PublicationTitle | Expert systems with applications |
| PublicationYear | 2019 |
| Publisher | Elsevier Ltd Elsevier BV |
| Publisher_xml | – name: Elsevier Ltd – name: Elsevier BV |
| References | Kodhai, Perumal, Kanmani (bib0020) 2010; 2 Kamiya, T., Kusumoto, S., & Inoue, K. (2002). Review of CC Finder : A multi-linguistic token-based code clone detection system for large scale source code, 28(7), 3. Krinke (bib0027) 2008 Bellon, Koschke, Antoniol, Krinke, Merlo (bib0004) 2007; 33 Cordy, J. R., & Dean, T. R. (2004). Practical language-independent detection of near-miss clones. Rahman, Bird, Devanbu (bib0050) 2012; 17 Fowler, Beck, Brant, Opdyke, Roberts (bib0008) 1999 Rattan, Bhatia, Singh (bib0033) 2013; 55 Sheneamer, Kalita (bib0040) 2015 Suarez-Tangil, Tapiador, Peris-Lopez, Blasco (bib0042) 2014; 41 Sudhamani, Rangarajan (bib0046) 2015; 46 Johnson (bib0013) 1994 Lee, Jeong (bib0028) 2005 Hotta, Yang, Higo, Kusumoto (bib0014) 2014; 63 Raza, Vogel, Plödereder (bib0034) 2006; 71 Baker (bib0001) 1992; 24 Sudhamani, Rangarajan (bib0043) 2016 Wettel, Marinescu (bib0049) 2005; 2005 Baker (bib0002) 1993 Komondoor, R., & Horwitz, S. (2001). Using slicing to identify duplication in source code, 40–56. Bellon (bib0005) 2002 Hirschberg (bib0012) 1975; 18 Gitchell, Tran (bib0009) 1999; 31 Hummel, Juergens, Heinemann, Conradt (bib0015) 2010 Kapser, Godfrey (bib0018) 2008; 13 Koschke, Falke, Frenzel (bib0023) 2006 Roy, Cordy, Koschke (bib0036) 2009; 74 Ducasse, Rieger, Demeyer (bib0007) 1999 Sudhamani, M., & Rangarajan, L. (2018). Code similarity detection by computing block level feature metrics, 2(8), 11–24. Kim, Sazawal, Notkin, Murphy (bib0019) 2005 Koschke, Girard, Wurthner (bib0024) 1998 Sajnani, Saini, Lopes (bib0051) 2014 Greenan (bib0010) 2005 Tairas, Gray (bib0047) 2006; 44 Higo, Yasushi, Nishino, Kusumoto (bib0011) 2011 Li, Lu, Myagmar, Zhou (bib0029) 2006; 32 Matthias (bib0030) 2005, June Kontogiannis, DeMori, Merlo, Galler, Bernstein (bib0053) 1996; 3 Krinke (bib0026) 2001 Mayrand, Leblanc, Merlo (bib0052) 1996; 96 Sudhamani, M., & Rangarajan, L. (2015a). Duplicate code detection using control statements, 4(10), 728–736. Yang (bib0048) 1991; 21 Komondoor, Horwitz (bib0022) 2003 Sheneamer, Roy, Kalita (bib0039) 2018; 97 Johnson (bib0016) 1993; 1 Baxter, Yahin, Moura, Sant'Anna, Bier (bib0003) 1998; 98 Schleimer, Wilkerson, Aiken (bib0038) 2003 Roy, Cordy (bib0035) 2007; 115 Koschke (bib0025) 2008 Prechelt, Malpohl, Philippsen (bib0032) 2002; 8 Parnas (bib0031) 1972; 15 Rattan (10.1016/j.eswa.2019.04.045_bib0033) 2013; 55 Raza (10.1016/j.eswa.2019.04.045_bib0034) 2006; 71 Sudhamani (10.1016/j.eswa.2019.04.045_bib0043) 2016 Krinke (10.1016/j.eswa.2019.04.045_bib0026) 2001 Schleimer (10.1016/j.eswa.2019.04.045_bib0038) 2003 Gitchell (10.1016/j.eswa.2019.04.045_bib0009) 1999; 31 Ducasse (10.1016/j.eswa.2019.04.045_bib0007) 1999 10.1016/j.eswa.2019.04.045_bib0045 10.1016/j.eswa.2019.04.045_bib0044 Hummel (10.1016/j.eswa.2019.04.045_bib0015) 2010 Sudhamani (10.1016/j.eswa.2019.04.045_bib0046) 2015; 46 Koschke (10.1016/j.eswa.2019.04.045_bib0023) 2006 Krinke (10.1016/j.eswa.2019.04.045_bib0027) 2008 Mayrand (10.1016/j.eswa.2019.04.045_bib0052) 1996; 96 10.1016/j.eswa.2019.04.045_bib0006 Yang (10.1016/j.eswa.2019.04.045_bib0048) 1991; 21 Greenan (10.1016/j.eswa.2019.04.045_bib0010) 2005 Higo (10.1016/j.eswa.2019.04.045_bib0011) 2011 Rahman (10.1016/j.eswa.2019.04.045_bib0050) 2012; 17 Hirschberg (10.1016/j.eswa.2019.04.045_bib0012) 1975; 18 Bellon (10.1016/j.eswa.2019.04.045_bib0005) 2002 Tairas (10.1016/j.eswa.2019.04.045_bib0047) 2006; 44 Johnson (10.1016/j.eswa.2019.04.045_bib0016) 1993; 1 Komondoor (10.1016/j.eswa.2019.04.045_bib0022) 2003 Fowler (10.1016/j.eswa.2019.04.045_bib0008) 1999 Roy (10.1016/j.eswa.2019.04.045_bib0036) 2009; 74 Koschke (10.1016/j.eswa.2019.04.045_bib0024) 1998 Baker (10.1016/j.eswa.2019.04.045_bib0002) 1993 10.1016/j.eswa.2019.04.045_bib0021 Suarez-Tangil (10.1016/j.eswa.2019.04.045_bib0042) 2014; 41 Sajnani (10.1016/j.eswa.2019.04.045_bib0051) 2014 Kodhai (10.1016/j.eswa.2019.04.045_bib0020) 2010; 2 Roy (10.1016/j.eswa.2019.04.045_bib0035) 2007; 115 Kapser (10.1016/j.eswa.2019.04.045_bib0018) 2008; 13 Bellon (10.1016/j.eswa.2019.04.045_bib0004) 2007; 33 Koschke (10.1016/j.eswa.2019.04.045_bib0025) 2008 Li (10.1016/j.eswa.2019.04.045_bib0029) 2006; 32 Sheneamer (10.1016/j.eswa.2019.04.045_bib0040) 2015 Baker (10.1016/j.eswa.2019.04.045_bib0001) 1992; 24 Hotta (10.1016/j.eswa.2019.04.045_bib0014) 2014; 63 Parnas (10.1016/j.eswa.2019.04.045_bib0031) 1972; 15 Wettel (10.1016/j.eswa.2019.04.045_bib0049) 2005; 2005 Kontogiannis (10.1016/j.eswa.2019.04.045_bib0053) 1996; 3 Kim (10.1016/j.eswa.2019.04.045_bib0019) 2005 Matthias (10.1016/j.eswa.2019.04.045_bib0030) 2005 Sheneamer (10.1016/j.eswa.2019.04.045_bib0039) 2018; 97 Johnson (10.1016/j.eswa.2019.04.045_bib0013) 1994 Prechelt (10.1016/j.eswa.2019.04.045_bib0032) 2002; 8 10.1016/j.eswa.2019.04.045_bib0017 Lee (10.1016/j.eswa.2019.04.045_bib0028) 2005 Baxter (10.1016/j.eswa.2019.04.045_bib0003) 1998; 98 |
| References_xml | – volume: 32 start-page: 176 year: 2006 end-page: 192 ident: bib0029 article-title: CP-miner: Finding copy-paste and related bugs in large-scale software code publication-title: IEEE Transactions on Software Engineering – volume: 33 start-page: 577 year: 2007 end-page: 591 ident: bib0004 article-title: Comparison and evaluation of clone detection tools publication-title: IEEE Transactions on Software Engineering – start-page: 140 year: 2005 end-page: 141 ident: bib0028 article-title: SDD: High performance code clone detection system for large scale source code – start-page: 1 year: 2005 end-page: 17. ident: bib0010 article-title: Method-level code clone detection on transformed abstract syntax trees using sequence matching algorithms publication-title: Transformation – volume: 3 start-page: 77 year: 1996 end-page: 108 ident: bib0053 article-title: Pattern matching for clone and concept detection publication-title: Automated Software Engineering – volume: 17 start-page: 503 year: 2012 end-page: 530 ident: bib0050 article-title: Clones: What is that smell? publication-title: Empirical Software Engineering – volume: 31 start-page: 266 year: 1999 end-page: 270 ident: bib0009 article-title: Sim: A utility for detecting similarity in computer programs publication-title: SIGCSE Bulletin – start-page: 15 year: 2008 end-page: 36 ident: bib0025 article-title: Identifying and removing software clones publication-title: Software evolution – volume: 74 start-page: 470 year: 2009 end-page: 495 ident: bib0036 article-title: Comparison and evaluation of code clone detection techniques and tools: A qualitative approach – year: 1999 ident: bib0008 article-title: Refactoring: improving the design of existingcode – start-page: 120 year: 1994 end-page: 126 ident: bib0013 article-title: Substring matching for clone detection and change tracking publication-title: Proceedings international conference on software maintenance ICSM-94 – start-page: 21 year: 2014 end-page: 30 ident: bib0051 article-title: A comparative study of bug patterns in java cloned and non-cloned code publication-title: 2014 IEEE 14th International Working Conference on Source Code Analysis and Manipulation – volume: 97 start-page: 405 year: 2018 end-page: 420 ident: bib0039 article-title: A detection framework for semantic code clones and obfuscated code publication-title: Expert Systems with Applications – volume: 41 start-page: 1104 year: 2014 end-page: 1117 ident: bib0042 article-title: Dendroid: A text mining approach to analyzing and classifying code structures in Android malware families publication-title: Expert Systems with Applications – start-page: 76 year: 2003 end-page: 85 ident: bib0038 article-title: Winnowing: Local algorithms for document fingerprinting publication-title: Proceedings of the 2003 ACM SIGMOD international conference on management of data - SIGMOD ’03 – volume: 46 year: 2015 ident: bib0046 article-title: Structural similarity detection using structure of control statements publication-title: Procedia computer science – year: 2002 ident: bib0005 – volume: 55 year: 2013 ident: bib0033 publication-title: Software clone detection: a systematic review. Information and software technology – start-page: 71 year: 1993 end-page: 80 ident: bib0002 article-title: A theory of parameterized pattern matching: Algorithms and applications publication-title: Stoc – volume: 1 start-page: 171 year: 1993 end-page: 183 ident: bib0016 article-title: Identifying redundancy in source code using fingerprints publication-title: Proceedings of the 1993 conference of the centre for advanced studies on collaborative research: Software engineering – start-page: 40 year: 2003 end-page: 56 ident: bib0022 article-title: Effective automatic procedure extraction publication-title: Proceedings of the international workshop on program comprehension – start-page: 59 year: 2016 end-page: 64 ident: bib0043 article-title: Code clone detection based on order and content of control statements publication-title: Contemporary computing and informatics (IC3I), 2016 2nd international conference on – reference: Sudhamani, M., & Rangarajan, L. (2018). Code similarity detection by computing block level feature metrics, 2(8), 11–24. – volume: 63 start-page: 1 year: 2014 end-page: 18 ident: bib0014 article-title: How accurate is coarsegrainedclone detection?: Comparision with fine-grained detectors publication-title: Electronic Communications of the Eighth International Workshop on Software Clones – volume: 2 start-page: 976 year: 2010 end-page: 1349 ident: bib0020 article-title: Clone detection using textual and metric analysis to figure out all types of clones publication-title: International Journal of Computer Communication and Information System – volume: 13 start-page: 645 year: 2008 end-page: 692 ident: bib0018 article-title: Cloning considered harmful” considered harmful: Patterns of cloning insoftware – start-page: 253 year: 2006 end-page: 262 ident: bib0023 article-title: Clone detection using abstract syntax suffix trees publication-title: Proceedings - working conference on reverse engineering – start-page: 301 year: 2001 end-page: 309 ident: bib0026 article-title: Identifying similar code with program dependence graphs publication-title: Proceedings eighth working conference on reverse engineering – start-page: 109 year: 1999 ident: bib0007 article-title: A language independent approach for detecting duplicated code publication-title: Proceedings of the IEEE international conference on software maintenance. IEEE computer society – start-page: 1 year: 2010 end-page: 9 ident: bib0015 article-title: Index-basedcode clone detection: Incremental, distributed, scalable publication-title: 2010 IEEE international conference on software maintenance (ICSM) – year: 2008 ident: bib0027 article-title: Is cloned code more stable than non-cloned code? publication-title: Proceedings- IEEE international working conference on source code analysisand manipulation 2008 – reference: Kamiya, T., Kusumoto, S., & Inoue, K. (2002). Review of CC Finder : A multi-linguistic token-based code clone detection system for large scale source code, 28(7), 3. – volume: 96 start-page: 244 year: 1996 ident: bib0052 article-title: Experiment on the Automatic Detection of Function Clones in a Software System Using Metrics publication-title: In – start-page: 3 year: 2011 end-page: 12 ident: bib0011 article-title: Incremental codeclone detection: A pdg-based approach publication-title: 2011 18th working conference on reverse engineering (WCRE) – reference: Sudhamani, M., & Rangarajan, L. (2015a). Duplicate code detection using control statements, 4(10), 728–736. – volume: 15 start-page: 1053 year: 1972 end-page: 1058 ident: bib0031 article-title: On the criteria to be used in decomposing systems into modules – volume: 8 start-page: 1016 year: 2002 end-page: 1038 ident: bib0032 article-title: Finding plagiarisms among a set of programs with JPlag publication-title: Journal Of Universal Computer Science – reference: Komondoor, R., & Horwitz, S. (2001). Using slicing to identify duplication in source code, 40–56. – start-page: 241 year: 1998 end-page: 250 ident: bib0024 article-title: An intermediate representation for integrating reverse engineering\nanalyses publication-title: Proceedings fifth working conference on reverse engineering (Cat. No.98TB100261) – volume: 44 start-page: 679 year: 2006 ident: bib0047 article-title: Phoenix-based clone detection using suffix trees publication-title: - – year: 2005, June ident: bib0030 article-title: Effective Clone Detection Without Language Barriers – volume: 2005 start-page: 63 year: 2005 end-page: 70 ident: bib0049 article-title: Archeology of code duplication: Recovering duplication chains from small duplication fragments publication-title: Proceedings - seventh international symposium on symbolic and numeric algorithms for scientific computing – start-page: 472 year: 2015 end-page: 480 ident: bib0040 article-title: Code clone detection using coarse and finegrainedhybrid approaches publication-title: 2015 IEEE seventh international conference on intelligent computing and information systems (ICICIS) – year: 2005 ident: bib0019 article-title: An empirical study of code clone genealogies publication-title: Proceedings of FSE – volume: 21 start-page: 739 year: 1991 end-page: 755 ident: bib0048 article-title: Identifying syntatic differences between two programs publication-title: Software - Practice and Experience – volume: 98 start-page: 368 year: 1998 end-page: 377 ident: bib0003 article-title: Clone detection using abstract syntax trees publication-title: Proceedings international conference on software maintenance cat No 98CB36272 – reference: Cordy, J. R., & Dean, T. R. (2004). Practical language-independent detection of near-miss clones. – volume: 18 start-page: 341 year: 1975 end-page: 343 ident: bib0012 article-title: A linear space algorithm for computing maximal common subsequences publication-title: Communications of the ACM – volume: 24 start-page: 49 year: 1992 end-page: 57 ident: bib0001 article-title: A program for identifying duplicated code publication-title: Computing Science and Statistics – volume: 71 year: 2006 ident: bib0034 article-title: Bauhaus – A tool suite for program analysis and reverse engineering publication-title: , – volume: 115 start-page: 115. year: 2007 ident: bib0035 article-title: A survey on software clone detection research publication-title: Queen's School of Computing TR – start-page: 40 year: 2003 ident: 10.1016/j.eswa.2019.04.045_bib0022 article-title: Effective automatic procedure extraction – volume: 46 year: 2015 ident: 10.1016/j.eswa.2019.04.045_bib0046 article-title: Structural similarity detection using structure of control statements – start-page: 1 year: 2005 ident: 10.1016/j.eswa.2019.04.045_bib0010 article-title: Method-level code clone detection on transformed abstract syntax trees using sequence matching algorithms publication-title: Transformation – start-page: 140 year: 2005 ident: 10.1016/j.eswa.2019.04.045_bib0028 article-title: SDD: High performance code clone detection system for large scale source code – ident: 10.1016/j.eswa.2019.04.045_bib0021 doi: 10.1007/3-540-47764-0_3 – volume: 55 year: 2013 ident: 10.1016/j.eswa.2019.04.045_bib0033 – volume: 2 start-page: 976 year: 2010 ident: 10.1016/j.eswa.2019.04.045_bib0020 article-title: Clone detection using textual and metric analysis to figure out all types of clones publication-title: International Journal of Computer Communication and Information System – volume: 15 start-page: 1053 issue: 12 year: 1972 ident: 10.1016/j.eswa.2019.04.045_bib0031 article-title: On the criteria to be used in decomposing systems into modules publication-title: Communications ACM doi: 10.1145/361598.361623 – volume: 21 start-page: 739 issue: January year: 1991 ident: 10.1016/j.eswa.2019.04.045_bib0048 article-title: Identifying syntatic differences between two programs publication-title: Software - Practice and Experience doi: 10.1002/spe.4380210706 – start-page: 120 year: 1994 ident: 10.1016/j.eswa.2019.04.045_bib0013 article-title: Substring matching for clone detection and change tracking – year: 2002 ident: 10.1016/j.eswa.2019.04.045_bib0005 – volume: 31 start-page: 266 issue: 1 year: 1999 ident: 10.1016/j.eswa.2019.04.045_bib0009 article-title: Sim: A utility for detecting similarity in computer programs publication-title: SIGCSE Bulletin doi: 10.1145/384266.299783 – volume: 8 start-page: 1016 issue: 11 year: 2002 ident: 10.1016/j.eswa.2019.04.045_bib0032 article-title: Finding plagiarisms among a set of programs with JPlag publication-title: Journal Of Universal Computer Science – volume: 3 start-page: 77 issue: 1-2 year: 1996 ident: 10.1016/j.eswa.2019.04.045_bib0053 article-title: Pattern matching for clone and concept detection publication-title: Automated Software Engineering doi: 10.1007/BF00126960 – volume: 98 start-page: 368 year: 1998 ident: 10.1016/j.eswa.2019.04.045_bib0003 article-title: Clone detection using abstract syntax trees – start-page: 1 year: 2010 ident: 10.1016/j.eswa.2019.04.045_bib0015 article-title: Index-basedcode clone detection: Incremental, distributed, scalable – start-page: 109 year: 1999 ident: 10.1016/j.eswa.2019.04.045_bib0007 article-title: A language independent approach for detecting duplicated code – volume: 41 start-page: 1104 issue: 4 PART 1 year: 2014 ident: 10.1016/j.eswa.2019.04.045_bib0042 article-title: Dendroid: A text mining approach to analyzing and classifying code structures in Android malware families publication-title: Expert Systems with Applications doi: 10.1016/j.eswa.2013.07.106 – volume: 24 start-page: 49 year: 1992 ident: 10.1016/j.eswa.2019.04.045_bib0001 article-title: A program for identifying duplicated code publication-title: Computing Science and Statistics – start-page: 301 year: 2001 ident: 10.1016/j.eswa.2019.04.045_bib0026 article-title: Identifying similar code with program dependence graphs – volume: 63 start-page: 1 year: 2014 ident: 10.1016/j.eswa.2019.04.045_bib0014 article-title: How accurate is coarsegrainedclone detection?: Comparision with fine-grained detectors publication-title: Electronic Communications of the Eighth International Workshop on Software Clones – volume: 1 start-page: 171 year: 1993 ident: 10.1016/j.eswa.2019.04.045_bib0016 article-title: Identifying redundancy in source code using fingerprints – start-page: 253 year: 2006 ident: 10.1016/j.eswa.2019.04.045_bib0023 article-title: Clone detection using abstract syntax suffix trees – start-page: 472 year: 2015 ident: 10.1016/j.eswa.2019.04.045_bib0040 article-title: Code clone detection using coarse and finegrainedhybrid approaches – volume: 2005 start-page: 63 year: 2005 ident: 10.1016/j.eswa.2019.04.045_bib0049 article-title: Archeology of code duplication: Recovering duplication chains from small duplication fragments – ident: 10.1016/j.eswa.2019.04.045_bib0045 doi: 10.26808/rs.ca.i8v2.02 – start-page: 15 year: 2008 ident: 10.1016/j.eswa.2019.04.045_bib0025 article-title: Identifying and removing software clones – start-page: 71 year: 1993 ident: 10.1016/j.eswa.2019.04.045_bib0002 article-title: A theory of parameterized pattern matching: Algorithms and applications publication-title: Stoc – volume: 74 start-page: 470 issue: 7 year: 2009 ident: 10.1016/j.eswa.2019.04.045_bib0036 article-title: Comparison and evaluation of code clone detection techniques and tools: A qualitative approach publication-title: Science of Computer Programming doi: 10.1016/j.scico.2009.02.007 – start-page: 241 year: 1998 ident: 10.1016/j.eswa.2019.04.045_bib0024 article-title: An intermediate representation for integrating reverse engineering\nanalyses – volume: 18 start-page: 341 issue: 6 year: 1975 ident: 10.1016/j.eswa.2019.04.045_bib0012 article-title: A linear space algorithm for computing maximal common subsequences publication-title: Communications of the ACM doi: 10.1145/360825.360861 – start-page: 59 year: 2016 ident: 10.1016/j.eswa.2019.04.045_bib0043 article-title: Code clone detection based on order and content of control statements – ident: 10.1016/j.eswa.2019.04.045_bib0044 doi: 10.7753/IJCATR0410.1003 – volume: 71 year: 2006 ident: 10.1016/j.eswa.2019.04.045_bib0034 article-title: Bauhaus – A tool suite for program analysis and reverse engineering – year: 2005 ident: 10.1016/j.eswa.2019.04.045_bib0019 article-title: An empirical study of code clone genealogies – start-page: 21 year: 2014 ident: 10.1016/j.eswa.2019.04.045_bib0051 article-title: A comparative study of bug patterns in java cloned and non-cloned code – volume: 13 start-page: 645 issue: 6 year: 2008 ident: 10.1016/j.eswa.2019.04.045_bib0018 article-title: Cloning considered harmful” considered harmful: Patterns of cloning insoftware publication-title: Empirical Software Engineering doi: 10.1007/s10664-008-9076-6 – volume: 97 start-page: 405 year: 2018 ident: 10.1016/j.eswa.2019.04.045_bib0039 article-title: A detection framework for semantic code clones and obfuscated code publication-title: Expert Systems with Applications doi: 10.1016/j.eswa.2017.12.040 – volume: 44 start-page: 679 year: 2006 ident: 10.1016/j.eswa.2019.04.045_bib0047 article-title: Phoenix-based clone detection using suffix trees – volume: 33 start-page: 577 issue: 9 year: 2007 ident: 10.1016/j.eswa.2019.04.045_bib0004 article-title: Comparison and evaluation of clone detection tools publication-title: IEEE Transactions on Software Engineering doi: 10.1109/TSE.2007.70725 – start-page: 3 year: 2011 ident: 10.1016/j.eswa.2019.04.045_bib0011 article-title: Incremental codeclone detection: A pdg-based approach – ident: 10.1016/j.eswa.2019.04.045_bib0017 doi: 10.1109/TSE.2002.1019480 – volume: 96 start-page: 244 year: 1996 ident: 10.1016/j.eswa.2019.04.045_bib0052 article-title: Experiment on the Automatic Detection of Function Clones in a Software System Using Metrics publication-title: In icsm – year: 1999 ident: 10.1016/j.eswa.2019.04.045_bib0008 – year: 2005 ident: 10.1016/j.eswa.2019.04.045_bib0030 – ident: 10.1016/j.eswa.2019.04.045_bib0006 – volume: 115 start-page: 115. year: 2007 ident: 10.1016/j.eswa.2019.04.045_bib0035 article-title: A survey on software clone detection research publication-title: Queen's School of Computing TR – start-page: 76 year: 2003 ident: 10.1016/j.eswa.2019.04.045_bib0038 article-title: Winnowing: Local algorithms for document fingerprinting – volume: 32 start-page: 176 issue: 3 year: 2006 ident: 10.1016/j.eswa.2019.04.045_bib0029 article-title: CP-miner: Finding copy-paste and related bugs in large-scale software code publication-title: IEEE Transactions on Software Engineering doi: 10.1109/TSE.2006.28 – year: 2008 ident: 10.1016/j.eswa.2019.04.045_bib0027 article-title: Is cloned code more stable than non-cloned code? – volume: 17 start-page: 503 issue: 4-5 year: 2012 ident: 10.1016/j.eswa.2019.04.045_bib0050 article-title: Clones: What is that smell? publication-title: Empirical Software Engineering doi: 10.1007/s10664-011-9195-3 |
| SSID | ssj0017007 |
| Score | 2.3645034 |
| Snippet | •Methods to identify duplicate codes (code clones) are introduced.•All four types of clones can be identified.•Does not require external lexer or parser to... Software clone detection is an emerging research area in the field of software engineering. Software systems are subjected to continuous modifications in... |
| SourceID | proquest crossref elsevier |
| SourceType | Aggregation Database Enrichment Source Index Database Publisher |
| StartPage | 63 |
| SubjectTerms | and Functional clones Cloning Code duplication Control Statement features Datasets Evolution Identification methods Maintenance costs Performance enhancement Program features Programming environments Redundancy Similarity Software Software engineering Software reuse Source code |
| Title | Code similarity detection through control statement and program features |
| URI | https://dx.doi.org/10.1016/j.eswa.2019.04.045 https://www.proquest.com/docview/2249736555 |
| Volume | 132 |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVESC databaseName: Baden-Württemberg Complete Freedom Collection (Elsevier) customDbUrl: eissn: 1873-6793 dateEnd: 99991231 omitProxy: true ssIdentifier: ssj0017007 issn: 0957-4174 databaseCode: GBLVA dateStart: 20110101 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier – providerCode: PRVESC databaseName: Elsevier SD Complete Freedom Collection [SCCMFC] customDbUrl: eissn: 1873-6793 dateEnd: 99991231 omitProxy: true ssIdentifier: ssj0017007 issn: 0957-4174 databaseCode: ACRLP dateStart: 19950101 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier – providerCode: PRVESC databaseName: Elsevier SD Freedom Collection Journals [SCFCJ] customDbUrl: eissn: 1873-6793 dateEnd: 99991231 omitProxy: true ssIdentifier: ssj0017007 issn: 0957-4174 databaseCode: AIKHN dateStart: 19950101 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier – providerCode: PRVESC databaseName: ScienceDirect (Elsevier) customDbUrl: eissn: 1873-6793 dateEnd: 99991231 omitProxy: true ssIdentifier: ssj0017007 issn: 0957-4174 databaseCode: .~1 dateStart: 19950101 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier – providerCode: PRVLSH databaseName: Elsevier Journals customDbUrl: mediaType: online eissn: 1873-6793 dateEnd: 99991231 omitProxy: true ssIdentifier: ssj0017007 issn: 0957-4174 databaseCode: AKRWK dateStart: 19900101 isFulltext: true providerName: Library Specific Holdings |
| link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV3PS8MwFA5jXrz4W5zOkYM3qWvzo2mPYziq4i462C2kSQoV7YatePNvN0nTgSI7CLm0JKG8Ju97Tb_3PQCuRJ6GgiU6KJgKA4JUFOQGlwIdSswwigSVNnf4cR5nC3K_pMsemHa5MJZW6X1_69Odt_Z3xt6a43VZjp9McGDg0LTU_XtzGeyE2SoGN18bmoeVn2Ot3h4LbG-fONNyvHT9abWHotTJndqUpr_B6ZebdtgzOwB7PmiEk_a5DkFPV0dgvyvIAP3-PAbZdKU0rMu30nyvmvAaKt04qlUFfT0e6Knp0CUS2ZNBKCoFPUsLFtrpfNYnYDG7fZ5mgS-VEEiMkiagEmuGC1TEWEgqhFAoVBhRLTDBWsU0L-IwxzTSNFGUhcLAeqQSKiUhZuoUn4J-tar0GYCIxbqQyIBWSAgSKMlTYna9TM08WKB8AKLORlx6HXFbzuKVd4SxF27tyq1deUhMowNwvRmzblU0tvamnen5j7XAjZvfOm7YvSfud2LNTYiSMhxTSs__Oe0F2LVXFrAiOgT95v1DX5pIpMlHbqmNwM7k7iGbfwMLKd3d |
| linkProvider | Elsevier |
| linkToHtml | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV3PS8MwFA5jHvTib3E6NQdvUtcmeU17lOGYuu3iBruFNElhot1wE2_-7SZtOlBkByGnNgnlNXnfS_u97yF0LbM0lDwxQc51GDCioyCzuBSYUFFOSSRBudzh4SjuT9jjFKYN1K1zYRyt0vv-yqeX3tpf6XhrdhazWefZBgcWDm1Ly39v9gi0xYBwdwK7_VrzPJz-HK8E93jguvvMmYrkZZafTnwoSku9U5fT9Dc6_fLTJfj09tGujxrxXfVgB6hhikO0V1dkwH6DHqF-d64NXs7eZvbAauNrrM2q5FoV2BfkwZ6bjstMIvdpEMtCY0_TwrkphT6Xx2jSux93-4GvlRAoSpJVAIoaTnOSx1QqkFJqEmpKwEjKqNExZHkcZhQiA4kGHkqL65FOQCnG7NQpPUHNYl6YU4QJj02uiEWtkDEiSZKlzG57ldp5qCRZC0W1jYTyQuKunsWrqBljL8LZVTi7ipDZBi10sx6zqGQ0NvaG2vTix2IQ1s9vHNeu35PwW3EpbIySchoDwNk_p71C2_3xcCAGD6Onc7Tj7jj0iqCNmqv3D3Nhw5JVdlkuu29KP99y |
| 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=Code+similarity+detection+through+control+statement+and+program+features&rft.jtitle=Expert+systems+with+applications&rft.au=Sudhamani%2C+M.&rft.au=Rangarajan%2C+Lalitha&rft.date=2019-10-15&rft.pub=Elsevier+Ltd&rft.issn=0957-4174&rft.eissn=1873-6793&rft.volume=132&rft.spage=63&rft.epage=75&rft_id=info:doi/10.1016%2Fj.eswa.2019.04.045&rft.externalDocID=S0957417419302751 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0957-4174&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0957-4174&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0957-4174&client=summon |