Controller synthesis of service contracts with variability

Basile, Davide;ter Beek, Maurice H.;Degano, Pierpaolo;Legay, Axel;Di Giandomenico, Felicita;et.al.
(2020) Science of Computer Programming — Vol. 187, n° 1, p. 102344 (2020)

Files

davide.pdf
  • Open Access
  • Adobe PDF
  • 935.98 KB

Details

Authors
  • Basile, Davide
    Author
  • ter Beek, Maurice H.
    Author
  • Degano, Pierpaolo
    Author
  • Legay, AxelUCLouvain
    Author
  • Di Giandomenico, Felicita
    Author
Show more
Abstract
Service contracts characterise the desired behavioural compliance of a composition of services. Compliance is typically defined by the fulfilment of all service requests through service offers, as dictated by a given Service-Level Agreement (SLA). Contract automata are a recently introduced formalism for specifying and composing service contracts. Based on the notion of synthesis of the most permissive controller from Supervisory Control Theory, a safe orchestration of contract automata can be computed that refines a composition into a compliant one. To model more fine-grained SLA and more adaptive service orchestrations, in this paper we endow contract automata with two orthogonal layers of variability: (i) at the structural level, constraints over service requests and offers define different configurations of a contract automaton, depending on which requests and offers are selected or discarded, and (ii) at the behavioural level, service requests of different levels of criticality can be declared, which induces the novel notion of semi-controllability. The synthesis of orchestrations is thus extended to respect both the structural and the behavioural variability constraints. Finally, we show how to efficiently compute the orchestration of all configurations from only a subset of these configurations. A prototypical tool supports the developed theory.
Affiliations

Citations

Basile, D., ter Beek, M. H., Degano, P., Legay, A., Ferrari, G.-L., Gnesi, S., & Di Giandomenico, F. (2020). Controller synthesis of service contracts with variability. Science of Computer Programming, 187(1), 102344. https://doi.org/10.1016/j.scico.2019.102344 (Original work published 2020)