Software systems are usually developed to provide a fixed set of functionalities within given environmental conditions. However, in the last few years, there has been an increasing interest in systems that can autonomously modify their behavior in response to dynamic changes occurring in their execution environment. In one word, they must be self-adaptive. Self-adaptation requires the ability to discover and analyze changes, and to react by applying an adequate set of adaptation actions. The choice of the adaptation actions to apply can be performed in a model-driven fashion, that is by evaluating their effectiveness on a model of the system that is kept alive and updated at run-time. We describe an approach to the design of self-adaptive systems that frames self-adaptation as a control theory problem. Our approach considers the architecture of the application, represented through a Discrete Time Markov Chain (DTMC); the running environment upon which it is deployed, described through a Queuing Model (QM); and a cost model, specified through a Dynamic System. At run-time the system autonomously increases or decreases the amount of resources allocated to different components of the application in response to changes of both workload intensity and distribution, and of performance of the computing resources. The adopted policy both minimizes costs and maintains the desired QoS, in terms of average response time. We evaluate our approach simulating a cloud computing application in a cloud infrastructure. This computing environment has been chosen because it allows on-demand access to a configurable pool of resources that can be easily provisioned and released at run-time.
(2015). A control-theoretic approach to self-adaptive systems and an application to cloud-based software . Retrieved from https://hdl.handle.net/10446/237229
A control-theoretic approach to self-adaptive systems and an application to cloud-based software
Menghi, Claudio;
2015-01-01
Abstract
Software systems are usually developed to provide a fixed set of functionalities within given environmental conditions. However, in the last few years, there has been an increasing interest in systems that can autonomously modify their behavior in response to dynamic changes occurring in their execution environment. In one word, they must be self-adaptive. Self-adaptation requires the ability to discover and analyze changes, and to react by applying an adequate set of adaptation actions. The choice of the adaptation actions to apply can be performed in a model-driven fashion, that is by evaluating their effectiveness on a model of the system that is kept alive and updated at run-time. We describe an approach to the design of self-adaptive systems that frames self-adaptation as a control theory problem. Our approach considers the architecture of the application, represented through a Discrete Time Markov Chain (DTMC); the running environment upon which it is deployed, described through a Queuing Model (QM); and a cost model, specified through a Dynamic System. At run-time the system autonomously increases or decreases the amount of resources allocated to different components of the application in response to changes of both workload intensity and distribution, and of performance of the computing resources. The adopted policy both minimizes costs and maintains the desired QoS, in terms of average response time. We evaluate our approach simulating a cloud computing application in a cloud infrastructure. This computing environment has been chosen because it allows on-demand access to a configurable pool of resources that can be easily provisioned and released at run-time.File | Dimensione del file | Formato | |
---|---|---|---|
978-3-319-28406-4_3.pdf
Solo gestori di archivio
Versione:
publisher's version - versione editoriale
Licenza:
Licenza default Aisberg
Dimensione del file
956.83 kB
Formato
Adobe PDF
|
956.83 kB | Adobe PDF | Visualizza/Apri |
Pubblicazioni consigliate
Aisberg ©2008 Servizi bibliotecari, Università degli studi di Bergamo | Terms of use/Condizioni di utilizzo