Reengineering a legacy product line has been addressed very little by current product line research activities. This paper
introduces a method to investigate feature dependencies and interactions, which restricts the variants that can be derived
from the legacy product line assets. Reorganizing the product line assets with respect to new requirements requires more knowledge
than what is easily provided by the classical feature-modeling approaches. Hence, adding all the feature dependencies and
interactions into the feature tree results in unreadable and unmanageable feature models that fail to achieve their original
goals.
We therefore propose two complementary views to represent the feature model. One view shows the hierarchical refinement of
features similar to common feature-modeling approaches in a feature tree. The second view describes what kind of dependencies
and interactions there are between various features.
We show two examples of feature dependencies and interactions in the context of an engine-control software product line, and
we demonstrate how our approach helps to define correct product configurations from product line variants.