As many self-adaptive, smart and pervasive systems use context information to change their behavior based on varying context conditions, context variability is emerging as a technique for modeling context and non-context features that may realize their variability dynamically. Hartmann and Trew [17] highlight the role of context features that can be entangled with conventional feature models and use them as classifiers to delimit the scope of system options (e.g., the software of a car that defines the “region” as a context feature to incorporate different cars’ options according to that region). Context and non-context features can be modeled separately or under a common feature model, such as the two strategies suggested in [5]. The former strategy models two feature models separately, which introduces a bigger number of
dependencies between the context model and the feature model representing the system’s options, but promotes the reusability and replacement for different contexts. The second strategy merges both feature models which requires more modeling effort to overlap context and non-context features into one, but reduces the number of links between both types of features. However, this strategy is more appropriate for systems that don’t need to replace contexts frequently. Context analysis and context variability modeling [1] offer a good choice as key mechanisms that extend the typical feature modeling activity and become quite suitable for collaborative cyber-physical systems that use context data from
physical sensors.
Context feature modeling