[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1109/WCRE.2006.1guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

"Cloning Considered Harmful" Considered Harmful

Published: 23 October 2006 Publication History

Abstract

Current literature on the topic of duplicated (cloned) code in software systems often considers duplication harmful to the system quality and the reasons commonly cited for duplicating code often have a negative connotation. While these positions are sometimes correct, during our case studies we have found that this is not universally true, and we have found several situations where code duplication seems to be a reasonable or even beneficial design option. For example, a method of introducing experimental changes to core subsystems is to duplicate the subsystem and introduce changes there in a kind of sandbox testbed. As features mature and become stable within the experimental subsystem, they can then be introduced gradually into the stable code base. In this way risk of introducing instabilities in the stable version is minimized. This paper describes several patterns of cloning that we have encountered in our case studies and discusses the advantages and disadvantages associated with using them.

Cited By

View all
  • (2025)CloneRipples: predicting change propagation between code clone instances by graph-based deep learningEmpirical Software Engineering10.1007/s10664-024-10567-030:1Online publication date: 1-Feb-2025
  • (2024)Automated Clone Elimination in Python TestsLeveraging Applications of Formal Methods, Verification and Validation. Software Engineering Methodologies10.1007/978-3-031-75387-9_7(97-114)Online publication date: 27-Oct-2024
  • (2022)Interaction vs. Abstraction: Managed Copy and PasteProceedings of the 1st ACM SIGPLAN International Workshop on Programming Abstractions and Interactive Notations, Tools, and Environments10.1145/3563836.3568723(11-19)Online publication date: 29-Nov-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Guide Proceedings
WCRE '06: Proceedings of the 13th Working Conference on Reverse Engineering
October 2006
325 pages
ISBN:0769527191

Publisher

IEEE Computer Society

United States

Publication History

Published: 23 October 2006

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 15 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2025)CloneRipples: predicting change propagation between code clone instances by graph-based deep learningEmpirical Software Engineering10.1007/s10664-024-10567-030:1Online publication date: 1-Feb-2025
  • (2024)Automated Clone Elimination in Python TestsLeveraging Applications of Formal Methods, Verification and Validation. Software Engineering Methodologies10.1007/978-3-031-75387-9_7(97-114)Online publication date: 27-Oct-2024
  • (2022)Interaction vs. Abstraction: Managed Copy and PasteProceedings of the 1st ACM SIGPLAN International Workshop on Programming Abstractions and Interactive Notations, Tools, and Environments10.1145/3563836.3568723(11-19)Online publication date: 29-Nov-2022
  • (2019)CloneCognition: machine learning based code clone validation toolProceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3338906.3341182(1105-1109)Online publication date: 12-Aug-2019
  • (2019)DlfinderProceedings of the 41st International Conference on Software Engineering10.1109/ICSE.2019.00032(152-163)Online publication date: 25-May-2019
  • (2019)CLCDSAProceedings of the 34th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE.2019.00099(1026-1037)Online publication date: 10-Nov-2019
  • (2019)Measuring the effect of clone refactoring on the size of unit test cases in object-oriented softwareInnovations in Systems and Software Engineering10.1007/s11334-019-00334-615:2(117-137)Online publication date: 1-Jun-2019
  • (2019)SiameseEmpirical Software Engineering10.1007/s10664-019-09697-724:4(2236-2284)Online publication date: 1-Aug-2019
  • (2019)Will this clone be short-lived? Towards a better understanding of the characteristics of short-lived clonesEmpirical Software Engineering10.1007/s10664-018-9645-224:2(937-972)Online publication date: 1-Apr-2019
  • (2018)How slim will my system be?Proceedings of the 26th Conference on Program Comprehension10.1145/3196321.3196353(352-360)Online publication date: 28-May-2018
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media