Copying and swapping: influences on the design of reusable software components | IEEE Journals & Magazine | IEEE Xplore