Deriving Product Architectures from an ADLARS Described Reference Architecture using Leopard

In Product Line Architectures, a reference architecture is designed for a family of software systems that share a set of common properties. Variability points are used to capture variations among the different family members. Different product architectures within the family are then derived from the reference architecture based on the set of features chosen for each given product. No methods have been formalized yet on how to derive product architectures from a reference architecture. This process can, in many cases, be very time consuming especially with large-scale systems comprising thousands of variability points. In this case, manual techniques could become tedious and would introduce a high error margin which makes the need for automation and tool support of high importance. In this presentation we demonstrate a technique for deriving product architectures from an ADLARS described reference architecture using Leopard . ADLARS is an architecture description language that was developed within our research group. ADLARS relates system features to architectural structure: Tasks, Components, and Connectors enabling the generation of product architectures from a reference architecture by specifying the product desired feature set. Leopard is one of the tools within the ADLARS Development Studio, a toolset used for developing and maintaining ADLARS architectures. It is an ADLARS integrated development environment (IDE) and compiler. It can parse ADLARS reference architectures and automatically generate product architectures based on the feature set included. Both ADLARS and Leopard are mature projects and have been used to develop different case studies.