Self-adaptive software systems engineering concerns the design, implementation and validation of software systems that autonomously adjust their behaviour in response to changes in their environment, ...