On the value of user preferences in search-based software engineering: A case study in software product lines


Software design is a process of trading off competing objectives. If the user objective space is rich, then we should use optimizers that can fully exploit that richness. For example, this study configures software product lines (expressed as feature maps) using various search-based software engineering methods. As we increase the number of optimization objectives, we find that methods in widespread use (e.g. NSGA-II, SPEA2) perform much worse than IBEA (Indicator-Based Evolutionary Algorithm). IBEA works best since it makes most use of user preference knowledge. Hence it does better on the standard measures (hypervolume and spread) but it also generates far more products with 0% violations of domain constraints. Our conclusion is that we need to change our methods for search-based software engineering, particularly when studying complex decision spaces.

Extracted Key Phrases

13 Figures and Tables

Showing 1-10 of 59 extracted citations


Citations per Year

87 Citations

Semantic Scholar estimates that this publication has received between 61 and 130 citations based on the available data.

See our FAQ for additional information.