Auto-Adjusting Self-Adaptive Software Systems

Zoltán Ádám Mann, Andreas Metzger · 2018

Self-adaptive systems can cope with changes in their operating environment by modifying their structure and behavior at run time. Different kinds of changes pose different requirements on how the software should adapt: some changes may require an immediate adaptation, whereas others do not, leaving more time to find the most suitable action. To address different kinds of changes, we introduce auto-adjustment, which works by quickly assessing changes in terms of the resulting requirements on the adaptation logic (e.g., their criticality or urgency), and adjusting the adaptation logic accordingly. Thereby, auto-adjustment allows dynamically considering the trade-off between adaptation speed and adaptation quality. Experiments with an autonomic cloud resource allocation system show that auto-adjustment leads to an improved trade-off between conflicting system goals: by allowing 0.3% higher energy consumption, the number of server overloads can be reduced by 68%.

Read the paper · More papers on PaperTik