Loading…

Local features: Enhancing variability modeling in software product lines

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 b...

Full description

Saved in:
Bibliographic Details
Published in:The Journal of systems and software 2024-07, Vol.213, p.112035, Article 112035
Main Authors: de Castro, David, Cortiñas, Alejandro, Luaces, Miguel R., Pedreira, Oscar, Places, Ángeles Saavedra
Format: Article
Language:English
Subjects:
Citations: Items that this one cites
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary: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. We introduce local features that are selectively applied to specific parts of the system during product configuration. 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. •Application of both general and specific variability to a system.•Defining local and global features in a software product line variability model.•Formalization using multimodels and implementation using a DSL.•Case study: Web-based GIS application enhancing map visualization customization.•Enhanced product customization in the application engineering phase.
ISSN:0164-1212
1873-1228
DOI:10.1016/j.jss.2024.112035