SlideShare uma empresa Scribd logo
1 de 6
Baixar para ler offline
Web service composition

                     Eldorina-Andreea Alergus, Andreea-Paula Jipa



       Abstract. One of the most important and promising advantages of Web service
       technology is the possibility of combining and linking existing services to create
       new web processes according to the given requirements. In this paper we
       survey Web Service composition methods and Web service composition tools.



1      Introduction

   Web Services (WSs) are independent and interacting computational elements that
solve specific tasks varying from simple requests to complex business processes, and
that communicate using XML messages following the SOAP standard. They are self-
describing, self-contained, platform independent and can be published, located and
accessed over standard Internet protocols.
   Web services are emerging as a major technology for achieving automated
interactions between distributed and heterogeneous applications. Various technologies
constitute the backbone of this achievement: WSDL, UDDI, and SOAP.
Web Service Description Language (WSDL) is an XML based language which
specifies a WS by defining messages that provide an abstract defnition of the data
being transmitted and operations that a Web service provides to transmit the
messages.
   Universal Description, Discovery and Integration (UDDI) is designed to be
interrogated by Simple Object Access Protocol (SOAP) messages and to provide
access to WSDL documents describing the protocol bindings and message formats
required to interact with the web services listed in its directory.
   Simple Object Access Protocol (SOAP ), is a protocol used for a Web server to call
a procedure on another separate Web server and get back a machine-readable result in
a standardized XML format used to build a Web page that puts together dynamic
information pulled from other multiple sites. A SOAP message format travels over the
Internet using HTTP. SOAP is platform-independent and works over the existing
Internet infrastructure without being tied to any language, operating system, language,
or object model.



2      Web Services Composition

  Web services make it possible to achieve interoperability Business-to-Business
(B2B) from interconnection services offered by multiple business partners based on
2      Eldorina-Andreea Alergus, Andreea-Paula Jipa


business processes. This interconnection of web services to meet a certain business
process is called Web Service composition. The composition can be viewed as an
aggregation of elementary or composite Web services. The composition means that
existing Web services are combined together on the basis of rules of composition to
meet a demand which cannot be realized by a single service. Composition rules
specify the order in which services are invoked and the conditions that some service
may or may not be invoked.
   A main feature of services is the reuse mechanism to build new applications.
Composition rules describe how to compose coherent global services. In particular,
they specify the order in which, and the conditions under which, services may be
invoked. We distinguish syntactic (XML-based) and semantic (ontology-based)
service composition.

2.1      Syntactic Web Service Composition

Syntactic service composition distinguishes two main approaches: orchestration and
choreography.
   Service orchestration combines available services by adding a central coordinator
that we call the orchestrator, responsible with invoking and combining single
activities. Service choreography defines complex tasks via the definition of the
conversation that should be undertaken by each participant. The overall activity is
then achieved as the composition of peer-to-peer interaction among the collaborative
services.

2.1.1 Business Process Execution Language for Web Services (BPEL4WS)

BPEL4WS in an XML-based language designed to enable the coordination and
composition of a set of services, based on the Web Services Description Language
WSDL. BPEL is a behavioral extension of WSDL using a workflow-based approach.
It expresses relationships between multiple invocations by means of control and data
flow links and it employs a distributed concurrent computation model with variables.
A main construct to model the flow of services is a process, which is a net-based
concurrent description connecting activities that send/receive messages to/from
external WS providers. Each provider can be seen as a port of a particular port type,
which has an appropriate WSDL description. A partner link specifies which activity
is linked to a particular port provider.

2.1.2 Web Services Choreography Description Language (WS-CDL)

The WS-CDL is an XML-based language that describes peer-to-peer collaborations of
parties by defining, from a global viewpoint, their complementary observable
behavior; where order message exchanges result in accomplishing a common business
global.
   The Web Services specifications offer a communication bridge between the
heterogeneous computational environments used to develop and host applications.
Web service composition        3


The future of E-Business applications requires the ability to perform long-lived, peer-
to-peer collaborations between the participating services, within or across the trusted
domains of an organization.
   The most important element in WS-CDL is the interconnection activity which
