Compositions

What are Web Service Compositions?

Web Service Compositions are formed from a singular problem domain which is “local” to problem domain owner. This has traditionally been a clearly marked boundary for a development project to work to. The difference in terms of structured and anarchic systems is described by (Chandy and Rifkin 1996). In structured system domains, the design proceeds from a specification, and there is a single entity that is ultimately responsible for the design and implementation of the system. Anarchic systems on the other hand are collaborative application developments on the Internet which comprise many program units developed by different groups of people. For such distributed systems, no single agency assumes overall responsibility for reliability control. They define the difference in terms of ownership of the design implemented, and thus this ownership is either local or global as part of the deployment of the implementation. Our thoughts are towards this issue in relation to web service compositions, as compositions can be built locally yet aim to conform to global compositional constraints through the use of choreography and orchestration rules. This rule base is significantly involved in standard ways of both communication and domain understanding. There is currently industry work however, in having a global description language for local web service compositions. Fronting these language specifications is the Business Process Execution Language for Web Services (BPEL4WS) for process orchestration and handling fault tolerance or compensation actions. There are two themes of composition, being static and dynamic. Both static and dynamic web service compositions can collectively be described as; “A web service composition consists of orchestrated web services through a local process, itself potentially a service. Static web service compositions are known at design time and are bound to a composition at design time. Dynamic web service compositions are one or many compositions in which web services are not known at design time, and which are discovered or their properties resolved based upon a criteria process set at design time.”

Static Web Service Compositions

Static web service compositions appear currently the most used web service composition style in both industry and academia (Haas 2002). They are formed by identifying manually (i.e. by human assessment) the applicability of a web service to a particular problem domain. The composition is therefore limited to the web services encompassed in the design. Static compositions are represented by known paths, known data representations and expected results as part of a formal and technical link with the web service.

Dynamic Web Service Compositions

Dynamic web service compositions form the basis for discovery and flexibility in web service invocations. WSDL goes some way to detail the technical interface and to locate a given service (Christensen, Curbera et al. 2001), yet it does not identify what that service does, what function(s) it performs in order to fulfil the request, and neither does it suggest what level of service it will provide. Technically, dynamic interactions can be achieved through utility layers, such as the Web Services Invocation Framework (WSIF) (Duftler, Mukhi et al. 2001) which complements WSDL by providing the layer of invocation once discovering WSDL documents. The aim is to be able to build a semi-automated service discovery and execution mechanism. If the scope of a web service composition is to include dynamic discovery and invocation, it must do so by considering how these services would be used in such an anarchic developed system and within a particular problem domain.

The latest from IBM BPEL4WS Forum at Developerworks

See all at IBM Developerworks BPEL4WS Forum

{"module":"feed\/FeedModule","params":{"src":"http:\/\/www-128.ibm.com\/developerworks\/forums\/dw_forum_rss.jsp?forum=167&full=true","limit":"5","module_body":"**%%linked_title%%** (%%custom pubDate%%)"}}
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-Share Alike 2.5 License.