8,536 research outputs found
Structured Review of Code Clone Literature
This report presents the results of a structured review of code clone literature. The aim of the review is to assemble a conceptual model of clone-related concepts which helps us to reason about clones. This conceptual model unifies clone concepts from a wide range of literature, so that findings about clones can be compared with each other
Software Product Line Engineering via Software Transplantation
For companies producing related products, a Software Product Line (SPL) is a
software reuse method that improves time-to-market and software quality,
achieving substantial cost reductions.These benefits do not come for free. It
often takes years to re-architect and re-engineer a codebase to support SPL
and, once adopted, it must be maintained. Current SPL practice relies on a
collection of tools, tailored for different reengineering phases, whose output
developers must coordinate and integrate. We present Foundry, a general
automated approach for leveraging software transplantation to speed conversion
to and maintenance of SPL. Foundry facilitates feature extraction and
migration. It can efficiently, repeatedly, transplant a sequence of features,
implemented in multiple files. We used Foundry to create two valid product
lines that integrate features from three real-world systems in an automated
way. Moreover, we conducted an experiment comparing Foundry's feature migration
with manual effort. We show that Foundry automatically migrated features across
codebases 4.8 times faster, on average, than the average time a group of SPL
experts took to accomplish the task
- โฆ