Automatically Hardening a Self-adaptive System Against Uncertainty
Title | Automatically Hardening a Self-adaptive System Against Uncertainty |
Publication Type | Conference Paper |
Year of Publication | 2016 |
Authors | Fredericks, Erik M. |
Conference Name | Proceedings of the 11th International Symposium on Software Engineering for Adaptive and Self-Managing Systems |
Publisher | ACM |
Conference Location | New York, NY, USA |
ISBN Number | 978-1-4503-4187-5 |
Keywords | composability, genetic algorithms, information assurance, pubcrawl, requirements engineering, Scalability, search-based software engineering, self-adaptive systems, software assurance |
Abstract | A self-adaptive system (SAS) can reconfigure to adapt to potentially adverse conditions that can manifest in the environment at run time. However, the SAS may not have been explicitly developed with such conditions in mind, thereby requiring additional configuration states or updates to the requirements specification for the SAS to provide assurance that it continually satisfies its requirements and delivers acceptable behavior. By discovering both adverse environmental conditions and the SAS configuration states that can mitigate those conditions at design time, an SAS can be hardened against uncertainty prior to deployment, effectively extending its lifetime. This paper introduces two search-based techniques, Ragnarok and Valkyrie, for hardening an SAS against uncertainty. Ragnarok automatically discovers adverse conditions that negatively impact an SAS by searching for environmental conditions that explicitly cause requirements violations. Valkyrie then searches for SAS configurations that improve requirements satisficement throughout execution in response to discovered adverse environmental conditions. Together, these techniques can be used to improve the design and implementation of an SAS. We apply each technique to an industry-provided remote data mirroring application that can self-reconfigure in response to unknown or adverse conditions, such as network message delays, network link failures, and sensor noise. |
URL | http://doi.acm.org/10.1145/2897053.2897059 |
DOI | 10.1145/2897053.2897059 |
Citation Key | fredericks_automatically_2016 |