Accepted for 1st Australian Workshop on Engineering Service-Oriented Systems (http://www.csse.monash.edu.au/~swloke/awesos/), 2004.

Focusing on Interactions for Composition for Robust Composite Services Muhammad F. Kaleem Technical University Hamburg-Harburg [email protected]

1. Introduction Composite services1 implement business collaborations by inter-connecting web services provided by different organisations [1]. The potential of composite services to model business-to-business processes resulting in virtual enterprises is being accepted [2]. At present there is substantial academic research and industrial focus on web service compositions. Different methodologies for web service composition exist, in the form of industry standards (e.g. [3]), or as the subject of numerous research efforts (e.g. [4]). We consider a composite service to represent a collaboration of web services from autonomous service providers (organisations) in the pursuit of a business goal. We also consider the establishment of this collaboration as significantly important, and take the view that a decentralized [5] mechanism is most suitable for it. A decentralized mechanism for composition (or decentralised composition) means that the decision for collaboration in the scope of a composite service is made by individual organisations based on their own business policies and goals. A composite service can be expected to be provided by an organisation that seeks the collaboration of other organisations in order to fulfil a business goal. The robustness of the composite service depends on a robust enactment process. At present, however, the creation and control of composite services is presupposed [2], and the enactment mechanism assumed to be centralized [6]. We take the position that for composite services to represent business processes consisting of collaborating, autonomous organisations, a robust and decentralised composite service enactment process is required. In our view, this can be achieved by focusing on interactions for composition, which represent the interactions between the service providers (composite and participant) leading up to the enactment of a composite service. Presently, however, most of the focus is on the execution of composite services, with robustness criteria (e.g. reliability) defined and applied to the execution stage. Approaches that tend to focus on the composition methodology (e.g. [7]), still presuppose a composite service (e.g. by assuming willingness of participation by individual services), and do not incorporate the notion of individual web services as being provided by autonomous service providers making decisions on the basis of their own business policies. 1

Further on in this paper we will use the shorter term composite services to mean composite web services, or web service compositions.

Interactions for composition represent a process in which autonomous service providers interact according to a methodology to enact a composite service. As a result, the composite service can faithfully represent a business collaboration between different organisations, each of which participate in the collaboration on terms and conditions most suited to their business goals and needs. Furthermore, the interactions for composition represent a distinct phase in the web service life-cycle2. In the rest of this position paper, the focus will be to emphasise the need and advantage of interactions for composition. We will also describe briefly initial ideas of how the interactions for composition may be realized. 2. Relevant issues for composite services As we have already mentioned, a composite service is typically a manifestation of a business collaboration between multiple, autonomous organisations. A number of parameters are of importance in such a scenario, which we have identified separately [8]. These parameters may be listed as loose-coupling, autonomy, reliability, consistency and adaptability. In general, these relate to the nature of composite services (loose-coupling), the setting in which composite services will operate, e.g. business-to-business interactions between autonomous organisations (autonomy, consistency), and the general applicability of composite services to real-world scenarios (reliability, adaptability). It is important for a composition methodology to take these parameters into account, and this task is aided by focusing on the interactions for composition. Though these parameters cover the entire life-cycle of web service composition, which includes the composition process as well as the eventual execution of the composite service, taking these into account during the composition process ensures a robust execution as well. 3. Existing approaches for web service composition In this section we look at some well-accepted web service composition methodologies, which represent different approaches to composition. The BPEL4WS specification [3], which is currently the de-facto standard for enactment of composite services, specifies an XML based executable language that can be used to compose web 2

We do not consider the composition process and the composite service execution to be necessarily separate phases. Indeed, these may be interleaved.

services together by describing the control flow and data dependencies between these web services. A BPEL4WS script represents an executable process view of a composite service. However, no notion of web services as being provided by autonomous service providers is incorporated in the BPEL4WS specification. The enactment of a BPEL4WS script and its execution are also both centralised. A middleware infrastructure for web service composition is described in [4]. This framework takes a peer-to-peer orchestration approach, and the control and data flows are distributed over different nodes for scalable execution of the composite service. Among other features, the framework has the concept of service communities, which act as containers of functionally similar services registered with them according to different membership modes. The containers abstract out the functionality provided by member services, and actual invocation of an operation goes to the most suitable member service, as determined by the framework. The framework does not have the notion of service providers as autonomous organisations, or the interactions between them for entering a business collaboration. Furthermore, web service composition according to the methodology provided by this framework is bound to the framework infrastructure. Another approach, which seeks to separate the composition logic from the composition specification, is described in [7]. Here the emphasis is to provide a level of abstraction to the composite service, so that it is possible to start from abstract composition definition and gradually make it concrete to the level of an executable composite service. This framework provided by this approach also contains the notion of an abstract meta-model representing the building blocks of all possible service compositions. As in the previous examples, this approach, while emphasizing a composition methodology, does not cater to the notion of individual web service being provided by autonomous service providers, or the enactment of a composite service as the establishment of a business collaboration between different organisations. 4. So, what’s the point? The main point that we have been making is the lack of emphasis in the current approaches for web service composition on the interactions for composition, or decentralised composition. Though we briefly described just three different approaches in the last section, this point can be generalized to current web service composition approaches. So why is the emphasis on interactions for composition important? A general answer could be described as the ability to take into account the characteristic parameters for composite services we described in section 2. More specifically, we can say that with interactions for composition, the organisational boundaries of individual service providers are respected. This entails the respect of autonomy of service providers, and maintains the loose-coupling

characteristic of service-oriented architectures. Furthermore, the participation of web service providers in a composite service is according to the terms and conditions commensurate with their business policies, as well as with those of the composite service provider. This results directly from decentralised composition, and allows for more reliable composite services, since chances for inconsistencies creeping up in the composite service are drastically reduced during the composition process. This is also helpful as the composite service grows in functionality, and more organisations are involved in the collaboration. In this case inconsistencies are removed along the way as the scope of the composite service grows, and a collaboration is established between different composition service providers and web service providers. Also, a well-defined composition process can provide a suitable basis for entering dynamic contractual or service-level agreements [9]. Interactions for composition also provide for adaptability and flexibility to the composite service, since the changes in terms of participation in a composite service can be effectively communicated between participants through these interactions. We maintain that web service composition, where the composite service is presupposed, and foreknowledge about service providers assumed, cannot lead to reliable business collaborations between autonomous organisations. 5. Interactions for composition In this section we put forward some initial ideas of pertinence to the interactions for composition. The intention here is to highlight the important aspects constituting the interactions, and point out areas of future work. We first introduce the roles of the web service provider (WSP), and the web services composition provider (WSCP). We also define the concept of willing enrolment, which further qualifies the participation of a service provider in a composite service, e.g. an organisation (WSP) may not want to collaborate with a particular organisation (WSCP) in the scope of a composite service. As may already be evident, the WSCP and WSP roles provide an abstraction over autonomous organisations providing web services. The WSCP role is a provider of services composed of services from other WSPs, and represents a manifestation of business collaboration between autonomous organisations for a particular business task. The business collaboration is functionally represented by a composite service. An example for a WSCP could be a travel agent3, which provides customers a complete travel package. The travel package could consist of air travel, train travel, bus tickets, hotel reservation and car rental. All the individual parts of the package could come from individual WSPs, each willing to participate in the 3

A travel agent scenario is a common use case, found frequently in literature.

particular composite service. Here we would like to mention that the WSP role does not expose the web service(s) provided by an organisation, but instead provides an abstract representation of the capabilities the organisation is willing to provide. This means that the actual web services may even be developed later, once the participation in a composite service and the role of the organisation in its scope has been agreed. The same holds for WSCP, which is capable of providing an abstract representation of the capabilities represented by the composite service. The process of composition, represented by the interactions for composition, consists of WSCP and WSPs engaging in an interaction according to a protocol, which we have named as the Web Services Composition Protocol (WSCProtocol). A wellspecified protocol is meant for promotion of interoperability in interactions between autonomous organisations. This protocol-based interaction results in the enactment of the composite service. Figure 1 shows the interactions for composition in a simplified diagram, and also depicts the CompositionContext (shown as CC), which is a context structure forming an indispensable part of the interactions for composition. Further details about the CompositionContext are provided in the next section.

flowing between the participants. Its main purpose is to carry information between participants required for enactment of the composite service. While this information may be carried as part of messages exchanged between participants, the use of the CompositionContext allows for providing context to multiple interactions, and reduces dependence on message formats and message exchange protocols. The information carried by the CompositionContext may include the functional, as well as non-functional aspects of an organisation’s participation in the composite service. Basically this information represents the capabilities of the organisation available for collaboration, and is qualified by the business policies of the organisation. This way the dependence of the WSP on service description mechanisms (e.g. WSDL [11]) is reduced, and may even be done away with. Furthermore, the use of CompositionContext allows qualification of the business policies on a case by case basis. For example, a WSP representing a airline ticket booking web service may offer only domestic ticket booking functionality for inclusion in the composite service to a WSCP that represents a local travel agency.

Figure 1: simplified representation of interactions for composition

Figure 2: conceptual state diagram of the web services composition protocol

Interactions for composition are not limited to just one level of a WSCP and potential WSPs. In fact, depending on the needs of the business, as the business collaboration expands, a hierarchy of WSCPs may form. For example, the travel agent composite service provider may be asked to collaborate with a composite service provider providing banking services. The interactions for collaboration would see the travel agent as playing the role of a web service (albeit a composite one) provider. A conceptual state diagram for the WSCProtocol is shown (but not explained) in figure 2.

A major advantage of CompositionContext lies in the resolution of inconsistencies between organisations during the composition process, leading to reliable composite services. This is possible since the terms and conditions of participation in the composite service can be communicated between the participants using the CompositionContext. Another major benefit to the composite service of using a context-based composition process is its enhanced adaptability. Changes, for example in the participation of a WSP in the composite service, can be communicated to the WSCP using the CompositionContext. A number of context-based service composition approaches have been proposed recently (e.g. [12, 13]). Normally, however, the use of context is within the scope of mobile computing, and the context is characterized by spatial and temporal parameters. Another recent approach [14] describes web service composition based on software agents and context. Although this approach comes near realizing the importance of interactions for composition, the composite service is presupposed, and the

5.1. Context for composition Context can have a very wide-ranging meaning, as is evident from an oft-referenced definition provided in [10]. Moreover, the use of context for the coordination of disparate entities to an agreed outcome (as in transaction processing systems) is also well-established. The CompositionContext, on the other hand, relates together loosely-coupled interactions between autonomous organisations by

interactions between agents are more oriented to the execution of the composite service. 6. Conclusions and future work Once again, we would like to stress our position that for robust composite services representing business collaborations between different organisations leading up to virtual enterprises [2], an emphasis on the process of composition itself is required. The fundamental point this entails is the realization that service providers represent autonomous business organisations, which would like to collaborate for a business-to-business process on terms and conditions conformant to their business policies, and decided by themselves. This can be achieved by decentralized composition, in turn leading to robust composite services reliably representing business collaborations. Some of the important next phases of our work consist of definition of the WSCP and WSP roles, as well as the Web Service Composition Protocol. The structure and scope of the CompositionContext will also be developed. Focus would also be on the abstract representation of the capabilities of organisations available for participation in a composite service. This is important since the capability representation should be expressive enough to reflect the business policies of an organisation, as well as lend to inconsistency resolution. This is also related to the development of a representation for the composite service resulting from the interactions for composition. We expect this representation to be at two levels. One level is the abstract representation of the capabilities of the composite service. This is important since a composite service may be available for further composition in an expanding business collaboration. The other level is an abstract representation of the interactions between individual capabilities. For both of these levels we consider human involvement as playing an important part in the interactions for composition. Therefore the WSCP role may be human or machine, as required. We would like to point out here that we do not aim to create an executable representation of a composite service. Our purpose is to abstractly represent the business collaboration between autonomous organisations based on their capabilities. An executable composite service may follow from this abstract representation, which has the ingredients to enable a robust execution. Also to be investigated is the use of CompositionContext for propagation of changing business policies of organisations (e.g. an organisation deciding to end participation in a composite service). This entails investigating the incorporation of such changes in composite service representation, as well as the representation of interactions between individual capabilities within a composite service.

7. References [1] P. Wohed, W.M.P. van der Aalst, et al., Pattern-Based Analysis of BPEL4WS. Technical Report. FIT-TR-2002-04. Queensland University of Technology. 2002. [2] Charles Petrie and Akhil Sahai, Business Processes on the Web. IEEE Internet Computing, 2004. 8(1): pp. 28-29. [3] Tony Andrews, Francisco Curbera, et al. Business Process Execution Language for Web Services, version 1.1. Accessed at: http://dev2dev.bea.com/technologies/webservices/BPEL4 WS.jsp [4] Liangzhao Zeng, Boualem Benatallah, et al. Quality Driven Web Services Composition. In Proc. WWW2003. Budapest, Hungary., pp: 411-421. 2003. [5] Rohit Khare and Richard N. Taylor, Extending the REpresentational State Transfer (REST) Architectural Style for Decentralized Systems. Technical Report. ISR Technical Report # UCI-ISR-03-8. Institute for Software Research, University of California, Irvine. http://www.isr.uci.edu/tech_reports/UCI-ISR-03-8.pdf. 2003. [6] José M. Vidal, Paul Buhler, et al., Multiagent Systems with Workflows. IEEE Internet Computing, 2004. 8(1): pp. 76-82. [7] Bart Orriens, Jian Yang, et al. Model Driven Service Composition. In Proc. First International Conference on Service Oriented Computing. Trento, Italy. 2003. [8] Muhammad F. Kaleem. Towards Identifying Characteristic Parameters of Web Services Compositions. In Proc. 7th International Conference Business Information Systems (BIS 2004). Poznan, Poland. 2004. [9] Alexander Keller and Heiko Ludwig, The WSLA Framework: Specifying and Monitoring Service Level Agreements for Web Services. Journal of Network and Systems Management, Special Issue on "E-Business Management", March 2003. 11(1). [10] K. Anind Dey, D. Gregory Abowd, et al. A ContextBased Infrastructure for Smart Environment. In Proc. First International Workshop on Managing Interactions in Smart Environments MANSE. Dublin, Ireland. 1999. [11] Erik Christensen, Francisco Curbera, et al. Web Services Description language (WSDL). Accessed at: http://www.w3.org/TR/wsdl [12] L. Baresi, D. Bianchini, et al. Context-Aware Composition of E-services. In Proc. TES 2003. LNCS 2819, pp: 28-41. 2003. [13] Soraya Kouadri Mostéfaoui and Béat Hirsbrunner. Towards a Context-Based Service Composition Framework. In Proc. International Conference on Web Services ICWS'2003. Las Vegas, Nevada. pp: 42-45. 2003. [14] Zakaria Maamar, Soraya Kouadri Mostefaoui, et al. A Web Services Composition Approach based on Software Agents and Context. In Proc. ACM Symposium on Applied Computing SAC 2004. 2004.

Focusing on Interactions for Composition for Robust ...

of composite services to model business-to-business ... service to represent a collaboration of web services ... briefly initial ideas of how the interactions for.

269KB Sizes 1 Downloads 274 Views

Recommend Documents

M602 Focusing on Spatial Composition and Influence of Building ...
Open with. Sign In. Main menu. Displaying M602 Focusing on Spatial Composition and Influence of Building Envelope on Daylight Aspects in an Art Center.pdf.

Robust Trait Composition for Javascript - Research at Google
aSoftware Languages Lab, Vrije Universiteit Brussel, Belgium. bGoogle, USA ... $To appear in Science of Computer Programming, Special Issue on Advances in Dynamic .... been adopted in among others PHP, Perl, Fortress and Racket [9].

Focusing on Solutions - Ida Kubiszewski
owned and profit driven.2 As media outlets com- pete for ratings, and .... other sources. Many stories ... developing renewable energy industries and supporting.

Composition for contraception
Feb 15, 2000 - Plus 20 pg Ethinylestradiol, a Triphasic Combination. Levonorgestrel and ..... Strobel, E.,. Behandlung mit oralen KontraZeptiva [Treatment with Oral .... With normal ovarian function, groups of 30 test subjects each received the ...

Focusing transform based robust azimuth angles ...
In the experimental data processing .... For practical data processing, the array covariance matrix ..... Fig.5 The beamforming course of the FTMV method in.

Composition for contraception
Mar 24, 2006 - Tech. 152-60, 152, 1994. Spona et al., “Shorter pill-free interval in ...... It is certified that error appears in the above-identi?ed patent and that ...

Focusing on Solutions - Dream of a Nation
substandard education and an energy crisis, ... phize personal worries.3 Other studies have found .... developing renewable energy industries and supporting.

Composition-based on-the-fly rescoring for ... - Research at Google
relevant sources (not just user generated language) to produce a model intended for combination .... Some alternative score combining functions follow. C (sG(w|H), sB(w|H)) = (2) .... pictures of winter storm Juneau, power outages winter storm ...

consequences of omnivory for trophic interactions on a ...
impact of omnivores on trophic interactions. On the one hand, omnivory can increase food web complexity, which should decrease the strength of trophic cascades. Manuscript received 29 June 2007; revised 27 September. 2007; accepted 4 October 2007. Co

M605 Computational Architecture - Focusing on Perception and ...
M605 Computational Architecture - Focusing on Percepti ... ctionality Aspects of Urban Intervention by Varaku.pdf. M605 Computational Architecture - Focusing ...

Model generation for robust object tracking based on ...
scription of the databases of the PASCAL object recogni- tion challenge). We try to overcome these drawbacks by proposing a novel, completely unsupervised ...

A robust proportional controller for AQM based on ...
b Department of Computer Science, HongKong University of Science and Technology, HongKong, China. a r t i c l e i n f o ... best tradeoff between utilization and delay. ... than RED under a wide range of traffic scenario, the major draw-.