Tool Assisted Product Configuration in Software Product Lines
Jacob Kristhammar, Roger Schildmeijer · 2008
Software product lines enable large organizations to derive different products on a tight schedule by reusing its developed assets. This master’s thesis will identify some of the problems involved with product configuration in software product lines by investigating how it is done at Sony Ericsson Mobile Communications. We will use the identified problems to present how a tool could be used to improve the process of product configuration. In order to fully benefit from the reuse of developed assets the variability mechanisms and asset structure must be well defined. Otherwise the derivation of products from a software product line can get very complex and difficult to manage. The number of variation points and dependencies among them give rise to problems that needs to be taken care off. Processes and responsibilities are other areas that are important in order to manage a software product line. Another issue with product configuration is to enable some level of traceability between the configured products and the system requirements to ensure that the right products are produced. We have identified that products are configured in a bottom-up manner, i.e. the binding of the variation points are performed by the developers rather than a dedicated unit that is responsible for the derivation of products. We present how product configuration could be done by using variability suggested by the requirement engineers and product planners. A product configurator prototype has been developed to demonstrate how the benefits from well defined variation points and their dependencies can be used to derive new products from the software product line and maintain existing ones. We also propose how the current configuration process should be changed and give examples of how some tasks could be done using the developed prototype.