100 likes | 230 Views
Software Clones. Individual Research Presentation. Presented By: Adarsh Khare. Outline. Introduction Types of Clones Root Causes for Code Clones Strategies Tools Suggested Relating with 577a and 577b. 1. Types of Clones. Type1 Exact copy without modifications Type 2
E N D
Software Clones Individual Research Presentation Presented By: AdarshKhare
Outline • Introduction • Types of Clones • Root Causes for Code Clones • Strategies • Tools Suggested • Relating with 577a and 577b 1
Types of Clones • Type1 • Exact copy without modifications • Type 2 • Syntactically Identical Copy ( only variable, type, or function identifiers have been changes) • Type 3 • A copy with further modifications ( statements have been changes, added, or removed) 2
Root Causes • Programmers are forced to duplicate the code • Programmers reuse the copied text as a template and then customize • Time Pressure • Organizational Issues ( e.g distributed development organizations) 3
Strategies • Clone Avoidance • Better to avoid them at the beginning. • Clone Removal • Can be achieved using commercial tools • Clone Detection 4
Tool Suggested ( Clone Removal) • Let programmers copy and adjust, and then let tools factor out the • differences with appropriate mechanisms. –Ira Baxter, 2002 • Clone Dr 5
Features of the Tool • Compares files exhaustively across whole systems • Available for many different languages like PHP 4.0 & 5.0, C,C++, C# • Supports analysis of thousands of files/millions of lines of code. 6
Relating with 577a and 577b • 577a • Start gathering knowledge about the tools. • 577b • Use the tools during “Development Phase”. 7
References • Clone Dr • http://www.semdesigns.com/Products/Clone/ • Survey Research and cloning • https://www.google.com/search?q=software+cloning&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a • http://drops.dagstuhl.de/volltexte/2007/962/pdf/06301.KoschkeRainer.962.pdf • http://www.tzi.de/st/papers/koschke-fosm-08.pdf 8