ToffA-DSPL: An approach of Trade-off Analysis for designing Dynamic
Software Product Lines
Abstract
Software engineers have adopted the Dynamic Software Product Lines
(DSPL) engineering practices to develop Dynamically Adaptable Software
(DAS). DAS is seen as a DSPL application and must cope with a large
number of configurations of features, Non-functional Requirements
(NFRs), and contexts. However, the accurate representation of the impact
of features over NFRs and contexts for the identification of optimal
configurations is not a trivial task. Software engineers need to have
domain knowledge and design DAS before deploying to satisfy those
requirements. Aiming to handle them, we proposed an approach of
Trade-off Analysis for DSPL at design-time, named ToffA-DSPL. It deals
with the configuration selection process considering interactions
between NFRs and contexts. We performed an exploratory study based on
simulations to identify the usefulness of the ToffA-DSPL approach. In
general, the configurations suggested by ToffA-DSPL provide high
satisfaction levels of NFRs. Based on simulations, we evidenced that our
approach aims to explore reuse and is useful for generating valid and
optimal configurations. In addition, ToffA-DSPL enables software
engineers to conduct trade-off analysis, evaluate changes in the context
feature, and define an adaptation model from optimal configurations
found in the analysis.