describes an information exchange between parties, with a focus on the receiver.
It consists of three main parts, corresponding to the participants involved, the
information being exchanged and the channel over which to exchange the
information. Exception handling and compensations are supported through so-called
exception and finalizer work units. Messages that are exchanged between participants
are modeled with variables and tokens, whose type can be specified in XML schema
or in WSDL. Channels are used to specify how and where message exchanges can
take place. Synchronization among activities can be achieved via a work unit, which
defines the guard condition that must be fulfilled to continue an activity.
   The difference between BPEL and CDL is that CDL describes a global view of the
observable behavior of messages exchanges of all services, and thus completes BPEL,
in which such behavior is defined from the viewpoint of one particular service.

2.2    Semantic Web Service Composition

The vision underlying semantic web services is to describe the various aspects of WSs
by using explicit, machine-understandable semantics, and as such automate all stages
of the service lifecycle.
   The Semantic Web provides a process-level description of WSs which, in addition
to functional information, models the pre- and post conditions of processes so that the
evolution of the domain can be logically inferred.
   The Internet is seen as a globally linked database in which web pages are marked
with semantic annotations. Considering this infrastructure, we may implement
powerful applications that use the annotations and suitable inference engines to
automatically discover, execute, compose and interoperate services.

2.2.1 Web Ontology Language (OWL-S)

Users and software agents should be able to discover, invoke, compose and monitor
web resources offering particular services and having particular properties, and should
be able to do so with a high degree of automation if desired. OWL-S (formerly
DAML-S) is an ontology of services that makes these functionalities possible.
   To make use of a WS, we need not only the description of the service, but also the
means by which it can be accessed. An important goal for Semantic Web markup
languages, then, is to establish a framework within which these descriptions are made
and shared. Web sites should be able to employ a standard ontology consisting of a
set of basic classes and properties, for declaring and describing services, and ontology
structuring mechanism of OWL provide an appropriate representation language
framework within which to do this.
4      Eldorina-Andreea Alergus, Andreea-Paula Jipa


   OWL-S is considering to support both simple or “atomic” services and complex or
“composite” services as well, but complex services have motivated many of the
ontology’s elements.
   OWL-S is expected to enable the following types of tasks:
   Automatic Web Service discovery: this is an automated process for location of WS
that can provide a particular class of service capabilities, while adhering to some
client-specified constraints.
   Automatic Web Service invocation: is the automatic invocation of a WS by a
computer program and agent, given only a declarative description of that service, as
opposed to when the agent has been pre-programmed to be able to call that particular
service.
   Automatic Web Service composition and interoperation: this involves automatic
selection, composition and interoperation of WS to perform some complex task, given
a high-level description of an objective.

2.3    Web Service Modeling Ontology (WSMO)

WSMO provides a conceptual framework and a formal language for semantically
describing all relevant aspects of WS in order to facilitate the automation of
discovering, combining and invoking electronic services over the web.
   The overall structure of WSMO is described by its four main elements: ontologies,
services, goals and mediators.
   Ontologies provide the terminology used by other WSMO elements, WS
descriptions describe the functional and behavioral aspects of a WS, goals represent
user desires, and mediators aim at automatically handling interoperability problems
between different WSMO elements.
   In addition to these core elements, WSMO introduces a set of core non-functional
properties that can be used by all its modeling elements and are defined globally.
   WSMO is accompanied by a formal language – WS Modeling Language (WSML),
which allows us to write annotation of WSs according to the conceptual model, and
by an execution environment (WSMX) for the dynamic discovery, selection,
mediation and invocation of services.
   In WSMO, choreography and orchestration are specified in the interface of a
service description. Choreography describes the external visible behavior of the
service and an orchestration describes how other services are composed in order to
achieve the required functionality of the service. Considering that there could be more
than one way to interact with a service, WSMO allows the definition of multiple
interfaces for the same service. OSW-L on the other hand, does not clearly distinguish
between choreography and orchestration; it is not based on any formal model. It also
defines only one service model per service, so we are limited to interact in an only
way with the service.
   WSMO explicitly defines mediators in the conceptual model, to facilitate linkage
of heterogeneous resources between one another. This is something OSW-L does not
do; the underlying infrastructure is assumed to handle this.
Web service composition        5


