Engineering long-running computing systems that achieve their goals under ever-changing conditions pose significant challenges. Self-adaptation has shown to be a viable approach to dealing with changing conditions. Yet, the capabilities of a self-adaptive system are constrained by its operational design domain (ODD), i.e., the conditions for which the system was built (requirements, constraints, and context). Changes, such as adding new goals or dealing with new contexts, require system evolution. While the system evolution process has been automated substantially, it remains human-driven. Given the growing complexity of computing systems, human-driven evolution will eventually become unmanageable. In this paper, we provide a definition for ODD and apply it to a self-adaptive system. Next, we explain why conditions not covered by the ODD require system evolution. Then, we outline a new approach for self-evolution that leverages the concept of ODD, enabling a system to evolve autonomously to deal with conditions not anticipated by its initial ODD. We conclude with open challenges to realise self-evolution
Tue 16 MayDisplayed time zone: Hobart change
09:00 - 10:30 | Keynote 2 & Session 4: Self-optimization and self-evolutionResearch Track / Artifact Track at Meeting Room 105 Chair(s): Radu Calinescu University of York, UK, Myra Cohen Iowa State University, Pooyan Jamshidi University of South Carolina | ||
09:00 60mKeynote | SE4LESAS: Software Engineering for Learning-Enabled Self-Adaptive Systems Research Track Betty H.C. Cheng Michigan State University | ||
10:00 15mShort-paper | From Self-Adaptation to Self-Evolution Research Track Pre-print | ||
10:15 15mShort-paper | Self-Optimizing Agents Using Mixed Initiative Behavior Trees Research Track |