Architectural self-organisation, in which different configurations of software modules are dynamically assembled based on the current context, has been shown to be an effective way for software to self-optimise over time. Current approaches to this rely heavily on human-led definitions: models, policies and processes to control how self-organisation works. We present the case for a paradigm shift to fully emergent computer software which places the burden of understanding entirely into the hands of software itself. These systems are autonomously assembled at runtime from discovered constituent parts and their internal health and external deployment environment continually monitored. An online, unsupervised learning system then uses runtime ...
A self-organising system functions without central control, and through contextual local interaction...
18 chaptersInternational audienceSelf-organisation, self-regulation, self-repair and self-maintenanc...
The software engineering community has proposed numerous approaches for making software self-adaptiv...
Modern distributed systems are exposed to constant changes in their operating environment, leading t...
Contemporary software systems often have millions of lines of code that interact over complex infras...
Current solutions to self-adaptive software architecture are very human-centric, depending on humans...
Conventional approaches to self-adaptive software architectures require human experts to specify mod...
Emergent software systems take a reward signal, an environment signal, and a collection of possible ...
Emergent software systems take a reward signal, an environment signal, and a collection of possible ...
With recent and rapid advances in areas such as online games, embedded systems and Internet...
Contemporary deployment environments are volatile, with conditions that are often hard to predict in...
Modern computer software comprises tens of millions of lines of code and is deployed in highly dynam...
Contemporary systems are increasingly complex, with both large codebases and constantly changing env...
Self-adaptation is increasingly driven by machine-learning methods. We argue that the ultimate chall...
Contemporary software systems are becoming increasingly large, heterogeneous, and decentralised. The...
A self-organising system functions without central control, and through contextual local interaction...
18 chaptersInternational audienceSelf-organisation, self-regulation, self-repair and self-maintenanc...
The software engineering community has proposed numerous approaches for making software self-adaptiv...
Modern distributed systems are exposed to constant changes in their operating environment, leading t...
Contemporary software systems often have millions of lines of code that interact over complex infras...
Current solutions to self-adaptive software architecture are very human-centric, depending on humans...
Conventional approaches to self-adaptive software architectures require human experts to specify mod...
Emergent software systems take a reward signal, an environment signal, and a collection of possible ...
Emergent software systems take a reward signal, an environment signal, and a collection of possible ...
With recent and rapid advances in areas such as online games, embedded systems and Internet...
Contemporary deployment environments are volatile, with conditions that are often hard to predict in...
Modern computer software comprises tens of millions of lines of code and is deployed in highly dynam...
Contemporary systems are increasingly complex, with both large codebases and constantly changing env...
Self-adaptation is increasingly driven by machine-learning methods. We argue that the ultimate chall...
Contemporary software systems are becoming increasingly large, heterogeneous, and decentralised. The...
A self-organising system functions without central control, and through contextual local interaction...
18 chaptersInternational audienceSelf-organisation, self-regulation, self-repair and self-maintenanc...
The software engineering community has proposed numerous approaches for making software self-adaptiv...