TY - JOUR
T1 - Multi-Objective Optimization Algorithm for Feature Selection in Software Product Lines
AU - Lian, Xiao Li
AU - Zhang, Li
N1 - Publisher Copyright:
© Copyright 2017, Institute of Software, the Chinese Academy of Sciences. All rights reserved.
PY - 2017/10/1
Y1 - 2017/10/1
N2 - In software product lines, the core of product customization is to select appropriate features. Due to the various competing and even conflicting non-functional requirements (NFRs), feature selection, in essential, is a multi-objective optimization process. What's more, the search space in optimization is constrained largely by the relationships between features and the definitive functional requirements (FRs). Besides, some NFRs are with clear numerical limits, while others are not. These varied types of NFRs also present challenges for feature selection. To solve these problems, a novel multi-objective optimization algorithm with a feature selection reviser is proposed. Firstly, description language for the dependency and constraints relationships between features (DL-DCF) are designed to format different types of relationships between features uniformly, which stipulates the coexistence of two or more features. Next, during selection, all NFRs are transformed to optimization goals, and the quantified constraints on NFRs are used as filters to exclude invalid solutions. Furthermore, a reviser is designed to repair the configuration which violates any relation between features or FRs. Finally, the reviser is planted into the multi-objective optimization framework to form the proposed algorithm, MOOFs, to perform feature selection. Comparing with four popular baselines running on four feature models with different scales, empirical results show notable performance improvement of the algorithm on efficiency of valid solution generation and on the multiple NFRs balancing, especially when the feature models are large and complex.
AB - In software product lines, the core of product customization is to select appropriate features. Due to the various competing and even conflicting non-functional requirements (NFRs), feature selection, in essential, is a multi-objective optimization process. What's more, the search space in optimization is constrained largely by the relationships between features and the definitive functional requirements (FRs). Besides, some NFRs are with clear numerical limits, while others are not. These varied types of NFRs also present challenges for feature selection. To solve these problems, a novel multi-objective optimization algorithm with a feature selection reviser is proposed. Firstly, description language for the dependency and constraints relationships between features (DL-DCF) are designed to format different types of relationships between features uniformly, which stipulates the coexistence of two or more features. Next, during selection, all NFRs are transformed to optimization goals, and the quantified constraints on NFRs are used as filters to exclude invalid solutions. Furthermore, a reviser is designed to repair the configuration which violates any relation between features or FRs. Finally, the reviser is planted into the multi-objective optimization framework to form the proposed algorithm, MOOFs, to perform feature selection. Comparing with four popular baselines running on four feature models with different scales, empirical results show notable performance improvement of the algorithm on efficiency of valid solution generation and on the multiple NFRs balancing, especially when the feature models are large and complex.
KW - Feature selection
KW - Functional requirement
KW - Multi-objective optimization algorithm
KW - Non-functional requirement
KW - Software product line
UR - https://www.scopus.com/pages/publications/85037542042
U2 - 10.13328/j.cnki.jos.005130
DO - 10.13328/j.cnki.jos.005130
M3 - 文章
AN - SCOPUS:85037542042
SN - 1000-9825
VL - 28
SP - 2548
EP - 2563
JO - Ruan Jian Xue Bao/Journal of Software
JF - Ruan Jian Xue Bao/Journal of Software
IS - 10
ER -