TY - GEN
T1 - Feature and Meta-Models in Clafer: Mixed, Specialized, and Coupled
AU - Bąk, Kacper
AU - Czarnecki, Krzysztof
AU - Wasowski, Andrzej
PY - 2011
Y1 - 2011
N2 - We present Clafer, a meta-modeling language with first-class support for feature modeling. We designed Clafer as a concise notation for meta-models, feature models, mixtures of meta- and feature models (such as components with options), and models that couple feature models and meta-models via constraints (such as mapping feature configurations to component configurations or model templates). Clafer also allows arranging models into multiple specialization and extension layers via constraints and inheritance. We identify four key mechanisms allowing a meta-modeling language to express feature models concisely and show that Clafer meets its design objectives using a sample product line. We evaluated Clafer and how it lends itself to analysis on sample feature models, meta-models, and model templates of an E-Commerce platform.
AB - We present Clafer, a meta-modeling language with first-class support for feature modeling. We designed Clafer as a concise notation for meta-models, feature models, mixtures of meta- and feature models (such as components with options), and models that couple feature models and meta-models via constraints (such as mapping feature configurations to component configurations or model templates). Clafer also allows arranging models into multiple specialization and extension layers via constraints and inheritance. We identify four key mechanisms allowing a meta-modeling language to express feature models concisely and show that Clafer meets its design objectives using a sample product line. We evaluated Clafer and how it lends itself to analysis on sample feature models, meta-models, and model templates of an E-Commerce platform.
KW - Meta-Modeling Language
KW - Feature Modeling
KW - Software Product Line
KW - Model Templates
KW - Constraint-Based Modeling
M3 - Conference article
SN - 0302-9743
VL - 6563
SP - 102
EP - 122
JO - Lecture Notes in Computer Science
JF - Lecture Notes in Computer Science
ER -