Exploring the design space of proactive tool support for copy-and-paste programming

  • Authors:
  • Daqing Hou;Ferosh Jacob;Patricia Jablonski

  • Affiliations:
  • Clarkson University, Potsdam, NY;Clarkson University, Potsdam, NY;Clarkson University, Potsdam, NY

  • Venue:
  • CASCON '09 Proceedings of the 2009 Conference of the Center for Advanced Studies on Collaborative Research
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Programmers copy and paste code for various reasons, leaving similar code fragments (clones) in the software systems. As a result, they must spend effort and attention in tracking, understanding, and correctly adapting and evolving clones. Ideally, an integrated environment should be used to fully and seamlessly assist programmers in all these activities. Unlike clone-detection-based tools, such environments should support and manage clones proactively as clones are created and evolved. In this paper, an initial design space for such environments is sketched based on our experience with a prototype named CnP. The features and design decisions taken in CnP as well as remaining design problems are identified. To assess the potential of the developed features and identify new design input, code clones in several real-world systems are examined, and their implications on the design (and redesign) of proactive clone tools are discussed.