On the Value of User Preferences in Search-Based
Software Engineering: A Case Study in Software
Product Lines
Abdel Salam Sayyad
Tim Menzies
Hany Ammar
Software design is a process of trading off
competing objectives. If the user objective space is rich, then
we 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.
Download
No comments:
Post a Comment