3      Automated Web Service Composition
The composition of Web services can define applications that increase in complexity
through progressively aggregate new components at a high level of abstraction. With
the rapid growth in the number of available Web services, has become virtually
impossible for a human user to analyze all these services and generate the
composition plan manually. This raises the need for automation of web services
composition. The need for automatic composition of services is justified also by the
ubiquitous Internet, which forces companies to abandon the legacy business models
and outdated systems and to organize the virtual enterprise.
   Dynamic composition of web services is a promising approach and at the same
time a challenging research area for the dissemination of service oriented
applications. It is widely recognized that service semantics is a key element for the
dynamic composition of WSs, since it allows the unambiguous descriptions of a
service’s capabilities and parameters.
   Automated service discovery, selection and composition are expected to enrich the
experience of service end-users through value-added services, and to allow automated
processes to interact with minimal human intervention. The automation requires some
knowledge about the services, such as: (1) description of the service capabilities, for
example, in terms of the semantics of IOPEs (Input, Output, Preconditions and
Effects); (2) process model, which provides a description of the service activities,
interaction protocol and exchanged messages; (3) grounding specification of the
service, which describes the coding used to map information onto messages and the
protocols used to exchange these messages.
   In order to resolve the challenge of service composition, most of the work done
until now has focused on two main composition approaches, namely by considering
functional and process service aspects. The functional approach aims at finding a
sequence of atomic components described in terms of their IOPEs that matches a
given query. This sequence can be executed from the start conditions provided by the
query, so that the query goal is satisfied at the end of the sequence. The idea based on
process aspects considers services as stateful processes with a choreography
represented in terms of sequential, conditional, and iterative steps imposed by the
service. These two complementary composition approaches form an interesting trade-
off to develop solutions for service composition.
   One possible method of dynamically compose WSs according to the functional
approach, is the computation of the final service as a semantic graph. The nodes of
this semantic graph represent semantic connections between component services. To
increase the amount of relevant service compositions that can be obtained, we
compute a Causal Link Matrix (CLM). The set of possible solutions are pruned, at
composition time, in order to rank the service compositions according to an
optimization criteria. These criteria can be defined based on the semantic similarity of
component services and/or the non-functional properties of the compositions
calculated by aggregating the nonfunctional properties of the component services.
   Another idea of dynamically compose a web service is to use automata and model
WSs as a finite state machine. Problem: we have a an input specification (goal) B, and
a set of n available WSs A1, A2...An. The question is if we can find a dynamic
composition method to simulate the behavior of the goal B using the given A1,
6      Eldorina-Andreea Alergus, Andreea-Paula Jipa


A2...An. This problem is known as composition synthesis. It amounts to synthesize a
so-called delegator, that tells at any moment which service must perform an action. In
essence, a delegator implements a simulation relation of the goal service B by the
composition of the available services Ai. In the most general setting, services are
modeled by communicating state machines that have access to some local data.


4      Conclusions
The demand for quickly delivering new applications is increasingly becoming a
business imperative today. Application development is often done in an ad hoc
manner, without standard frameworks or libraries, thus resulting in poor reuse of
software assets. Web services have received much interest in industry due to their
potential in facilitating seamless business-to-business or enterprise application
integration. A web services composition tool can help automate the process, from
creating business process functionality, to developing executable workows, to
deploying them on an execution environment.
   In this paper, we made a resume of some WSs composition methods. We had
presented syntactic and semantic web services composition, what orchestration and
choreography are and the differences between them. Current focus is to find new
ways and formal methods for dynamic composition of services.


5      References

[1]F. Lécué, E. Silva, L. Ferreira Pires, A Framework for Dynamic Web Services
Composition, 2007
[2]A. Muscholl, I. Walukiewicz, A Lower Bound on Web Services Composition, pp1-14,
2008
[3]M. H. ter Beek, A. Bucchiarone, S. Gnesi, Formal Methods for Web Services
Composition, pp1-10, 2008
[4]I. Salom (project director), Compunerea automata a serviciilor Web folosind
ontologii – Sintaza etapa 2008
[5]Jinghai Rao, Xiaomeng Su, A Survey of Automated Web Service
Composition Methods,pp 43-54, 2005
[6]http://www.w3.org/Submission/WSMO
[7]http://www.w3.org/Submission/2004/SUBM-OWL-S-20041122
[8] V. Agarwal, K. Dasgupta, N. Karnik, A. Kumar, A. Kundu, S. Mittal, B.
Srivastava, A Service Creation Environment Based on End to End Composition of
Web Services, 2005

