Providentia: Using search-based heuristics to optimize satisficement and competing concerns between functional and non-functional objectives in self-adaptive systems
Providentia: Using search-based heuristics to optimize satisficement and competing concerns between functional and non-functional objectives in self-adaptive systems
复制标题
DOI:
10.1016/j.jss.2019.110497
复制
发表时间:
2020-04-01
影响因子:
3.5
通讯作者:
Cheng, Betty H. C.
中科院分区:
文献类型:
--
作者:
Bowers, Kate M.;Fredericks, Erik M.;Cheng, Betty H. C.
In general, a system may be subject to a combination of functional requirements (FRs) that dictate behavior and non-functional requirements (NFRs) that characterize how FRs are to be satisfied. NFRs also introduce cross-cutting concerns that may be difficult to predict, where the degree of satisfaction (i.e., satisficement) of one NFR may be impacted by the satisficement of one or more FRs/NFRs. In particular, self-adaptive systems (SASs) can modify system configurations or behaviors at run time to continuously satisfy FRs and NFRs. This paper presents Providentia, a search-based technique to optimize the satisficement of NFRs in an SAS experiencing various sources of uncertainty. Providentia explores different combinations of weighted FRs to maximize NFR/FR satisficement. Experimental results suggest that Providentia-optimized goal models significantly improve the satisficement of an SAS when compared with manually- and randomly-generated weights and subgoals. Additionally, we apply a hyper-heuristic (Providentia-SAW) to balance the contribution of NFRs, FRs, and the number of adaptations and further improve the Providentia technique. We apply Providentia and Providentia-SAW to two case studies in different application domains involving a remote data mirroring network and a robotic vacuum controller, respectively. (C) 2019 Elsevier Inc. All rights reserved.