{'fraction_non_alphanumeric': 0.028347996089931573, 'fraction_numerical': 0.0, 'mean_word_length': 5.4, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Design for Adaptation Framework for Self-Adaptive Systems

A key challenge posed by the Next Generation Internet landscape, is that modern systems need to cope with open and continuously evolving environments and to operate under dynamic circumstances (e.g., changes in the operational context, changes in the availability of resources). In this setting, engineering such systems, as well as dynamically discover, select and compose the appropriate resources (e.g., services, smart things) poses different challenges. Unfortunately, current approaches tend to foresee the system adaptation requirements and their related solutions at design-time, by requiring for continuous involvement of IT and domain experts for the systems re-configuration. This makes them inadequate for the application in open environments. A new way of approaching the design and dynamic adaptation of systems is needed. In this tutorial, we propose a novel design for adaptation framework for modeling and executing modern self-adaptive systems.