Mais conteúdo relacionado

Mais procurados

Intro to web services
Intro to web servicesIntro to web services
Intro to web services
Neil Ghosh
 

Mais procurados (20)

Intro to web services
Intro to web servicesIntro to web services
Intro to web services
 
Introduction to MuleSoft
Introduction to MuleSoftIntroduction to MuleSoft
Introduction to MuleSoft
 
Web services
Web servicesWeb services
Web services
 
Web services - A Practical Approach
Web services - A Practical ApproachWeb services - A Practical Approach
Web services - A Practical Approach
 
An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST
 
JavaOne 2014 - Supporting Multi-tenancy Applications with Java EE
JavaOne 2014 - Supporting Multi-tenancy Applications with Java EEJavaOne 2014 - Supporting Multi-tenancy Applications with Java EE
JavaOne 2014 - Supporting Multi-tenancy Applications with Java EE
 
SoftwareAG webMethods Designer Introduction
SoftwareAG webMethods Designer IntroductionSoftwareAG webMethods Designer Introduction
SoftwareAG webMethods Designer Introduction
 
Web Services - WSDL
Web Services - WSDLWeb Services - WSDL
Web Services - WSDL
 
Understanding Azure Networking Services
Understanding Azure Networking ServicesUnderstanding Azure Networking Services
Understanding Azure Networking Services
 
Windows Azure Service Bus
Windows Azure Service BusWindows Azure Service Bus
Windows Azure Service Bus
 
Asp.net MVC training session
Asp.net MVC training sessionAsp.net MVC training session
Asp.net MVC training session
 
Mvc architecture
Mvc architectureMvc architecture
Mvc architecture
 
Azure Service Bus
Azure Service BusAzure Service Bus
Azure Service Bus
 
Azure Networking - The First Technical Challenge
Azure Networking  - The First Technical ChallengeAzure Networking  - The First Technical Challenge
Azure Networking - The First Technical Challenge
 
Soap web service
Soap web serviceSoap web service
Soap web service
 
Web Design and Development Life Cycle and Technologies
Web Design and Development Life Cycle and TechnologiesWeb Design and Development Life Cycle and Technologies
Web Design and Development Life Cycle and Technologies
 
Getting started with azure event hubs and stream analytics services
Getting started with azure event hubs and stream analytics servicesGetting started with azure event hubs and stream analytics services
Getting started with azure event hubs and stream analytics services
 
REST & RESTful Web Services
REST & RESTful Web ServicesREST & RESTful Web Services
REST & RESTful Web Services
 
Mulesoft ppt
Mulesoft pptMulesoft ppt
Mulesoft ppt
 
Web Servers (ppt)
Web Servers (ppt)Web Servers (ppt)
Web Servers (ppt)
 

Destaque (7)

Chp4 - Composition, Orchestration et Choregraphie de services
Chp4 - Composition, Orchestration et Choregraphie de servicesChp4 - Composition, Orchestration et Choregraphie de services
Chp4 - Composition, Orchestration et Choregraphie de services
 
Web service introduction
Web service introductionWeb service introduction
Web service introduction
 
AWS re:Invent 2016: IoT Visualizations and Analytics (IOT306)
AWS re:Invent 2016: IoT Visualizations and Analytics (IOT306)AWS re:Invent 2016: IoT Visualizations and Analytics (IOT306)
AWS re:Invent 2016: IoT Visualizations and Analytics (IOT306)
 
POWER POINT PRESENTATION ON DATA CENTER
POWER POINT PRESENTATION ON DATA CENTERPOWER POINT PRESENTATION ON DATA CENTER
POWER POINT PRESENTATION ON DATA CENTER
 
Introduction to Web Service
Introduction to Web Service Introduction to Web Service
Introduction to Web Service
 
