QoS contract preservation through dynamic reconfiguration: A formal semantics approach
The increasing pervasiveness of computing services in everyday life, combined with the dynamic nature of their execution contexts, constitutes a major challenge in guaranteeing theexpected quality of such services at runtime. Quality of Service (QoS) contracts have been proposed to specify expected...
- Autores:
-
Tamura Morimitsu, Gabriel
Cleve, Anthony
Duchien, Laurence
Casallas, Rubby
- Tipo de recurso:
- Article of investigation
- Fecha de publicación:
- 2014
- Institución:
- Universidad ICESI
- Repositorio:
- Repositorio ICESI
- Idioma:
- eng
- OAI Identifier:
- oai:repository.icesi.edu.co:10906/78336
- Acceso en línea:
- http://www.scopus.com/inward/record.url?eid=2-s2.0-84908214736&partnerID=tZOtx3y1
http://www.sciencedirect.com/science/article/pii/S0167642313003390
http://hdl.handle.net/10906/78336
https://doi.org/10.1016/j.scico.2013.12.003
- Palabra clave:
- QoS (Calidad de servicio)
Contratos de software
Semántica del contrato
Quality-of-Service (QoS)
Software contracts
Contract semantics
Automatización y sistemas de control
Automation
Control system
Ingeniería de sistemas y comunicaciones
Telecommunication
- Rights
- openAccess
- License
- https://creativecommons.org/licenses/by-nc-nd/4.0/
Summary: | The increasing pervasiveness of computing services in everyday life, combined with the dynamic nature of their execution contexts, constitutes a major challenge in guaranteeing theexpected quality of such services at runtime. Quality of Service (QoS) contracts have been proposed to specify expected quality levels (QoS levels) on different context conditions, with different enforcing mechanisms. In this paper we present a definition for QoS contracts as a high-level policy for governing the behavior of software systems that self-adapt at runtime in response to context changes. To realize this contract definition, we specify its formal semantics and implement it in a software framework able to execute and reconfigure software applications, in order to maintain fulfilled their associated QoS contracts. The contribution of this paper is threefold. First, we extend typed-attributed graph transformation systems and finite-state machines, and use them as denotations to specify the semantics of QoS contracts. Second, this semantics makes it possible to systematically exploit design patterns at runtime by dynamically deploying them in the managed software applicaion. Third, our semantics guarantees self-adaptive properties suchas reliability and robustness in the contract satisfaction. Finally, we evaluate the applicability of our semantics implementation by integrating and executing it in FraSCAti, amulti-scale component-based middleware, in three case studies. |
---|