2019
Journal article  Open Access

Controller synthesis of service contracts with variability

Basile D., Ter Beek M. H., Degano P., Legay A., Ferrari G. L., Gnesi S., Di Giandomenico F.

Behavioural variability  Supervisory control theory  Service orchestrations  Variability  Service computing  Contract automata  Software 

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.

Source: Science of computer programming (Print) 187 (2019). doi:10.1016/j.scico.2019.102344

Publisher: North-Holland, Amsterdam , Paesi Bassi


[1] D. Georgakopoulos, M.P. Papazoglou (Eds.), Service-Oriented Computing, MIT Press, Cambridge, MA, USA, 2008.
[2] Q. Yi, X. Liu, A. Bouguettaya, B. Medjahed, Deploying and managing Web services: issues, solutions, and directions, VLDB J. 17 (3) (2008) 537-572, https://doi.org/10.1007/s00778-006-0020-3.
[3] A. Bouguettaya, M. Singh, M. Huhns, Q.Z. Sheng, H. Dong, Q. Yu, A.G. Neiat, S. Mistry, B. Benatallah, B. Medjahed, M. Ouzzani, F. Casati, X. Liu, H. Wang, D. Georgakopoulos, L. Chen, S. Nepal, Z. Malik, A. Erradi, Y. Wang, B. Blake, S. Dustdar, F. Leymann, M. Papazoglou, A service computing manifesto: the next 10 years, Commun. ACM 60 (4) (2017) 64-72, https://doi.org/10.1145/2983528.
[4] M.H. ter Beek, A. Bucchiarone, S. Gnesi, Web service composition approaches: from industrial standards to formal methods, in: Proceedings of the 2nd International Conference on Internet and Web Applications and Services, ICIW'07, IEEE, 2007.
[5] M. Bartoletti, T. Cimoli, R. Zunino, Compliance in behavioural contracts: a brief survey, in: C. Bodei, G.L. Ferrari, C. Priami (Eds.), Programming Languages with Applications to Biology and Security, in: LNCS, vol. 9465, Springer, 2015, pp. 103-121.
[6] D. Basile, P. Degano, G.L. Ferrari, Automata for specifying and orchestrating service contracts, Log. Methods Comput. Sci. 12 (4) (2016), https://doi.org/ 10.2168/LMCS-12(4:6)2016.
[7] P.J. Ramadge, W.M. Wonham, Supervisory control of a class of discrete event processes, SIAM J. Control Optim. 25 (1) (1987) 206-230, https://doi.org/ 10.1137/0325013.
[8] C.G. Cassandras, S. Lafortune, Introduction to Discrete Event Systems, Springer, New York, NY, USA, 2006.
[47] P. Istoan, G. Nain, G. Perrouin, J.-M. Jézéquel, Dynamic software product lines for service-based systems, in: Proceedings of the 9th International Conference on Computer and Information Technology, CIT'09, vol. 2, IEEE, 2009, pp. 193-198.
[48] J. Lee, G. Kotonya, Combining service-orientation with product line engineering, IEEE Softw. 27 (2010) 35-41, https://doi.org/10.1109/MS.2010.30.
[49] J. Lee, D. Muthig, M. Naab, A feature-oriented approach for developing reusable product line assets of service-based systems, J. Syst. Softw. 83 (7) (2010) 1123-1136, https://doi.org/10.1016/j.jss.2010.01.048.
[50] M.H. ter Beek, S. Gnesi, M.N. Njima, Product lines for service oriented applications - PL for SOA, in: L. Kovács, R. Pugliese, F. Tiezzi (Eds.), Proceedings of the 7th International Workshop on Automated Specification and Verification of Web Systems, WWV'11, in: EPTCS, vol. 61, 2011, pp. 34-48.
[51] H. Gomaa, K. Hashimoto, Dynamic software adaptation for service-oriented product lines, in: Proceedings of the 15th International Software Product Line Conference, SPLC'11, vol. 2, ACM, 2011, pp. 35:1-35:8.
[52] L. Baresi, S. Guinea, L. Pasquale, Service-oriented dynamic software product lines, Computer 45 (10) (2012) 42-48, https://doi.org/10.1109/MC.2012.289.
[53] J. Lee, G. Kotonya, D. Robinson, Engineering service-based dynamic software product lines, Computer 45 (10) (2012) 49-55, https://doi.org/10.1109/ MC.2012.284.

Metrics



Back to previous page
BibTeX entry
@article{oai:it.cnr:prodotti:409807,
	title = {Controller synthesis of service contracts with variability},
	author = {Basile D. and Ter Beek M. H. and Degano P. and Legay A. and Ferrari G.  L. and Gnesi S. and Di Giandomenico F.},
	publisher = {North-Holland, Amsterdam , Paesi Bassi},
	doi = {10.1016/j.scico.2019.102344},
	journal = {Science of computer programming (Print)},
	volume = {187},
	year = {2019}
}