CopyPasteChange (CPC) is an open source plug-in for the Eclipse IDE which tracks the copy and paste activities of a developer and the resulting duplications in the source code of a software application (clones). Aside of increasing the general awareness of clones in the application one of the main long term goals of CPC is the detection of update anomalies. Update anomalies occur if a duplicated (cloned) source code segment is modified in only one of its locations and if the modification is of a nature which should be propagated to the remaining locations. Typically this happens because the programmer is not aware of the remaining copies of the clone and thus fails to update them.
CPC represents a flexible, scalable framework for future work in the area of copy and paste clone tracking. The currently available version implements only very rudimentary heuristics for the detection of update anomalies and only provides basic clone visualisation features. CPC is an open source project and everybody is encouraged to contribute extensions to improve the functionality of CPC. What we have so far is only a first step.
Another goal of CPC is the collection of data on copy and paste practices of programmers. However, CPC does not transmit any data automatically. Users who are willing to contribute to our research efforts have to manually send us the corresponding data.
...
The latest version of CPC is always available via the CPC Update Site under:
http://cpc.anetwork.de/update
To install CPC start Eclipse and open the Install/Update dialog via Help -> Software Updates -> Find and Install.
Then select Search for new features to install and click New Remote Site. Now you can enter CPC Update Site
under name and http://cpc.anetwork.de/update under url.
You can now install CPC components from this Update Site.
If you have questions about CPC or have some suggestions for future improvements, please feel free to send me an email to weckerle on anetwork de.
I'd also be very interested in knowing where CPC is used. So if you are using CPC, drop me a line :)
CPC Update Site:
cpc.anetwork.de/update
1.0.2 2008-02-23