Font Size: a A A

Cloned product variants: from ad-hoc to well-managed software reuse

Posted on:2015-01-03Degree:Ph.DType:Thesis
University:University of Toronto (Canada)Candidate:Rubin, JuliaFull Text:PDF
GTID:2478390017994415Subject:Computer Science
Abstract/Summary:
A large number of companies, especially in the automotive, electronics, aerospace and defense domains, develop a portfolio of closely related software products designed to satisfy similar, yet not identical, needs of their customers (a.k.a. a software product line). Even though numerous software product line engineering approaches promise to ease the product line development and maintenance effort, in practice, the adoption of such approaches is still limited. Instead, products are often established ad-hoc, e.g., by copying existing variants and modifying them to fit the requirements of a new customer or market segment.;In this thesis, we investigate the reuse culture in organizations that employ cloning to realize their product lines. By analyzing development activities in several industrial product lines, we show that an efficient management of clones relies on both (1) the unification of the cloned variants into single-copy representations promoted by product line engineering methods and (2) the construction of a management infrastructure on top of existing variants, which allows to mitigate the shortcomings of cloning while leveraging its benefits. These two directions, in fact, coexist and complement each other within a single organization during the transition from ad-hoc to managed reuse---a process that usually takes several years.;Based on empirical evidence, we build the foundations for the management of cloned product variants, contributing a framework that specifies a set of conceptual operators required for variant maintenance and evolution. We show that these operators provide the necessary building blocks that can be composed to realize complex scenarios related to the management of clones, during both the unification and the maintenance of existing variants. We discuss possible implementations of the operators, mapping them to existing work when available. We also provide implementation for some of the missing functionality, and identify opportunities for future research.;We believe that the operator-based view promoted by this work provides a systematic approach for understanding the required, existing and missing functionality. It thus transforms the effort of introducing managed reuse in organizations that employ cloning from opportunistic to predicted, controlled and reproducible. Our work supports both researchers and practitioners interested in improving reuse practices in families of related products, promoting an incremental and staged transition from ad-hoc to well-managed reuse.
Keywords/Search Tags:Product, Ad-hoc, Reuse, Variants, Software, Related, Cloned
Related items