The Importance of Data Centers
The Importance of Data CentersThe Importance of Data Centers
The Importance of Data Centers
 
Best topics for seminar
Best topics for seminarBest topics for seminar
Best topics for seminar
 

Semelhante a Web Services Composition

webservices overview
webservices overviewwebservices overview
webservices overview
elliando dias
 
Web Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NETWeb Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NET
Ponraj
 
Semantic Web Services (Standards, Monitoring, Testing and Security)
Semantic Web Services  (Standards, Monitoring, Testing and Security)Semantic Web Services  (Standards, Monitoring, Testing and Security)
Semantic Web Services (Standards, Monitoring, Testing and Security)
Reza Gh
 

Semelhante a Web Services Composition (20)

Introduction to webservices
Introduction to webservicesIntroduction to webservices
Introduction to webservices
 
Project - UG - BTech IT - Cluster based Approach for Service Discovery using ...
Project - UG - BTech IT - Cluster based Approach for Service Discovery using ...Project - UG - BTech IT - Cluster based Approach for Service Discovery using ...
Project - UG - BTech IT - Cluster based Approach for Service Discovery using ...
 
Service view
Service viewService view
Service view
 
Java web services
Java web servicesJava web services
Java web services
 
webservices overview
webservices overviewwebservices overview
webservices overview
 
Cc unit 2 updated
Cc unit 2 updatedCc unit 2 updated
Cc unit 2 updated
 
CONTEMPORARY SEMANTIC WEB SERVICE FRAMEWORKS: AN OVERVIEW AND COMPARISONS
CONTEMPORARY SEMANTIC WEB SERVICE FRAMEWORKS: AN OVERVIEW AND COMPARISONSCONTEMPORARY SEMANTIC WEB SERVICE FRAMEWORKS: AN OVERVIEW AND COMPARISONS
CONTEMPORARY SEMANTIC WEB SERVICE FRAMEWORKS: AN OVERVIEW AND COMPARISONS
 
CONTEMPORARY SEMANTIC WEB SERVICE FRAMEWORKS: AN OVERVIEW AND COMPARISONS
CONTEMPORARY SEMANTIC WEB SERVICE FRAMEWORKS: AN OVERVIEW AND COMPARISONSCONTEMPORARY SEMANTIC WEB SERVICE FRAMEWORKS: AN OVERVIEW AND COMPARISONS
CONTEMPORARY SEMANTIC WEB SERVICE FRAMEWORKS: AN OVERVIEW AND COMPARISONS
 
Web Services in Cloud Computing.pptx
Web Services in Cloud Computing.pptxWeb Services in Cloud Computing.pptx
Web Services in Cloud Computing.pptx
 
Advantage of WCF Over Web Services
Advantage of WCF Over Web ServicesAdvantage of WCF Over Web Services
Advantage of WCF Over Web Services
 
Web Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NETWeb Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NET
 
Efficient retrieval of web services using prioritization and clustering
Efficient retrieval of web services using prioritization and clusteringEfficient retrieval of web services using prioritization and clustering
Efficient retrieval of web services using prioritization and clustering
 
Soa & Bpel With Web Sphere
Soa & Bpel With Web SphereSoa & Bpel With Web Sphere
Soa & Bpel With Web Sphere
 
Soa & Bpel With Web Sphere
Soa & Bpel With Web SphereSoa & Bpel With Web Sphere
Soa & Bpel With Web Sphere
 
WebService-Java
WebService-JavaWebService-Java
WebService-Java
 
Distributed system architecture
Distributed system architectureDistributed system architecture
Distributed system architecture
 
Unit 6 SDET Web Services Testing.pptx
Unit 6 SDET Web Services Testing.pptxUnit 6 SDET Web Services Testing.pptx
Unit 6 SDET Web Services Testing.pptx
 
Web services concepts, protocols and development
Web services concepts, protocols and developmentWeb services concepts, protocols and development
Web services concepts, protocols and development
 
Stateful Web Services - Short Report
Stateful Web Services - Short ReportStateful Web Services - Short Report
Stateful Web Services - Short Report
 
