Information Technology Reference
In-Depth Information
Product line architects also create model-to-model
transformations to instantiate the template models
automatically and thus to derive configured product line
members. In these model-to-model transformations, both the
input and output models conform to the UML 2.0 metamodel.
Several model transformations are created; each one is
in charge of removing elements from the template model
and/or computing attributes of model elements according
to the annotations in the template model. Thus, based on a
feature configuration, a template model can be instantiated
automatically by using model transformations.
Decision models are not explicitly created to support the
product derivation process. The resolution of variability
is performed by product designers creating feature
configurations. However, the effects on UML models are
specified in the model annotations. This produces high
coupling between the core assets and the required effects to
create products.
Thus, products are derived from UML models executing
the created model transformations. The execution order of the
set of model transformations is pre-defined by product line
architects. To ensure the consistency of the created template
instances after the model transformations are executed, the
Czarnecki and Antkiewicz's approach proposes two additional
processing steps: patch application and simplification . A patch
isatransformationthatautomaticallyfixesaproblemthatmay
result from removing elements. It is defined for situations in
which there exists a unique and intuitive solution to a problem
created by element removal. Simplification involves removing
elements that have become redundant after removing other
elements.
Figure 8.2 [CZA 05] presents an example of a UML class
diagram with annotations. In this example, some of the
annotations indicate the following: the class Category is
present in a template instance if the feature Categories
Search WWH ::




Custom Search