Two of the common features of business and the web are diversity and dynamism. Diversity results in users having different preferences for the quality requirements of a system. Diversity also makes possible alternative implementations for functional requirements, called variants, each of them providing different quality. The quality provided by the system may vary due to different variant components and changes in the environment. The challenge is to dynamically adapt to quality variations and to find the variant that best fulfills the multi-criteria quality requirements driven by user preferences and current runtime conditions. For service-oriented systems this challenge is augmented by their distributed nature and lack of control over the constituent services and their provided quality of service (QoS). We propose a novel approach to runtime adaptability that detects QoS changes, updates the system model with runtime information, and uses the model to select the variant to execute at runtime. We introduce negotiable maintenance goals to express user quality preferences in the requirements model and automatically interpret them quantitatively for system execution. Our lightweight selection strategy selects the variant that best fulfills the user required multi-criteria QoS based on updated QoS values
To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.