Taming Complexity with Self-managed Systems
Daniel A. Menascé · 2019
Modern computer information systems are highly complex, networked, have numerous configuration knobs, and operate in environments that are highly dynamic and evolving. Therefore, one cannot expect that configurations established at design-time will meet QoS and other non-functional goals at run-time. For that reason, the design of complex systems needs to incorporate controllers for adapting the system at run time. In this talk I will describe the four properties of self-managed systems: self-configuring, self-optimizing, self-healing, and self-protecting. I will also describe how these properties are enforced by controllers I designed for a variety of domains including cloud computing, fog/cloud computing, internet datacenters, distributed software systems, and database systems.