Semantic Web Services (Standards, Monitoring, Testing and Security)
Semantic Web Services  (Standards, Monitoring, Testing and Security)Semantic Web Services  (Standards, Monitoring, Testing and Security)
Semantic Web Services (Standards, Monitoring, Testing and Security)
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Web Services Composition

  • 1. Web service composition Eldorina-Andreea Alergus, Andreea-Paula Jipa Abstract. One of the most important and promising advantages of Web service technology is the possibility of combining and linking existing services to create new web processes according to the given requirements. In this paper we survey Web Service composition methods and Web service composition tools. 1 Introduction Web Services (WSs) are independent and interacting computational elements that solve specific tasks varying from simple requests to complex business processes, and that communicate using XML messages following the SOAP standard. They are self- describing, self-contained, platform independent and can be published, located and accessed over standard Internet protocols. Web services are emerging as a major technology for achieving automated interactions between distributed and heterogeneous applications. Various technologies constitute the backbone of this achievement: WSDL, UDDI, and SOAP. Web Service Description Language (WSDL) is an XML based language which specifies a WS by defining messages that provide an abstract defnition of the data being transmitted and operations that a Web service provides to transmit the messages. Universal Description, Discovery and Integration (UDDI) is designed to be interrogated by Simple Object Access Protocol (SOAP) messages and to provide access to WSDL documents describing the protocol bindings and message formats required to interact with the web services listed in its directory. Simple Object Access Protocol (SOAP ), is a protocol used for a Web server to call a procedure on another separate Web server and get back a machine-readable result in a standardized XML format used to build a Web page that puts together dynamic information pulled from other multiple sites. A SOAP message format travels over the Internet using HTTP. SOAP is platform-independent and works over the existing Internet infrastructure without being tied to any language, operating system, language, or object model. 2 Web Services Composition Web services make it possible to achieve interoperability Business-to-Business (B2B) from interconnection services offered by multiple business partners based on
  • 2. 2 Eldorina-Andreea Alergus, Andreea-Paula Jipa business processes. This interconnection of web services to meet a certain business process is called Web Service composition. The composition can be viewed as an aggregation of elementary or composite Web services. The composition means that existing Web services are combined together on the basis of rules of composition to meet a demand which cannot be realized by a single service. Composition rules specify the order in which services are invoked and the conditions that some service may or may not be invoked. A main feature of services is the reuse mechanism to build new applications. Composition rules describe how to compose coherent global services. In particular, they specify the order in which, and the conditions under which, services may be invoked. We distinguish syntactic (XML-based) and semantic (ontology-based) service composition. 2.1 Syntactic Web Service Composition Syntactic service composition distinguishes two main approaches: orchestration and choreography. Service orchestration combines available services by adding a central coordinator that we call the orchestrator, responsible with invoking and combining single activities. Service choreography defines complex tasks via the definition of the conversation that should be undertaken by each participant. The overall activity is then achieved as the composition of peer-to-peer interaction among the collaborative services. 2.1.1 Business Process Execution Language for Web Services (BPEL4WS) BPEL4WS in an XML-based language designed to enable the coordination and composition of a set of services, based on the Web Services Description Language WSDL. BPEL is a behavioral extension of WSDL using a workflow-based approach. It expresses relationships between multiple invocations by means of control and data flow links and it employs a distributed concurrent computation model with variables. A main construct to model the flow of services is a process, which is a net-based concurrent description connecting activities that send/receive messages to/from external WS providers. Each provider can be seen as a port of a particular port type, which has an appropriate WSDL description. A partner link specifies which activity is linked to a particular port provider. 2.1.2 Web Services Choreography Description Language (WS-CDL) The WS-CDL is an XML-based language that describes peer-to-peer collaborations of parties by defining, from a global viewpoint, their complementary observable behavior; where order message exchanges result in accomplishing a common business global. The Web Services specifications offer a communication bridge between the heterogeneous computational environments used to develop and host applications.
  • 3. Web service composition 3 The future of E-Business applications requires the ability to perform long-lived, peer- to-peer collaborations between the participating services, within or across the trusted domains of an organization. The most important element in WS-CDL is the interconnection activity which describes an information exchange between parties, with a focus on the receiver. It consists of three main parts, corresponding to the participants involved, the information being exchanged and the channel over which to exchange the information. Exception handling and compensations are supported through so-called exception and finalizer work units. Messages that are exchanged between participants are modeled with variables and tokens, whose type can be specified in XML schema or in WSDL. Channels are used to specify how and where message exchanges can take place. Synchronization among activities can be achieved via a work unit, which defines the guard condition that must be fulfilled to continue an activity. The difference between BPEL and CDL is that CDL describes a global view of the observable behavior of messages exchanges of all services, and thus completes BPEL, in which such behavior is defined from the viewpoint of one particular service. 2.2 Semantic Web Service Composition The vision underlying semantic web services is to describe the various aspects of WSs by using explicit, machine-understandable semantics, and as such automate all stages of the service lifecycle. The Semantic Web provides a process-level description of WSs which, in addition to functional information, models the pre- and post conditions of processes so that the evolution of the domain can be logically inferred. The Internet is seen as a globally linked database in which web pages are marked with semantic annotations. Considering this infrastructure, we may implement powerful applications that use the annotations and suitable inference engines to automatically discover, execute, compose and interoperate services. 2.2.1 Web Ontology Language (OWL-S) Users and software agents should be able to discover, invoke, compose and monitor web resources offering particular services and having particular properties, and should be able to do so with a high degree of automation if desired. OWL-S (formerly DAML-S) is an ontology of services that makes these functionalities possible. To make use of a WS, we need not only the description of the service, but also the means by which it can be accessed. An important goal for Semantic Web markup languages, then, is to establish a framework within which these descriptions are made and shared. Web sites should be able to employ a standard ontology consisting of a set of basic classes and properties, for declaring and describing services, and ontology structuring mechanism of OWL provide an appropriate representation language framework within which to do this.
  • 4. 4 Eldorina-Andreea Alergus, Andreea-Paula Jipa OWL-S is considering to support both simple or “atomic” services and complex or “composite” services as well, but complex services have motivated many of the ontology’s elements. OWL-S is expected to enable the following types of tasks: Automatic Web Service discovery: this is an automated process for location of WS that can provide a particular class of service capabilities, while adhering to some client-specified constraints. Automatic Web Service invocation: is the automatic invocation of a WS by a computer program and agent, given only a declarative description of that service, as opposed to when the agent has been pre-programmed to be able to call that particular service. Automatic Web Service composition and interoperation: this involves automatic selection, composition and interoperation of WS to perform some complex task, given a high-level description of an objective. 2.3 Web Service Modeling Ontology (WSMO) WSMO provides a conceptual framework and a formal language for semantically describing all relevant aspects of WS in order to facilitate the automation of discovering, combining and invoking electronic services over the web. The overall structure of WSMO is described by its four main elements: ontologies, services, goals and mediators. Ontologies provide the terminology used by other WSMO elements, WS descriptions describe the functional and behavioral aspects of a WS, goals represent user desires, and mediators aim at automatically handling interoperability problems between different WSMO elements. In addition to these core elements, WSMO introduces a set of core non-functional properties that can be used by all its modeling elements and are defined globally. WSMO is accompanied by a formal language – WS Modeling Language (WSML), which allows us to write annotation of WSs according to the conceptual model, and by an execution environment (WSMX) for the dynamic discovery, selection, mediation and invocation of services. In WSMO, choreography and orchestration are specified in the interface of a service description. Choreography describes the external visible behavior of the service and an orchestration describes how other services are composed in order to achieve the required functionality of the service. Considering that there could be more than one way to interact with a service, WSMO allows the definition of multiple interfaces for the same service. OSW-L on the other hand, does not clearly distinguish between choreography and orchestration; it is not based on any formal model. It also defines only one service model per service, so we are limited to interact in an only way with the service. WSMO explicitly defines mediators in the conceptual model, to facilitate linkage of heterogeneous resources between one another. This is something OSW-L does not do; the underlying infrastructure is assumed to handle this.
  • 5. Web service composition 5 3 Automated Web Service Composition The composition of Web services can define applications that increase in complexity through progressively aggregate new components at a high level of abstraction. With the rapid growth in the number of available Web services, has become virtually impossible for a human user to analyze all these services and generate the composition plan manually. This raises the need for automation of web services composition. The need for automatic composition of services is justified also by the ubiquitous Internet, which forces companies to abandon the legacy business models and outdated systems and to organize the virtual enterprise. Dynamic composition of web services is a promising approach and at the same time a challenging research area for the dissemination of service oriented applications. It is widely recognized that service semantics is a key element for the dynamic composition of WSs, since it allows the unambiguous descriptions of a service’s capabilities and parameters. Automated service discovery, selection and composition are expected to enrich the experience of service end-users through value-added services, and to allow automated processes to interact with minimal human intervention. The automation requires some knowledge about the services, such as: (1) description of the service capabilities, for example, in terms of the semantics of IOPEs (Input, Output, Preconditions and Effects); (2) process model, which provides a description of the service activities, interaction protocol and exchanged messages; (3) grounding specification of the service, which describes the coding used to map information onto messages and the protocols used to exchange these messages. In order to resolve the challenge of service composition, most of the work done until now has focused on two main composition approaches, namely by considering functional and process service aspects. The functional approach aims at finding a sequence of atomic components described in terms of their IOPEs that matches a given query. This sequence can be executed from the start conditions provided by the query, so that the query goal is satisfied at the end of the sequence. The idea based on process aspects considers services as stateful processes with a choreography represented in terms of sequential, conditional, and iterative steps imposed by the service. These two complementary composition approaches form an interesting trade- off to develop solutions for service composition. One possible method of dynamically compose WSs according to the functional approach, is the computation of the final service as a semantic graph. The nodes of this semantic graph represent semantic connections between component services. To increase the amount of relevant service compositions that can be obtained, we compute a Causal Link Matrix (CLM). The set of possible solutions are pruned, at composition time, in order to rank the service compositions according to an optimization criteria. These criteria can be defined based on the semantic similarity of component services and/or the non-functional properties of the compositions calculated by aggregating the nonfunctional properties of the component services. Another idea of dynamically compose a web service is to use automata and model WSs as a finite state machine. Problem: we have a an input specification (goal) B, and a set of n available WSs A1, A2...An. The question is if we can find a dynamic composition method to simulate the behavior of the goal B using the given A1,
  • 6. 6 Eldorina-Andreea Alergus, Andreea-Paula Jipa A2...An. This problem is known as composition synthesis. It amounts to synthesize a so-called delegator, that tells at any moment which service must perform an action. In essence, a delegator implements a simulation relation of the goal service B by the composition of the available services Ai. In the most general setting, services are modeled by communicating state machines that have access to some local data. 4 Conclusions The demand for quickly delivering new applications is increasingly becoming a business imperative today. Application development is often done in an ad hoc manner, without standard frameworks or libraries, thus resulting in poor reuse of software assets. Web services have received much interest in industry due to their potential in facilitating seamless business-to-business or enterprise application integration. A web services composition tool can help automate the process, from creating business process functionality, to developing executable workows, to deploying them on an execution environment. In this paper, we made a resume of some WSs composition methods. We had presented syntactic and semantic web services composition, what orchestration and choreography are and the differences between them. Current focus is to find new ways and formal methods for dynamic composition of services. 5 References [1]F. Lécué, E. Silva, L. Ferreira Pires, A Framework for Dynamic Web Services Composition, 2007 [2]A. Muscholl, I. Walukiewicz, A Lower Bound on Web Services Composition, pp1-14, 2008 [3]M. H. ter Beek, A. Bucchiarone, S. Gnesi, Formal Methods for Web Services Composition, pp1-10, 2008 [4]I. Salom (project director), Compunerea automata a serviciilor Web folosind ontologii – Sintaza etapa 2008 [5]Jinghai Rao, Xiaomeng Su, A Survey of Automated Web Service Composition Methods,pp 43-54, 2005 [6]http://www.w3.org/Submission/WSMO [7]http://www.w3.org/Submission/2004/SUBM-OWL-S-20041122 [8] V. Agarwal, K. Dasgupta, N. Karnik, A. Kumar, A. Kundu, S. Mittal, B. Srivastava, A Service Creation Environment Based on End to End Composition of Web Services, 2005