Are Aspects useful for Managing Variability in Software Product Lines ? A Case Study

Software product line (SPL) based development can help to significantly reduce time-to-market as well as development costs [Don00], by increasing the reuse of all types of documents. To achieve this, SPL development is composed of two primary activities, namely domain engineering and application engineering, that are interlaced during development. Within domain engineering the common and variable parts of the products, which belong to an application domain, are analyzed and described. The resulting documents of this process form the basis of the product line, the so-called Product Line Platform (PLP). During application engineering concrete products are then derived from this PLP. Therefore the terms application and product will be used interchangeably. By careful development and intensive tests of the common parts of the SPL, a correctly applied product line based approach thus can increase the quality of the end products .