Abstract
We propose a formal operational semantics for service discovery and binding. This semantics is based on a graph-based representation of the configuration of global computers typed by business activities. Business activities execute distributed workflows that can trigger, at run time, the discovery, ranking and selection of services to which they bind, thus reconfiguring the workflows that they execute. Discovery, ranking and selection are based on compliance with required business and interaction protocols and optimisation of quality-of-service constraints. Binding and reconfiguration are captured as algebraic operations on configuration graphs. We also discuss the methodological implications that this model framework has on software engineering using a typical travel-booking scenario. To the best of our knowledge, our approach is the first to provide a clear separation between service computation and discovery/instantiation/binding, and to offer a formal framework that is independent of the SOA middleware components that act as service registries or brokers, and the protocols through which bindings and invocations are performed.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
Abreu J, Bocchi L, Fiadeiro JL, Lopes A (2007) Specifying and composing interaction protocols for service-oriented system modelling. In: Derrick J, Vain J (eds) FORTE. Lecture notes in computer science, vol 4574. Springer, Berlin, pp 358–373
van der Aalst WMP, Beisiegel M, van Hee KM, König D, Stahl C (2006) A SOA-based architecture framework. In: Leymann F, Reisig W, Thatte SR, van der Aalst WMP (eds), The role of business processes in service oriented architectures, volume 06291 of Dagstuhl seminar proceedings. Internationales Begegnungs- und Forschungszentrum fuer Informatik (IBFI), S chloss Dagstuhl, Germany
Alonso G, Casati F, Kuno HA, Machiraju V (2004) Web services—concepts, architectures and applications. Data-centric systems and applications. Springer, Berlin
Abreu J, Fiadeiro JL (2008) A coordination model for service-oriented interactions. In: Lea D, Zavattaro G (eds) COORDINATION. Lecture notes in computer science, vol 5052. Springer, Berlin, pp 1–16
Allen R, Garlan D (1998) A formal basis for architectural connection. ACM Trans Softw Eng Methodol 6(3): 213–249
Abreu J, Mazzanti F, Fiadeiro JL, Gnesi S (2009) A model-checking approach for service component architectures. In Lee et al. [LLPH09], pp 219–224
Boreale M, Brunic R, Caires L, De Nicola R, Lanese I, Loreti M, Martins F, Montanari U, Ravara A, Sangiorgi D, Vasconcelos VT, Zavattaro G (2006) Scc: a service centered calculus. In: Bravetti M, Núñez M, Zavattaro G (eds) WS-FM. Lecture notes in computer science, vol 4184. Springer, Berlin, pp 38–57
Benatallah B, Casati F, Toumani F (2004) Web service conversation modeling: a cornerstone for e-business automation. IEEE Internet Comput 8(1): 46–54
ter Beek MH, Fantechi A, Gnesi S, Mazzanti F (2007) An action/state-based model-checking approach for the analysis of communication protocols for service-oriented applications. In: Leue S, Merino P (eds) FMICS. Lecture notes in computer science, vol 4916. Springer, Berlin, pp 133–148
Bocchi L, Fiadeiro JL, Lopes A (2008) A use-case driven approach to formal service-oriented modelling. In: Margaria T, Steffen B (eds) ISoLA. Communications in computer and information science, vol 17. Springer, New York, pp 155–169
Bocchi L, Gorton S, Reiff-Marganiec S (2008) Engineering service oriented applications: from StPowla processes to SRML models. In: Fiadeiro JL, Inverardi P (eds) FASE Lecture notes in computer science, vol 4961. Springer, Berlin, pp 163–178
Bocchi L, Hong Y, Lopes A, Fiadeiro JL (2007) From BPEL to SRML: a formal transformational approach. In: Dumas M, Heckel R (eds) WS-FM. Lecture notes in computer science, vol 4937. Springer, Berlin, pp 92–107
Broy M, Krüger IH, Meisinger M (2007) A formal model of services. ACM Trans Softw Eng Methodol 16(1): 5
Bruni R, Lluch-Lafuente A, Montanari U, Tuosto E (2007) Service oriented architectural design. In: Barthe G, Fournet C (eds) TGC. Lecture notes in computer science, vol 4912. Springer, Berlin, pp 186–203
Buscemi MG, Montanari U (2007) Cc-pi: a constraint-based language for specifying service level agreements. In: Nicola [Nic07], pp 18–32
Bistarelli S, Montanari U, Rossi F (1997) Semiring-based constraint satisfaction and optimization. J ACM 44(2): 201–236
Bliudze S, Sifakis J (2008) The algebra of connectors—structuring interaction in BIP. IEEE Trans Comput 57(10): 1315–1330
Bordeaux L, Salaün G, Berardi D, Mecella M (2004) When are two web services compatible?. In: Shan M-C, Dayal U, Hsu M (eds) TES. Lecture notes in computer science, vol 3324. Springer, Berlin, pp 15–28
Coulson G, Blair GS, Grace P, Taïani F, Joolia A, Lee K, Ueyama J, Sivaharan T (2008) A generic component model for building systems software. ACM Trans Comput Syst 26(1): 1–42
Carbone M, Honda K, Yoshida N (2007) Structured communication-centred programming for web services. In: Nicola [Nic07], pp 2–17
Dijkman RM, Dumas M (2004) Service-oriented design: a multi-viewpoint approach. Int J Cooperative Inf Syst 13(4): 337–368
Zeng L, Benatallah B, Ngu AHH, Dumas M, Kalagnanam J, Chang H (2004) Qos-aware middleware for web services composition. IEEE Trans Software Eng 30(5): 311–327
Elfatatry A (2007) Dealing with change: components versus services. Commun ACM 50(8): 35–39
Ferrari GL, Hirsch D, Lanese I, Montanari U, Tuosto E (2005) Synchronised hyperedge replacement as a model for service oriented computing. In: Boer FS, Bonsangue MM, Graf S, Roever WP (eds) FMCO. Lecture notes in computer science, vol 4111. Springer, Berlin, pp 22–43
Fiadeiro JL (2004) Categories for software engineering. Springer, New York
Foster, IT, Kesselman, C (eds) (2004) The grid 2: blueprint for a new computing infrastructure. Morgan Kaufmann, Los Altos
Fiadeiro JL, Lopes A, Abreu J (2010) A formal model for service-oriented interactions. http://www.cs.le.ac.uk/srml
Fiadeiro JL, Lopes A, Bocchi L (2006) Algebraic semantics of service component modules. In: Fiadeiro JL, Schobbens P-Y (eds) WADT. Lecture notes in computer science, vol 4409. Springer, Berlin, pp 37–55
Fiadeiro JL, Lopes A, Bocchi L, Abreu J (2010) The Sensoria reference modelling language. In: Wirsing M, Hoelzl M (eds) Rigorous software engineering for service-oriented systems, LNCS. Springer, Berlin (to appear)
Fiadeiro JL, Schmitt V (2007) Structured co-spans: an algebra of interaction protocols. In: Mossakowski T, Montanari U, Haveraaen M (eds) CALCO. Lecture notes in computer science, vol 4624. Springer, Berlin, pp 194–208
Gu Q, Lago P (2007) A stakeholder-driven service life cycle model for soa. In: Di Nitto E, Polini A, Zisman A (eds) IW-SOSWE. ACM, New York, pp 1–7
Kitchin D, Quark A, Cook WR, Misra J (2009) The Orc programming language. In: Lee D et al [LLPH09], pp 1–25
Lee D, Lopes A, Poetzsch-Heffter A (eds) (2009) Formal techniques for distributed systems, joint 11th IFIP WG 6.1 international conference FMOODS 2009 and 29th IFIP WG 6.1 international conference FORTE 2009, Lisboa, Portugal, June 9–12, 2009. In: Proceedings. Lecture notes in computer science, vol 5522. Springer, Berlin
Lapadula A, Pugliese R, Tiezzi F (2007) A calculus for orchestration of web services. In: Nicola R [Nic07], pp 33–47
Mukhija A, Dingwall-Smith A, Rosenblum DS (2007) QoS-aware service composition in Dino. In: ECOWS, pp 3–12. IEEE Computer Society
Mukhi N, Plebani P (2004) Supporting policy-driven behaviors in web services: experiences and issues. In: Aiello M, Aoyama M, Curbera F, Papazoglou MP (eds) ICSOC. ACM, New York, pp 322–328
Myllärniemi V, Prehofer C, Raatikainen M, van Gurp J, Männistö T (2008) Approach for dynamically composing decentralised service architectures with cross-cutting constraints. In: Morrison R, Balasubramaniam D, Falkner KE (eds) ECSA. Lecture notes in computer science, vol 5292. Springer, Berlin, pp 180–195
De Nicola R (ed) (2007) 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, volume 4421 of Lecture notes in computer science. Springer, New York
OSOA (2005) Service component architecture: building systems using a service oriented architecture. http://www.osoa.org
Pahl C (2007) An ontology for software component matching. STTT 9(2): 169–178
Peltz C (2003) Web services orchestration and choreography. IEEE Comput 36(10): 46–52
Papazoglou MP, Traverso P, Dustdar S, Leymann F (2007) Service-oriented computing: state of the art and research challenges. IEEE Comput 40(11): 38–45
Reisig W (2005) Modeling- and analysis techniques for web services and business processes. In: Steffen M, Zavattaro G (eds) FMOODS. Lecture notes in computer science, vol 3535. Springer, Berlin, pp 243–258
Reisig W (2008) Towards a theory of services. In: Kaschek R, Kop C, Steinberger C, Fliedl G (eds) UNISCON. Lecture notes in business information processing, vol 5. Springer, New York, pp 271–281
Rao J, Su X (2004) A survey of automated web service composition methods. In: Cardoso J, Sheth AP (eds) SWSWPC. Lecture notes in computer science, vol 3387. Springer, pp 43–54
UDDI (2004) UDDI specification technical committee draft. Technical report, OASIS. http://uddi.org/pubs/uddiv3.htm/
Vieira HT, Caires L, Seco JC (2008) The conversation calculus: a model of service-oriented computation. In: Drossopoulou S (ed.) ESOP. Lecture notes in computer science, vol 4960. Springer, Berlin, pp 269–283
W3C (2007) Simple object access protocol (SOAP), 1.2. W3C recommendation. http://www.w3.org/TR/SOAP/
Wirsing M, Hoelzl M (eds) Rigorous software engineering for service-oriented systems. In: LNCS. Springer (to appear)
Wermelinger M, Lopes A, Fiadeiro JL (2001) A graph based architectural (re)configuration language. In: ESEC/SIGSOFT FSE, pp 21–32
Yu T, Lin K-J (2005) A broker-based framework for QoS-aware web service composition. In: EEE. IEEE Computer Society, pp 22–29
Author information
Authors and Affiliations
Corresponding author
Additional information
by T. S. E. Maibaum
Rights and permissions
About this article
Cite this article
Fiadeiro, J.L., Lopes, A. & Bocchi, L. An abstract model of service discovery and binding. Form Asp Comp 23, 433–463 (2011). https://doi.org/10.1007/s00165-010-0166-z
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-010-0166-z