Multi-Objective Optimization in Product Lines using Clafer

Introduction

Product-line engineering (PLE) is an approach to engineering a family of different products with a shared architecture and common components. Individual product variants are characterized by a selection of features from the feature model of the product family. Some features contribute positively or negatively to the overall quality of a variant. The challenge faced by product-line engineers is discovering which variants are optimal with respect to a set of objectives and what trade-offs have to be made when choosing among the optimal variants.

Figure 1 presents a workflow for multi-objective modeling in product line engineering:

Fig. 1: Multi-Objective Modeling Workflow

The entire workflow is supported by Clafer Tools 0.4.2:

  • In phases Variability Modeling and Measurement, we use Clafer for specifying the feature models, quality attributes, individual feature contributions to quality, and optimization objectives.
  • In phase Multi-Objective Optimization, we use ClaferMoo.
  • Finally, in phase Visualization & Exploration, we use ClaferMoo Visualizer.

Examples

For some larger examples, visit the following pages:

For an example step-by-step workflow with the Visualizer visit