QoS negotiation in service composition

Service composition in Service Oriented Computing concerns not only integration of heterogeneous distributed applications but also dynamic selection of services. Quality of Service (QoS) plays a key role in service composition as services providing the same functionalities can be differentiated according to their QoS guarantees. At subscription time, a service requester and a provider may sign a contract recording the QoS of the supplied service. The cc-pi calculus has been introduced as a constraint-based model of QoS contracts. In this work we propose a variant of the cc-pi calculus in which the alternatives in a choice rather than being selected non-deterministically have a dynamic priority. Basically, a guard cj:πj in a choice is enabled if the constraint cj is entailed by the store of constraints and the prefix πj can be consumed. Moreover, the j-th branch can be selected not only if the corresponding guard cj:πj is enabled but also if cj is weaker than the constraints ci of the other enabled alternatives. We prove that our choice operator is more general than a choice operator with static priority. Finally, we exploit some examples to show that our prioritised calculus allows arbitrarily complex QoS negotiations and that a static form of priority is strictly less expressive than ours.

[1]  Vijay A. Saraswat,et al.  Concurrent constraint programming , 1989, POPL '90.

[2]  Philippa Gardner,et al.  Explicit fusions , 2000, Theor. Comput. Sci..

[3]  Rance Cleaveland,et al.  Priorities in process algebras , 1988, [1988] Proceedings. Third Annual Information Symposium on Logic in Computer Science.

[4]  Maria Grazia Buscemi,et al.  Programming Languages and Systems, 16th European Symposium on Programming, ESOP 2007, Held as Part of the Joint European Conferences on Theory and Practics of Software, ETAPS 2007, Braga, Portugal, March 24 - April 1, 2007, Proceedings , 2007, European Symposium on Programming.

[5]  Simon L. Peyton Jones,et al.  Imperative functional programming , 1993, POPL '93.

[6]  Laura Ferrari,et al.  Constraint-Based Policy Negotiation and Enforcement for Telco Services , 2007, First Joint IEEE/IFIP Symposium on Theoretical Aspects of Software Engineering (TASE '07).

[7]  Sergiu Rudeanu,et al.  Semirings in Operations Research and Computer Science: More Algebra , 2004, Fundam. Informaticae.

[8]  David S. Rosenblum,et al.  QoS-Aware Service Composition in Dino , 2007, Fifth European Conference on Web Services (ECOWS'07).

[9]  Nils Gruschka,et al.  SOA and Web Services: New Technologies, New Standards - New Attacks , 2007, ECOWS 2007.

[10]  Rance Cleaveland,et al.  Priority in Process Algebra , 2001, Handbook of Process Algebra.

[11]  Glynn Winskel,et al.  CCS with Priority Choice , 1995, Inf. Comput..

[12]  P. Rousseeuw,et al.  Wiley Series in Probability and Mathematical Statistics , 2005 .

[13]  Francesca Rossi,et al.  Semiring-based constraint satisfaction and optimization , 1997, JACM.

[14]  Björn Victor,et al.  The fusion calculus: expressiveness and symmetry in mobile processes , 1998, Proceedings. Thirteenth Annual IEEE Symposium on Logic in Computer Science (Cat. No.98CB36226).

[15]  C. Leake Synchronization and Linearity: An Algebra for Discrete Event Systems , 1994 .

[16]  Davide Bacciu,et al.  A Fuzzy Approach for Negotiating Quality of Services , 2006, TGC.

[17]  Stefano Bistarelli,et al.  A Nonmonotonic Soft Concurrent Constraint Language for SLA Negotiation , 2009, VODCA@FOSAD.

[18]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[19]  Mariangiola Dezani-Ciancaglini,et al.  Structured Communications with Concurrent Constraints , 2008, TGC.

[20]  Fabio Gadducci,et al.  Enhancing Constraints Manipulation in Semiring-Based Formalisms , 2006, ECAI.

[21]  Cristian Versari,et al.  A Core Calculus for a Comparative Analysis of Bio-inspired Calculi , 2007, ESOP.

[22]  Jan A. Bergstra,et al.  Syntax and defining equations for an interrupt mechanism in process algebra , 1985 .