  Context and motivation: Software Product Lines (SPL) enable the creation of
software product families with shared core components using feature models to
model variability. Choosing features from a feature model to generate a product
may not be sufficient in certain situations because the application engineer
may need to be able to decide on configuration time the system's elements to
which a certain feature will be applied. Therefore, there is a need to select
which features have to be included in the product but also to which of its
elements they have to be applied. Objective: We introduce local features that
are selectively applied to specific parts of the system during product
configuration. Results: We formalize local features using multimodels to
establish relationships between local features and other elements of the system
models. The paper includes examples illustrating the motivation for local
features, a formal definition, and a domain-specific language for specification
and implementation. Finally, we present a case study in a real scenario that
shows how the concept of local features allowed us to define the variability of
a complex system. The examples and the application case show that the proposal
achieves higher customization levels at the application engineering phase.
