Architectures for Software Product Lines
Product line-based software development can only lead to full success if it is recognized as an integrated concept, which involves all phases of the software engineering process. This project concentrates on architecture modelling forÂ SPLs.
We have developed a top-level process forÂ SPLÂ architecture modelling. Within theÂ domain engineeringÂ initially the requirements for the entireÂ PLPÂ are collected together with the identified variability and afterwards compiled into aÂ requirements modelÂ for theÂ PLP, which among other things contains for example aÂ feature model. This requirements model forms the basis for the top-level layer of theÂ PLPÂ architecture. Starting from this still abstract architecture layer, the PLP architecture gets more and more refined in further architecture layers. This procedure is according to theÂ Model Driven ArchitectureÂ (MDA) approach introduced by theÂ OMG.
In the last step within the domain engineering theÂ PLPÂ architecture gets realized as far as possible. Thereby – according to the differentiation inÂ commonÂ andÂ variable componentsÂ – both finished and incomplete components are placed in theÂ PLP. At the beginning of theÂ application engineeringÂ firstly the requirements for aÂ concrete productÂ are determined on base of the requirements for theÂ PLP. Afterwards – similar to the domain engineering – a first coarse architecture layer for the product is developed, which is based on the layer of the same abstraction level as in theÂ PLPÂ architecture. In the following this top-level architecture becomes more and more refined and improved. Thereby the variability included in theÂ PLPÂ architecture is resolved conform to the previously identified product requirements. In the last step the executable system is implemented based on this product architecture.
At the moment we are analyzing which inputs from the requirements process must be given to build an architecture model for aÂ SPL. Therefore different approaches for usingÂ feature modellingÂ are analyzed how far they can serve as a basis forÂ SPLÂ architecture modelling and which inputs are missing.