Evolutionary Multi-Objective algorithms (EMOAs) have been applied to derive products for the variability testing of Software Product Lines (SPLs), which is a complex task impacted by many factors, such as the number o...
详细信息
Evolutionary Multi-Objective algorithms (EMOAs) have been applied to derive products for the variability testing of Software Product Lines (SPLs), which is a complex task impacted by many factors, such as the number of products to be tested, coverage criteria, and efficacy to reveal faults. But such algorithms generally produce a lot of solutions that are uninteresting to the tester. This happens because traditional search algorithms do not take into consideration the user preferences. To ease the selection of the best solutions and avoid effort generating uninteresting solutions, this work introduces an approach that applies preference-based Evolutionary Multi-objective algorithms (PEMOAs) to solve the problem. The approach is multi-objective, working with the number of products to be tested, pairwise coverage and mutation score. It incorporates the preferences before the evolution process and uses the Reference Point (RP) method. Two PEMOAs are evaluated: R-NSGA-II and r-NSGA-II, using two different formulations of objectives, and three kinds of RPs. PEMOAs outperform the traditional NSGA-II by generating a greater number of solutions in the Region of Interest (ROI) associated to the RPs. The use of PEMOAs can reduce the tester's burden in the task of selecting a better and reduced set of products for SPL testing. (C) 2019 Elsevier Inc. All rights reserved.
Context: Multi-and many-evolutionary algorithms have been applied to derive products for the variability testing of Software Product Lines (SPLs). This problem refers to the selection of an adequate product set to tes...
详细信息
Context: Multi-and many-evolutionary algorithms have been applied to derive products for the variability testing of Software Product Lines (SPLs). This problem refers to the selection of an adequate product set to test a SPL by optimizing some objectives related to the number of products to be tested, testing criteria to be satisfied, and revealed faults. However, some problems emerge when the number of objectives to be optimized increases, for example: the solutions generated by the optimization algorithms become incomparable, designing a Pareto-front in this context requires a large number of solutions, and the visualization of such solutions requires special techniques. Several techniques are proposed to tackle this problem, such as decomposition and algorithmsbased on indicators. Among them, algorithmsbased on dimensionality reduction and user preferences are widely used, but there are no studies in the literature investigating the usage of both in a combined way. Objective: In light of this, we introduce COR-NSGA-II (Confidence-based Objective Reduction NSGA-II). COR-NSGA-II defines for each objective a confidence-level calculated with the user preferences provided interactively. The objectives with higher values of confidence are removed from the next algorithm execution. Method: For assessing the feasibility of COR-NSGA-II, experiments were conducted by using six different SPLs, seven objectives, two types of reference points representing the user preferences, and two scenarios to simulate different user profiles. Results: COR-NSGA-II is evaluated against four algorithms explored in the literature for the problem, and outperforms most of them according to R-HV and R-IGD. It takes less time to execute and generates a reduced number of solutions, all of them satisfying the user preferences. Conclusion: A qualitative analysis performed with 12 potential users shows that the task of selecting a solution generated by COR-NSGA-II is easier than selecting a soluti
Context: Search-basedalgorithms have been successfully applied to solve software engineering problems in the field known as Search-based Software Engineering (SBSE). However, in practice, the user may reject the obta...
详细信息
Context: Search-basedalgorithms have been successfully applied to solve software engineering problems in the field known as Search-based Software Engineering (SBSE). However, in practice, the user may reject the obtained solutions, since many characteristics of the problem cannot be mathematically modeled. To cope with this situation, preference-based algorithms have been investigated and raised interest in the SBSE field. Objective: To identify the quantity and type of research on SBSE preference-based approaches and to contribute to this new research subject, named here preference and Search-based Software Engineering (PSBSE), Method: We conducted a systematic mapping, following a research plan to locate, assess, extract and group the outcomes from relevant studies. Results: Few software engineering activities have been addressed. The most used algorithms are evolutionary and single-objective. In most studies the preferences are provided interactively and, in many cases, the user preferences are incorporated in the fitness functions. We observe a lack of evaluation measures and works comparing existing approaches. Conclusions: The use of preference-based algorithms in SBSE is an underexplored subject, and many research opportunities exist. (C) 2017 Elsevier B.V. All rights reserved.
暂无评论