ABSTRACT
Existing algorithms for model clone detection operate in batch mode. Consequently, if a small part of a large model changes during maintenance, the entire detection needs to be recomputed to produce updated cloning information. Since this can take several hours, the lack of incremental detection algorithms hinders clone management, which requires up-to-date cloning information. In this paper we present an index-based algorithm for model clone detection that is incremental and distributable. We present a case study that demonstrates its capabilities, outline its current limitations and present directions for future work.
- T. Bakota, R. Ferenc, and T. Gyimothy. Clone smells in software evolution. In ICSM'07, 2007.Google ScholarCross Ref
- H. Bunke, P. Foggia, C. Guidobaldi, C. Sansone, and M. Vento. A comparison of algorithms for maximum common subgraph on randomly connected graphs. In SSPR/SPR'02, 2002. Google ScholarDigital Library
- M. Chilowicz, É. Duris, and G. Roussel. Syntax tree fingerprinting for source code similarity detection. In ICPC'09, 2009.Google ScholarCross Ref
- M. de Wit, A. Zaidman, and A. van Deursen. Managing code clones using dynamic change tracking and resolution. In ICSM'09, 2009.Google ScholarCross Ref
- F. Deissenboeck, B. Hummel, E. Juergens, M. Pfaehler, and B. Schaetz. Model clone detection in practice. In IWSC'10, 2010. Google ScholarDigital Library
- F. Deissenboeck, B. Hummel, E. Juergens, B. Schaetz, S. Wagner, J.-F. Girard, and S. Teuchert. Clone detection in automotive model-based development. In ICSE'08, 2008. Google ScholarDigital Library
- E. Duala-Ekoko and M. P. Robillard. Tracking code clones in evolving software. In ICSE'07, 2007. Google ScholarDigital Library
- M. R. Garey and D. S. Johnson. Computers and Intractability; A Guide to the Theory of NP-Completeness. W. H. Freeman & Co., 1990. Google ScholarDigital Library
- N. Göde and R. Koschke. Incremental clone detection. In CSMR'09, 2009. Google ScholarDigital Library
- J. Huan, W. Wang, and J. Prins. Efficient mining of frequent subgraphs in the presence of isomorphism. In ICDM'03, 2003. Google ScholarDigital Library
- B. Hummel, E. Juergens, L. Heinemann, and M. Conradt. Index-Based Code Clone Detection: Incremental, Distributed, Scalable. In ICSM'10, 2010. Google ScholarDigital Library
- P. Jablonski and D. Hou. CReN: a tool for tracking copy-and-paste code clones and renaming identifiers consistently in the IDE. In Eclipse'07, 2007. Google ScholarDigital Library
- E. Juergens and F. Deissenboeck. How much is a clone? In SQM'10, 2010.Google Scholar
- E. Juergens, F. Deissenboeck, B. Hummel, and S. Wagner. Do code clones matter? In ICSE'09, 2009. Google ScholarDigital Library
- C. J. Kapser and M. W. Godfre. Improved tool support for the investigation of duplication in software. In ICSM'05, 2005. Google ScholarDigital Library
- S. Kawaguchi, T. Yamashina, H. Uwano, K. Fushida, Y. Kamei, M. Nagura, and H. Iida. SHINOBI: A Tool for Automatic Code Clone Detection in the IDE. In WCRE'09, 2009. Google ScholarDigital Library
- R. Koschke. Survey of research on software clones. In Duplication, Redundancy, and Similarity in Software, 2007.Google Scholar
- R. Koschke. Frontiers of software clone management. In FoSM'08, 2008.Google ScholarCross Ref
- T. Neumann. Join ordering -- dynamic programming -- connected subgraphs. http://www-db.in.tum.de/ teaching/ss10/qo/lecture7.pdf, 2010. Lecture slides for Query Optimization, Lecture 7.Google Scholar
- T. T. Nguyen, H. A. Nguyen, J. M. Al-Kofahi, N. H. Pham, and T. N. Nguyen. Scalable and incremental clone detection for evolving software. ICSM'09, 2009.Google ScholarCross Ref
- N. H. Pham, H. A. Nguyen, T. T. Nguyen, J. M. Al-Kofahi, and T. N. Nguyen. Complete and accurate clone detection in graph-based models. In ICSE'09, 2009. Google ScholarDigital Library
- J. W. Raymond and P. Willett. Maximum common subgraph isomorphism algorithms for the matching of chemical structures. J. Computer-Aided Molecular Design, 16(7):521--533, 2002.Google ScholarCross Ref
- M. Rieger, S. Ducasse, and M. Lanza. Insights into system-wide code duplication. In WCRE'04, 2004. Google ScholarDigital Library
- C. K. Roy and J. R. Cordy. A survey on software clone detection research. Technical Report 2007--541, Queen's University, Kingston, Canada, 2007.Google Scholar
- D. Steidl. Index-based model clone detection. http:// www4.in.tum.de/~hummelb/theses/2010_steidl.pdf, 2010. Bachelor Thesis, Technische Universität München.Google Scholar
Index Terms
- Index-based model clone detection
Recommendations
Clone detection in automotive model-based development
ICSE '08: Proceedings of the 30th international conference on Software engineeringModel-based development is becoming an increasingly common development methodology. In important domains like embedded systems already major parts of the code are generated from models specified with domain-specific modelling languages. Hence, such ...
Clone detection and refactoring
OOPSLA '06: Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applicationsThe area of clone detection (i.e., searching for duplicate fragments of source code) has received wide interest recently as indicated by numerous efforts in clone detection tool development. Additionally, some work has been done in the area of selecting ...
Fast, scalable and user-guided clone detection
ICSE '18: Proceedings of the 40th International Conference on Software Engineering: Companion ProceeedingsDespite the great number of clone detection approaches proposed in the literature, few have the scalability and speed to analyze large inter-project source datasets, where clone detection has many potential applications. Furthermore, because of the many ...
Comments