Clone detection plays an important role in software engineering. Finding clones within a single project introduces possible refactoring opportunities, and between different projects it could be used for detecting code reuse or possible licensing violations.In this paper, we propose a modification to bag-of-tokens based clone detection that allows detecting more clone pairs of greater diversity without losing precision by implementing a multi-threshold search, i.e. conducting the search several times, aimed at different groups of clones. To combat the increase in operation time that this approach brings about, we propose an optimization that allows to significantly decrease the overlap in detected clones between the searches.We evaluate the method for two different popular clone detection tools on two datasets of different sizes. The implementation of the technique allows to increase the number of detected clones by 40.5-56.6% for different datasets. BigCloneBench evaluation also shows that the recall of detecting Strongly Type-3 clones increases from 37.5% to 59.6%.

Original languageEnglish
Title of host publicationProceedings - 2021 IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2021
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages496-500
Number of pages5
ISBN (Electronic)9781728196305
DOIs
StatePublished - Mar 2021
Event28th IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2021 - Virtual, Honolulu, United States
Duration: 9 Mar 202112 Mar 2021

Conference

Conference28th IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2021
Country/TerritoryUnited States
CityVirtual, Honolulu
Period9/03/2112/03/21

    Scopus subject areas

  • Artificial Intelligence
  • Software
  • Safety, Risk, Reliability and Quality

    Research areas

  • clone detection, similarity threshold, token based clone detection, token length threshold

ID: 78246110