Litcius/Paper detail

Bridging the Gap Between Clone-and-Own and Software Product Lines

Timo Kehrer, Thomas Thüm, Alexander Schultheiß, Paul Maximilian Bittner

202129 citationsDOIOpen Access PDF

Abstract

Software is often released in multiple variants to meet all customer requirements. While software product lines address this need by advocating the development of an integrated software platform, practitioners frequently rely on ad-hoc reuse based on a principle which is known as clone-and-own. This practice avoids high up-front investments, as new variants of a software family are created by simply copying and adapting an existing variant, but maintenance costs explode once a critical number of variants is reached. With our research project VariantSync, we aim to bridge the gap between clone-and-own and product lines by combining the minimal overhead and flexibility of clone-and-own with the systematic handling of variability in software product lines. The key idea is to transparently integrate product-line concepts with variant management facilities known from version control systems in order to automatically synchronize a set of evolving variants. We believe that VariantSync has the potential to change the way how practitioners develop multi-variant software systems for which it is hard to foresee which variants will be added in the future.

Topics & Concepts

Software product lineComputer scienceclone (Java method)Software engineeringSoftware developmentCopyingSoftwareSoftware maintenanceDomain engineeringReuseSoftware constructionOperating systemEngineeringWaste managementDNAPolitical scienceLawBiologyGeneticsAdvanced Software Engineering MethodologiesService-Oriented Architecture and Web ServicesSoftware System Performance and Reliability