Variability Expression within the Context of UML: Issues and Comparisons
Patrick Tessier (CEA/List Saclay, France), Sébastien Gerard (CEA/List Saclay, France), François Terrier (CEA/List Saclay, France) and Jean-Marc Geib (Universite des Sciences et Technologies de Lille, France)
Copyright: © 2005
Time-to-market is one of the most severe constraints imposed on today’s software engineers. The increasing complexity of systems has also shortened the time available for designing them. Several solutions have therefore been proposed to decrease the time and cost of producing applications. This chapter presents the product line paradigm as an effective solution for managing both the variability of products and their evolutions. The product line approach calls for designing a generic and parameterized model that specifies a family of products. It is then possible to instantiate a member of that family by specializing the “parent” model or “framework.” In describing the latter, designers need to explicitly model variability and commonality points among applications. The following discussion explains in detail how UML models express these different requirements. We then describe specific extensions of UML profiles and the way they are used in various product line methodologies.