by Stefan Fischer, Lukas Linsbauer, Roberto E. Lopez-Herrejon, Alexander Egyed
Abstract:
To keep pace with the increasing demand for custom-tailored software systems, companies often apply a practice called clone-and-own, whereby a new variant of a software system is built by coping and adapting existing variants. Instead of a single and configurable system, clone-and-own leads to ad hoc product portfolios of multiple yet similar variants that soon become impossible to maintain effectively. Clone-and-own has widespread industrial use because it requires no major upfront investments and is intuitive, but it lacks a methodology for systematic reuse. In this work we propose ECCO (Extraction and Composition for Clone-and-Own), a novel approach to enhance cloneand- own that actively supports the development and maintenance of software product variants. A software engineer selects the desired features and ECCO finds the proper software artifacts to reuse and then provides guidance during the manual completion by hinting which software artifacts may need adaptation. We evaluated our approach on 6 case studies, covering 402 variants having up to 344KLOC, and found that precision and recall of composed products quickly reach a near optimum (>95% reuse).
Reference:
Enhancing Clone-and-Own with Systematic Reuse for Developing Software Variants (Stefan Fischer, Lukas Linsbauer, Roberto E. Lopez-Herrejon, Alexander Egyed), In Proceedings of the 30th (IEEE) International Conference on Software Maintenance and Evolution (ICSME 2014), Victoria, Canada, 2014.
Bibtex Entry:
@Conference{DBLP:conf/icsm/FischerLLE14,
author = {Stefan Fischer and Lukas Linsbauer and Roberto E. Lopez-Herrejon and Alexander Egyed},
title = {Enhancing Clone-and-Own with Systematic Reuse for Developing Software Variants},
booktitle = {Proceedings of the 30th (IEEE) International Conference on Software Maintenance and Evolution (ICSME 2014), Victoria, Canada},
year = {2014},
pages = {391--400},
abstract = {To keep pace with the increasing demand for custom-tailored software
systems, companies often apply a practice called clone-and-own, whereby
a new variant of a software system is built by coping and adapting
existing variants. Instead of a single and configurable system, clone-and-own
leads to ad hoc product portfolios of multiple yet similar variants
that soon become impossible to maintain effectively. Clone-and-own
has widespread industrial use because it requires no major upfront
investments and is intuitive, but it lacks a methodology for systematic
reuse. In this work we propose ECCO (Extraction and Composition for
Clone-and-Own), a novel approach to enhance cloneand- own that actively
supports the development and maintenance of software product variants.
A software engineer selects the desired features and ECCO finds the
proper software artifacts to reuse and then provides guidance during
the manual completion by hinting which software artifacts may need
adaptation. We evaluated our approach on 6 case studies, covering
402 variants having up to 344KLOC, and found that precision and recall
of composed products quickly reach a near optimum (>95% reuse).},
bibsource = {dblp computer science bibliography, http://dblp.org},
biburl = {http://dblp.uni-trier.de/rec/bib/conf/icsm/FischerLLE14},
doi = {10.1109/ICSME.2014.61},
file = {:Conferences\\ICSME 2014 - Enhancing Clone and Own with Systematic Reuse for Developing Software Variants\\Enhancing Clone-and-Own with Systematic Reuse-preprint.pdf:PDF},
keywords = {FWF P25289, FWF P25513, FWF M1421},
timestamp = {Wed, 10 Jun 2015 16:53:31 +0200},
url = {http://dx.doi.org/10.1109/ICSME.2014.61},
}