Visible to the public Automatically Hardening a Self-adaptive System Against Uncertainty

TitleAutomatically Hardening a Self-adaptive System Against Uncertainty
Publication TypeConference Paper
Year of Publication2016
AuthorsFredericks, Erik M.
Conference NameProceedings of the 11th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
PublisherACM
Conference LocationNew York, NY, USA
ISBN Number978-1-4503-4187-5
Keywordscomposability, 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.

URLhttp://doi.acm.org/10.1145/2897053.2897059
DOI10.1145/2897053.2897059
Citation Keyfredericks_automatically_2016