Skip to main content

CCFinderX: An Interactive Code Clone Analysis Environment

  • Chapter
  • First Online:
Code Clone Analysis

Abstract

CCFinderX is a successor tool that advances the concepts of CCFinder (2002) and Gemini (2002), and is a standalone environment for code clone detection and analysis. CCFinderX is designed as an interactive analysis environment that allows users to switch between views of scatter plot, file, metrics, and source text, for applying to large code bodies. This chapter describes the features of these views, such as the display content, operations for coordination between views, metrics for files and clone classes, and the revamped code clone detection algorithm.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 139.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 179.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 179.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Index of /pub/FreeBSD/development/tarballs/, http://ftp.freebsd.org/pub/FreeBSD/development/tarballs/.

  2. 2.

    The Linux Kernel Archives, https://www.kernel.org/.

  3. 3.

    NetBSD Mercurial, https://anonhg.netbsd.org/.

  4. 4.

    A CCFinder paper from 2002 [7] also shows a scatter plot of the results of similar code clone detection at that time. At that time, the size of each product was about 2M to 2.5M LOC of source files, so we can see that the size has increased about 10 times in 20 years.

References

  1. B. Baker, On finding duplication and near-duplication in large software systems, in Proceedings of the 2nd Working Conference on Reverse Engineering (WCRE 1995) (1995), pp. 86–95

    Google Scholar 

  2. Baxter, I., Yahin, A., Moura, L., Anna, M., Clone detection using abstract syntax trees, in Proceedings of the 14th International Conference on Software Maintenance (ICSM 1998) (1998), pp. 368–377

    Google Scholar 

  3. S. Bellon, R. Koschke, G. Antoniol, J. Krinke, E. Merlo, Comparison and evaluation of clone detection tools. IEEE Trans. Softw. Eng. 33(9), 577–591 (2007)

    Article  Google Scholar 

  4. K. Church, J. Helfman, Dotplot: a program for exploring self-similarity in millions of lines for text and code. J. Am. Stat. Assoc. 2(2), 153–174 (1993)

    Google Scholar 

  5. Higo, Y., Ueda, Y., Kamiya, T., Kusumoto, S., Inoue, K., On software maintenance process improvement based on code clone analysis, in Proceedings of the 4th International Conference on Product Focused Software Process Improvement, (PROFES 2002) (2002), pp. 185–197

    Google Scholar 

  6. Johnson, J., Substring matching for clone detection and change tracking, in Proceedings of the 10th International Conference on Software Maintenance, ICSM 1994 (1994), pp. 120–126

    Google Scholar 

  7. T. Kamiya, S. Kusumoto, K. Inoue, CCFinder: a multilinguistic token-based code clone detection system for large scale source code. IEEE Trans. Softw. Eng. 28(7), 654–670 (2002)

    Article  Google Scholar 

  8. Komondoor, R., Horwitz, S., Using slicing to identify duplication in source code, in Proceedings of the 8th International Symposium on Static Analysis, SAS 2001 (2001), pp. 40–56

    Google Scholar 

  9. K. Kontogiannis, R. DeMori, E. Merlo, M. Galler, M. Bernstein, Pattern matching for clone and concept detection. J. Autom. Softw. Eng. 3(1–2), 77–108 (1996)

    Article  MathSciNet  Google Scholar 

  10. Krinke, J., Identifying similar code with program dependence graphs, in Proceedings of the 8th Working Conference on Reverse Engineering (WCRE 2001) (2001), pp. 301–309

    Google Scholar 

  11. Livieri, S., Higo, Y., Matsushita, M., Inoue, K., Very-large scale code clone analysis and visualization of open source programs using distributed CCFinder, in Proceedings of the 29th International Conference on Software Engineering (ICSE 2007) (2007), pp. 106–115

    Google Scholar 

  12. Y. Semura, N. Yoshida, E. Choi, K. Inoue, CCFinderSW: clone detection tool with flexible multilingual tokenization, in Proceedings of the 24th Asia-Pacific Software Engineering Conference (APSEC 2017) (2017), pp. 654–659

    Google Scholar 

  13. Y. Ueda, Y. Higo, T. Kamiya, S. Kusumoto, K. Inoue, Gemini: code clone analysis tool, in Proceedings of the 2002 International Symposium on Empirical Software Engineering (ISESE2002), vol. 2 (2002), pp. 31–32

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Toshihiro Kamiya .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd.

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Kamiya, T. (2021). CCFinderX: An Interactive Code Clone Analysis Environment. In: Inoue, K., Roy, C.K. (eds) Code Clone Analysis. Springer, Singapore. https://doi.org/10.1007/978-981-16-1927-4_2

Download citation

  • DOI: https://doi.org/10.1007/978-981-16-1927-4_2

  • Published:

  • Publisher Name: Springer, Singapore

  • Print ISBN: 978-981-16-1926-7

  • Online ISBN: 978-981-16-1927-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics