Web Services: A Realization of SOA

Size: px
Start display at page:

Download "Web Services: A Realization of SOA"

Transcription

1 Weer_CH03.qxd 3/1/05 12:13 PM Page 31 Chapter 3 Web Services: A Realization of SOA People often think of Web services and Service-Oriented Architecture (SOA) in combination, but they are distinct in an important way. As discussed in Chapter 1, Service-Oriented Architectures, SOA represents an abstract architectural concept. It s an approach to building software systems that is based on loosely coupled components (services) that have been described in a uniform way and that can be discovered and composed. Web services represents one important approach to realizing an SOA. The World Wide Web Consortium (W3C), which has managed the evolution of the SOAP and WSDL specifications, defines Web services as follows: A software system designed to support interoperable machine-tomachine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP messages, typically conveyed using HTTP with XML serialization in conjunction with other Web-related standards. 31

2 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA Although Web services technology is not the only approach to realizing an SOA, it is one that the IT industry as a whole has enthusiastically embraced. With Web services, the industry is addressing yet again the fundamental challenge that distributed computing has provided for some considerable time: to provide a uniform way of describing components or services within a network, locating them, and accessing them. The difference between the Web services approach and traditional approaches (for example, distributed object technologies such as the Object Management Group Common Object Request Broker Architecture (OMG CORBA), or Microsoft Distributed Component Object Model (DCOM) ) lies in the loose coupling aspects of the architecture. Instead of building applications that result in tightly integrated collections of objects or components, which are well known and understood at development time, the whole approach is much more dynamic and adaptable to change. Another key difference is that through Web services, the IT industry is tackling the problems using technology and specifications that are being developed in an open way, utilizing industry partnerships and broad consortia such as W3C and the Organization for the Advancement of Structured Information Standards (OASIS), and based on standards and technology that are the foundation of the Internet. This open, standards-based approach in which every Web services specification is eventually standardized by an industry-wide organization (such as W3C or OASIS) introduces the possibility that the specifications described in this book might undergo significant changes before becoming formal standards. This is a natural consequence of the standardization process in which both technology vendors and consumers provide input and push their requirements into the final standard. However, the basic concepts and the design supporting each of the specifications are unlikely to change in fundamental ways, even if the syntax is modified or the supported set of use cases is significantly expanded. At the time of publication, several of the specifications covered in this book have already been submitted to standards, and significant changes may ensue in some of them (for example, in the case of WS-Addressing, now being discussed at W3C). Readers interested in the details of the specifications should be aware of this fact and carefully follow the results of the standardization process. Please refer to the Web site, Updates and Corrections, where you will find the latest updates to the specifications covered in this book.

3 Weer_CH03.qxd 3/1/05 12:13 PM Page 33 Scope of the Architecture Scope of the Architecture The high-level schematic introduced in Chapter 1 (Figure 1-7) illustrates a layered view of the important foundational capabilities that are required of SOA. This chapter introduces a specific rendering of this conceptual framework with a particular collection of Web services specifications that are based on and extend basic Internet standards that were described in Chapter 2, Background. Note that specifications used in this rendering are those that IBM has developed in a collaborative effort with other industry partners, most notably Microsoft. The description in this chapter is intended to give a high-level fly by only, with the express purpose of providing an overall summary perspective. The following chapters of this book discuss these Web services specifications in much greater detail. Web services had its beginnings in mid to late 2000 with the introduction of the first version of XML messaging SOAP, WSDL 1.1, and an initial version of UDDI as a service registry. This basic set of standards has begun to provide an accepted industry-wide basis for interoperability among software components (Web services) that is independent of network location, in addition to specific implementation details of both the services and their supporting deployment infrastructure. Several key software vendors have provided these implementations, which have already been widely used to address some important business problems. Although the value of Web services technology has been demonstrated in practice, there is a desire to use the approach to address more difficult problems. Developers are looking for enhancements that raise the level and scope of interoperability beyond the basic message exchange, requiring support for interoperation of higher-level infrastructure services. Most commercial applications today are built assuming a specific programming model. They are deployed on platforms (operating systems and middleware) that provide infrastructure services in support of that programming model, hiding complexity, and simplifying the problems that the solution developer has to deal with. For example, middleware typically provides support for transactions, security, or reliable exchange of messages (such as guaranteed, once-only delivery). On the other hand, there is no universally agreed standard middleware, which makes it difficult to construct applications from components that are built using different programming models

4 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA (such as Microsoft COM, OMG CORBA, or Java 2 Platform, Enterprise Edition (J2EE) Enterprise Java Beans). They bring with them different assumptions about infrastructure services that are required, such as transactions and security. As a consequence, interoperability across distributed heterogeneous platforms (such as.net and J2EE) presents a difficult problem. The Web services community has done significant work to address this interoperability issue, and since the introduction of the first Web services, various organizations have introduced other Web services related specifications. Figure 3-1 illustrates a population of the overall SOA stack shown in Figure 1-7 with current standards and emerging Web services specifications that IBM, Microsoft, and other significant IT companies have developed. The remainder of this chapter provides a high-level introduction to these Web services specifications that realize more concretely the capabilities that are described in the SOA framework in Chapter 1 and that extend the earlier Web services technology of XML, SOAP, and WSDL to provide secure, reliable, and transacted interoperability. The specifications define formats and protocols that allow services to interoperate across those vendor platforms that provide conformant implementations, either natively or by mapping them onto existing proprietary middleware offerings. BPEL Composite WS-C,... Atomic Components UDDI, Metadata Exchange,... WS-Reliable Messaging WS-Security* WS-AT, WS-BA Quality of Service WSDL WS-Policy* Description Soap, WS-Addressing JMS,... Messaging HTTP, SMTP, TCP/IP, RMI/IIOP,... Transport Figure 3-1 Web services architecture.

5 Weer_CH03.qxd 3/1/05 12:13 PM Page 35 <definitions targetnamespace=... > <!-- WSDL definitions in this document --> <!-- referenced using tns prefix --> <types> <!-- XSD definitions for this service --> <!-- referenced using xsd1 prefix --> <xsd:schema> <xsd:import namespace= > </xsd:schema> </types> Scope of the Architecture 35 <message name= purchaseresponse > <part name= purchaseresponse element= xsd1:purchasestatus /> </message> <message name= purchaserequest > <part name= purchaserequest element= xsd1:purchaserequest /> </message> <message name= ServicePacValidationInput > <part name= spvdatainput element= xsd1:servicepacvalidationdata /> </message> <message name= ServicePacValidationOutput > <part name= spvdataoutput element= xsd1:servicepacvalidationdata /> </message> <porttype name= spvporttype > <operation name= purchaseservicepacs > <input name= purchaseinput message= tns:purchaserequest /> <output name= purchaseoutput message= tns:purchaseresponse /> </operation> <operation name= validateservicepac > <input name= Input message= tns:servicepacvalidationinput /> <output name= Output message= tns:servicepacvalidationoutput /> </operation> </porttype> <binding name= spvbinding type= tns:spvporttype > <wsp:policyreference URI= > <soap:binding style= document transport= /> <operation name= purchaseservicepacs >

6 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA <wsp:policyreference URI= > <soap:operation soapaction= /> </operation> <operation name= validateservicepac > <soap:operation soapaction= /> </operation> </binding> <service name= spv-svc > <port name= spv-svc-port binding= tns:spvbinding > <soap:address location= </port> </service> </definitions> 3.2 Transport Services Web services is basically an interoperable messaging architecture, and message transport technologies form the foundation of this architecture. Web services is inherently transport neutral. Although you can transport Web services messages by using the ubiquitous Web protocols such as HyperText Transport Protocol (HTTP) or Secure HTTP (HTTPS) to give the widest possible coverage in terms of support for the protocols (see Chapter 2), you can also transport them over any communications protocol, using proprietary ones if appropriate. Although transport protocols are fundamental to Web services and clearly are a defining factor in the scope of interoperability, the details are generally hidden from the design of Web services. A detailed discussion of these is not included in the scope of this book. 3.3 Messaging Services The messaging services component of the framework contains the most fundamental Web services specifications and technologies, including extensible Markup Language (XML), SOAP, and WS-Addressing. Collectively, these

7 Weer_CH03.qxd 3/1/05 12:13 PM Page 37 Messaging Services 37 specifications form the basis of interoperable messaging between Web services. XML (discussed in Chapter 2) provides the interoperable format to describe message content between Web services and is the basic language in which the Web services specifications are defined SOAP SOAP, one of the significant underpinnings of Web services, provides a simple and relatively lightweight mechanism for exchanging structured and typed information between services. SOAP is designed to reduce the cost and complexity of integrating applications that are built on different platforms. SOAP has undergone revisions since its introduction, and the W3C has standardized the most recent version, SOAP 1.2. SOAP defines an extensible enveloping mechanism that scopes and structures the message exchange between Web services. A SOAP message is an XML document that contains three distinct elements: an envelope, a header, and a body. The envelope is the root element of the SOAP message. It contains an optional header element and a mandatory body element. The header element is a generic mechanism for adding extensible features to SOAP. Each child element of header is called a header block. SOAP defines several well-known attributes that you can use to indicate who should deal with a header block and whether processing of it is optional or mandatory. The body element is always the last child element of the envelope, and it is the container for the payload the actual message content that is intended for the ultimate recipient who will process it. SOAP defines no built-in header blocks and only one payload, which is the Fault element used for reporting errors. SOAP is defined independently of the underlying messaging transport mechanism in use. It allows the use of many alternative transports for message exchange. You can defer selection of the appropriate mechanism until runtime, which gives Web service applications or support infrastructure the flexibility to determine the appropriate transport as the message is sent. In addition, the underlying transport might change as the message is routed between nodes. Again, the mechanism that is selected for each hop can vary as required. Despite this general transport independence, most first-generation Web services communicate using HTTP, because it is one of the primary bindings included within the SOAP specification.

8 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA SOAP messages are transmitted one way from sender to receiver. However, multiple one-way messages can be combined into more sophisticated message exchange patterns. For instance, a popular pattern is a synchronous request/response pair of messages. The messaging flexibility that SOAP provides allows services to communicate using a variety of message exchange patterns, to satisfy the wide range of distributed applications. Several patterns have proven particularly helpful in distributed systems. The use of remote procedure calls, for example, popularized the synchronous request/response message exchange pattern. When message delivery latencies are uncontrolled, asynchronous messaging is needed. When the asynchronous request/response pattern is used, explicit message correlation becomes mandatory. Messages can be routed based on the content of the headers and the data inside the message body. You can use tools developed for the XML data model to inspect and construct complete messages. Note that such benefits were not available in architectures such as DCOM, CORBA, and Java Remote Method Invocation (RMI), where protocol headers were infrastructural details that were opaque to the application. Any software agent that sends or receives messages is called a SOAP node. The node that performs the initial transmission of a message is called the original sender. The final node that consumes and processes the message is called the ultimate receiver. Any node that processes the message between the original sender and the ultimate receiver is called an intermediary. Intermediaries model the distributed processing of an individual message. The collection of intermediary nodes traversed by the message and the ultimate receiver are collectively referred to as the message path. To allow parts of the message path to be identified, each node participates in one or more roles. The base SOAP specification defines two built-in roles: Next and UltimateReceiver. Next is a universal role in that every SOAP node, other than the sender, belongs to the Next role. UltimateReceiver is the role that the terminal node in a message path plays, which is typically the application, or in some cases, infrastructure that is performing work on behalf of the application. The body of a SOAP envelope is always targeted at the UltimateReceiver. In contrast, SOAP headers might be targeted at intermediaries or the UltimateReceiver SOAP is discussed in detail in Chapter 4, SOAP.

9 Weer_CH03.qxd 3/1/05 12:13 PM Page 39 Messaging Services WS-Addressing WS-Addressing provides an interoperable, transport-independent way of identifying message senders and receivers that are associated with message exchange. WS-Addressing decouples address information from the specific transport used by providing a mechanism to place the target, source, and other important address information directly within the Web service message. This specification defines XML elements to identify Web services endpoints and to secure end-toend endpoint identification in messages. This specification enables messaging systems to support message transmission through networks that include processing nodes such as endpoint managers, firewalls, and gateways in a transportneutral manner. WS-Addressing defines two interoperable constructs that convey information that transport protocols and messaging systems typically provide. These constructs normalize this underlying information into a uniform format that can be processed independently of transport or application. These two constructs are endpoint references and message information headers. A Web services endpoint is a referenceable entity, processor, or resource in which Web services messages can be targeted. Endpoint references convey the information needed to identify/reference a Web services endpoint, and you can use them in several different ways. Endpoint references are suitable for conveying the information needed to access a Web services endpoint, but they also provide addresses for individual messages that are sent to and from Web services. To deal with this previous usage case, the WS-Addressing specification defines a family of message information headers that allows uniform addressing of messages independent of underlying transport. These message information headers convey end-to-end message characteristics, including addressing for source and destination endpoints and message identity. Both of these constructs are designed to be extensible and reusable so that other specifications can build on and leverage endpoint references and message information headers. WS-Addressing is covered in detail in Chapter 5, WS-Addressing.

10 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA 3.4 Service Description Service description defines metadata that fully describes the characteristics of services that are deployed on a network. This metadata is important, and it is fundamental to achieving the loose coupling that is associated with an SOA. It provides an abstract definition of the information that is necessary to deploy and interact with a service WSDL Web Services Description Language (WSDL) is perhaps the most mature of metadata describing Web services. It allows developers to describe the functional characteristics of a Web service what actions or functions the service performs in terms of the messages it receives and sends. WSDL offers a standard, language-agnostic view of services it offers to clients. It also provides noninvasive future-proofing for existing applications and services and allows interoperability across the various programming paradigms, including CORBA, J2EE, and.net. WSDL is an XML format for describing (network) services as a set of endpoints that operate on messages containing either document-oriented or procedureoriented information. The operations and messages are described abstractly and then bound to a concrete network protocol and message format to define an endpoint. Related concrete endpoints are combined into abstract endpoints (services). WSDL is extensible to allow description of endpoints and their messages regardless of what message formats or network protocols are used to communicate. A WSDL document has two parts: abstract definitions and concrete descriptions. The abstract section defines SOAP messages in a language- and platform-independent manner. In contrast, the concrete descriptions define sitespecific matters such as serialization. WSDL provides support for a range of message interaction patterns. It supports one-way input messages that have no response, request/response, and one-way sends with or without a response. The last two patterns enable a service to specify other services that it needs. WSDL is discussed in detail in Chapter 6, Web Services Description Language.

11 Weer_CH03.qxd 3/1/05 12:13 PM Page 41 Service Description Policy Although WSDL and XML Schema describe what a service can do by providing a definition of the business interface (including business operations such as open/close account, debit/credit/transfer, and so on), they do not provide information about how the service delivers its interface or what the service expects of the caller when it uses the service. How the service implements the business interface, the sort of permissions or constraints it expects of or provides to requesters, and what is expected or provided in a hosting environment is incredibly important in ensuring the correct interaction with and execution of the service. For example, does the service require security, and if so, what specific scope and type? Does it support transactions? What outcome protocols are supported? To achieve the promise of an SOA, it is important to extend the current Web service interface and message definitions to include the expression of the constraints and conditions that are associated with the use of a Web service. Although you can use inherent extensibility of XML and WSDL to achieve some of these requirements, a much better approach is to define a common framework for Web services constraints and conditions that allows a clear and uniform articulation of the available options. Such a framework must enable those constraints and conditions associated with various domains (such as security, transactions, and reliable messaging) to be composeable, so that Web service providers and consumers are not burdened with multiple domain-specific mechanisms. Also, such a framework can provide support for determining valid intersections of constraints and conditions, where multiple choices are possible. Although the programming that is implementing the business logic of the Web service can deal explicitly with the conditions and constraints, providing a declarative model for this factors such issues out of business logic, thereby providing an important separation of concerns. This allows for more automated implementation by middleware and operating systems, resulting in significantly better reuse of application code by the organizations that provide, deploy, and support Web services. The WS-Policy family of Web services specifications provides an extensible framework that is intended to specifically deal with the definition of these constraints and conditions.

12 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA The WS-PolicyAttachments specification offers a flexible way to associate policy expressions with Web services. The WS-Policy specification defines a common framework for services to annotate their interface definitions to describe their service assurance qualities and requirements in the form of a machinereadable expression containing combinations of individual assertions. The WS- Policy framework also allows the use of algorithms to determine which concrete policies to apply when the requester, provider, and container support multiple options. WS-Policy is critical to achieving interoperability at the higher-level functional operation of the service. Security, transactions, reliable messaging, and other specifications require concrete WS-Policy schema. This allows services to describe the functional assurance that they expect from and provide to callers. The WS-Policy specifications are discussed in detail in Chapter 7, Web Services Policy. 3.5 Discovery Services The transport, description, and messaging layer are fundamental to allowing Web services to communicate in an interoperable way using messages. However, to facilitate this, it is necessary to collect and store the important metadata that describes these services. The metadata must be in a form that is discoverable and searchable by users who are looking for appropriate services they require to solve some particular business problem. Also, such metadata aggregation and discovery services are a useful repository/registry in which many different organizations might want to publish the services that they host, describe the interfaces to their services, and enable domain-specific taxonomies of services UDDI The Universal Description and Discovery Interface (UDDI) is a widely acknowledged specification of a Web service registry. It defines a metadata aggregation service and specifies protocols for querying and updating a common repository of Web services information. Solutions developers can query UDDI repositories at well-known locations at design time to ascertain those services that might be

13 Weer_CH03.qxd 3/1/05 12:13 PM Page 43 Discovery Services 43 compatible with their requirements. After they locate a directory, they can send a series of query requests against the registry to acquire detailed information about Web services (such as who provides them and where they are hosted) and bindings to the implementation. They can then feed this information into an assortment of development time tools to generate the appropriate runtime software and messages required to invoke the required service. Solutions can also query UDDI repositories dynamically at runtime. In this scenario, the software that needs to use a service is told at execution time the type of service or interface it requires. Then it searches a UDDI repository for a service that meets its functional requirements, or a well-known partner provides it. The software then uses this information to dynamically access the service. UDDI repositories can be provided in one of three ways: Public UDDI These are UDDI repositories that can serve as a resource for Internet-based Web services. An example of this is the UDDI Business Registry [UBR] hosted by a group of vendors led by IBM, Microsoft, and SAP that is replicated across multiple hosting organizations. Intra Enterprise UDDI An enterprise has a private internal UDDI repository that provides much more control over which service descriptions are allowed to be placed there and used by application developers within that specific enterprise. Inter Enterprise UDDI This basically scopes the content of the UDDI to services that are shareable between specific business partners. As discussed in Chapter 1, service discovery (publish/find) plays an important role in an SOA. You can achieve this in other ways, but within a Web services world, UDDI provides a highly functional and flexible standard approach to Web services discovery. UDDI is covered in detail in Chapter 8, UDDI MetaData Exchange WS-Policy proposes a framework that extends the service description features that WSDL provides. Having more refined service descriptions, qualified by specific WS-policies, supports much more accurate discovery of services that

14 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA are compatible with the business application that is to be deployed. In a service registry (such as a UDDI registry), queries of WS-Policy-decorated services enable the retrieval of services that support appropriate policies in addition to the required business interface. For example, a query might request all services that support the creditauthorization WSDL interface (port type), use Kerberos for authentication, and have an explicitly stated privacy policy. This allows a service requester to select a service provider based on the quality of the interaction that delivers its business contracts. Although service registries are important components of some Web services environments, it is often necessary to address the request of service information directly to the service itself. The WS-MetaDataExchange specification defines protocols that support the dynamic exchange of WS-Policy and other metadata that is relevant to the service interaction (such as XML Schema and WSDL descriptions) between interacting Web services endpoints. WS-MetadataExchange allows a service requester to ask a service provider directly for all or part of its metadata, without the involvement of a third-party registry. Using the WS-MetadataExchange protocol service, endpoints can exchange policies at runtime and use them to bootstrap their interaction from information about the settings and protocols to be applied. This is especially useful when not all policy information is in a repository or when a requester receives a reference to a service through some mechanism other than a direct query on a registry. This direct dynamic exchange of policies also supports the customization of each interaction based, for example, on the identity of the other endpoint or any other aspect of the context under which the interaction takes place. This flexibility allows Web services to be designed to offer different qualities of service for different targeted audiences. WS-MetadataExchange is discussed in detail in Chapter 9, Web Services Metadata Exchange. 3.6 Quality of Service Specifications in this domain are related to the quality of the experience associated with interaction with a Web service. The services in this layer specify the requirements that are associated with the overall reliability of Web services. The

15 Weer_CH03.qxd 3/1/05 12:13 PM Page 45 Quality of Service 45 specific issues involving this layer include security, reliability of message delivery, and support for transactions (guaranteeing and agreeing on the outcome of a business application) WS-Security Security is of fundamental concern in enterprise computing. WS-Security is the basic building block for secure Web services. Today, most distributed Web services rely on transport-level support for security functions (for example, HTTPS and BASIC-Auth authentication). These approaches to security provide a basic minimum for secure communication, and the level of function they provide is significantly less than that provided by existing middleware and distributed environments. WS-Security uses existing security models (such as Kerberos and X509). The specifications concretely define how to use the existing models in an interoperable way. Multihop, multiparty Web service computations cannot be secure without WS-Security. Security relies on predefined trust relationships. Kerberos works because participants trust the Kerberos Key Distribution Center. Public Key Infrastructure (PKI) works because participants trust the root certificate authorities. WS-Trust defines an extensible model for setting up and verifying trust relationships. The key concept in WS-Trust is a Security Token Service (STS). An STS is a distinguished Web service that issues, exchanges, and validates security tokens. WS- Trust allows Web services to set up and agree on which security servers they trust, and to rely on these servers. Some Web service scenarios involve a short sporadic exchange of a few messages. WS-Security readily supports this model. Other scenarios involve long, multimessage conversations between the Web services. WS-Security also supports this model, but the solution is not optimal. Protocols such as HTTP/S use public keys to perform a simple negotiation that defines conversation-specific keys. This key exchange allows more efficient security implementations and decreases the amount of information encrypted with a specific set of keys. WS-SecureConversation provides similar support for WS-Security. Participants often use WS-Security with public keys to start a conversation or session, and they use WS-SecureConversation to agree on session specific keys for signing and encrypting information.

16 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA WS-Federation allows a set of organizations to establish a single, virtual security domain. For example, a travel agent, an airline, and a hotel chain might set up such a federation. An end user who logs into any member of the federation has effectively logged into all of the members. WS-Federation defines several models for providing federated security through protocols between WS-Trust and WS-SecureConversation topologies. In addition, customers often have properties when they deal with an enterprise, and WS-Federation allows the setting up of a federated property space. This allows each participant to have secure controlled access to each member s property information about the end users. The WS-Security family of specifications is discussed in detail in Chapters 12, Security, and 13, Advanced Security Reliable Messaging In the Internet world, communication channels are typically unreliable. Connections break, messages fail to be delivered or are delivered more than once, and perhaps in a different sequence to that in which they were sent. Communication can become even more of an issue when the exchange of messages spans multiple transport layer connections. Although techniques for ensuring reliable delivery of messages are reasonably well understood and available in some messaging middleware products today (such as IBM WebsphereMQ), messaging reliability is still a problem. If messaging reliability is addressed by Web service developers who are incorporating techniques to deal with this directly into the services they develop, there is no guarantee that developers of different Web services will make the consistent choices about the approach to adopt. The outcome might not guarantee end-to-end reliable interoperable messaging. Even in cases in which the application developers defer dealing with the reliable messaging to messaging middleware, different middleware products from different suppliers do not necessarily offer a consistent approach to dealing with the problem. Again, this might preclude reliable message exchange between applications that are using different message-oriented middleware. WS-ReliableMessaging addresses these issues and defines protocols that enable Web services to ensure reliable, interoperable exchange of messages with specified delivery assurances. The specification defines three basic assurances:

17 Weer_CH03.qxd 3/1/05 12:13 PM Page 47 Quality of Service 47 In-order delivery The messages are delivered in the same order in which they were sent. At least once delivery Each message that is sent is delivered at least one time. At most once delivery No duplicate messages are delivered. You can combine these assurances to give additional ones. For example, combining at least once and at most once gives exactly one delivery of a message. The protocol enables messaging middleware vendors to ease application development and deployment for Web services by providing services that implement these protocols, possibly layered over their existing proprietary message exchange protocols. WS-Reliable Messaging protocols allow different operating and middleware systems to reliably exchange messages, thereby bridging different infrastructures into a single, logically complete, end-to-end model for Web services reliable messaging. WS-ReliableMessaging is discussed in detail in Chapter 10, Reliable Messaging Transactions Dealing with many of today s business scenarios necessitates the development of applications that consist of multiple Web services exchanging many messages. An example might be a group of financial institutions setting up a financial offering that involves insurance policies, annuities, checking accounts, and brokerage accounts. Such applications can be complex, executing across heterogeneous, loosely coupled distributed systems that are prone to failure, and introducing significant reliability problems. For such applications, you must deal with the failure of any component Web service of the application within the context of the whole application. A coordinated orchestration of the outcome of the participating services that make up the business application is essential so that a coherent outcome of the whole business application can be agreed upon and guaranteed. Therefore, it is important that the Web services involved are able to do the following: Start new tasks, the execution and disposition of which are coordinated with other tasks.

18 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA Agree on the outcome of the computation. For example, does everyone agree that the financial packages were set up? WS-Coordination, WS-AtomicTransaction, and WS-BusinessActivity define protocols that are designed specifically to address these requirements. WS-Coordination is a general mechanism for initiating and agreeing on the outcome of multiparty, multimessage Web service tasks. WS-Coordination has three key elements: A coordination context This is a message element that is associated with exchanges during the interaction of Web services. This coordination context contains the WS-Addressing endpoint reference of a coordination service, in addition to the information that identifies the specific task being coordinated. A coordinator service This provides a service to start a coordinated task, terminate a coordinated task, allow participants to register in a task, and produce a coordination context that is part of all messages exchanged within a group of participants. An interface Participating services can use the interface to inform them of an outcome that all of the participants have agreed upon. Although WS-Coordination is a general framework and capability, WS- AtomicTransaction and WS-BusinessActivity are two particular protocols that compose with and extend the WS-Coordination protocol to define specific ways to reach overall outcome agreement. They extend this framework to allow the participants in the distributed computation to determine outcome robustly. WS-AtomicTransaction defines a specific set of protocols that plug into WS-Coordination to implement the traditional two-phase atomic ACID transaction protocols. However, traditional atomic transactions and the WS-AtomicTransaction protocol are not always suitable. For example, this protocol is generally not appropriate for use with many types of business transactions. Transaction protocols for business transactions have to deal with longlived activities. These differ from atomic transactions in that such activities can

19 Weer_CH03.qxd 3/1/05 12:13 PM Page 49 Service Components 49 take much longer to complete. Therefore, to minimize latency of access by other potential users of the resources being used by Web services participating in the activity, you need to make the results of interim operations visible to others before the overall activity has completed. In light of this, you can introduce mechanisms for fault and compensation handling to reverse the effects of tasks that were completed previously within a business activity (such as compensation or reconciliation). WS-BusinessActivity defines a specific set of protocols that plug into the WS-Coordination model to provide such long-running, compensation-based transaction protocols. For example, although WS-BPEL defines a transaction model for business processes, it is WS-BusinessActivity that specifies the corresponding protocol rendering. This, again, is an example for the composeability of the Web services specifications. WS-Coordination and Transaction specifications are covered in detail in Chapter 11, Transactions. 3.7 Service Components The existing Web services standards do not provide for the definition of the business semantics of Web services. Today s Web services are isolated and opaque. Overcoming this isolation means connecting Web services and specifying how to jointly use collections (compositions) of Web services to realize much more comprehensive and complex functionality typically referred to as a business process. A business process specifies the potential execution order of operations from a collection of Web services, the data that is shared between these composed Web services, which partners are involved, and how they are involved in the business process, joint exception handling for collections of Web services, and so on. This composition especially allows the specification of long-running transactions between composed Web services. Consistency and reliability are increased for Web services applications. Breaking this opaqueness of Web services means specifying usage constraints of operations of a collection of Web services and their joint behavior. This, too, is similar to specifying business processes.

20 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA Composition of Web Services Business Process Execution Language for Web services (WS-BPEL, often shortened to BPEL) provides a language to specify business processes and process states and how they relate to Web services. This includes specifying how a business process uses Web services to achieve its goal, and it includes specifying Web services that a business process provides. Business processes specified in BPEL are fully executable and are portable between BPEL-conformant tools and environments. A BPEL business process interoperates with the Web services of its partners, whether these Web services are realized based on BPEL or not. Finally, BPEL supports the specification of business protocols between partners and views on complex internal business processes. BPEL supports the specification of a broad spectrum of business processes, from fully executable, complex business processes over more simple business protocols to usage constraints of Web services. It provides a long-running transaction model that allows increasing consistency and reliability of Web services applications. Correlation mechanisms are supported that allow identifying statefull instances of business processes based on business properties. Partners and Web services can be dynamically bound based on service references. WS-BPEL is discussed in detail in Chapter 14, Modeling Business Processes: BPEL. 3.8 Composeability One of the key guiding principles that has governed the specification of the Web services discussed in this book is that of composeability. Each of the Web service specifications addresses one specific concern and has a value in its own right, independently of any other specification. For example, developers of applications can adopt reliable messaging to simplify development of their business application, use transactions as a method of guaranteeing a reliable outcome of their business application, or use BPEL to define their complex business applications. However, although each of these specifications stands on its own, all the specifications are designed to work seamlessly in conjunction with each other. The term composeable describes independent Web service specifications

21 Weer_CH03.qxd 3/1/05 12:13 PM Page 51 Composeability 51 that you can readily combine to develop much more powerful capabilities. Composeability facilitates the incremental discovery and use of new services; consequently, developers must implement only that which is necessary at any given point in time. The complexity of a solution is a direct consequence of the specific problem that is being addressed. The basic Web service specifications, WSDL and SOAP in particular, have been designed to support composition inherently. An important characteristic of a Web service is the multipart message structure. Such a structure facilitates the easy composition of new functionality. You can add extra message elements in support of new services in such a way that does not directly alter the processing of and pre-existing functionality. For example, you can add transaction protocol information to a message that already includes reliable messaging protocol information and vice versa without the protocols conflicting with each other, and in a way that is compatible with the pre-existing message structure. 1 <S:Envelope...> 2 <S:Header> 3 <wsa:replyto> 4 <wsa:address> 5 </wsa:replyto> 6 <wsa:to> 7 <wsa:action> 8 <wssec:security> 9 <wssec:binarysecuritytoken 10 ValueType= wssec:x509v3 11 EncodingType= wssec:base64binary 12 dxjcy3tnyhb...ujmi8emtaw 13 </wssec:binarysecuritytoken 14 </wssec:security 15 <wsrm:sequence> WS-Security 16 <wsu:identifier> 17 <wsrm:messagenumber>10</wsrm:messagenumber> 18 </wsrm:sequence> 19 </S:Header> 20 </S:Body <app:trafficstatus xmlns:env= http//highwaymon.org/payloads > 23 <road>520w</road> 24 <speed>3mph</speed> 25 </app:trafficstatus> 26 </S:Body> 27 </S:Envelope> WS-Addressing WS-Reliable Messaging Figure 3-2 Web service message composeability.

22 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA Figure 3.2 illustrates this by way of a simple Web service message that contains elements associated with three different Web services specifications. Lines 3 7 are associated with WS-Addressing, lines 8 14 with WS-Security, and lines with WS-ReliableMessaging. Each of these elements is independent and can be incorporated and used independently without affecting the processing of other elements present. This enables transactions, security, and reliability of Web services to be defined in terms of composeable message elements. A good example of the power of composeable Web services in practice is the requirement for service consumers to determine the assurances that are provided by a particular service that they might want to use. This enables the consumer to ascertain whether a particular service meets desired expectations, and if so, in what way. The services must document their requirements in terms of their specific support for transactions, security and reliable messaging, and so on. WS-Policy enables Web services to incrementally augment their WSDL in an independent way to provide a more complete and flexible description of elements that have to be added to the SOAP message to interact with the service successfully. 3.9 Interoperability SOA and Web services promise significant benefits: reduced cost and complexity of connecting systems and businesses, increased choice of technology suppliers leading to reduced cost of technology ownership, and increased opportunities for businesses to interact both with customers and suppliers in new and profitable ways. The fundamental premise of Web services is that standardization, predicated on the promise of easy interoperability, resolves many of the long-standing issues facing businesses today. However, Web services and the SOAs that are based upon them are an emergent market. As such, the technologies and specifications that various organizations are defining for Web services are in flux. Issues relate to ambiguity of interpretation of specifications or standards, in addition to differences and insufficient understanding of interactions between them. For Web services to be successful, these specifications must be able to truly provide interoperability in a manner that is conducive to

23 Weer_CH03.qxd 3/1/05 12:13 PM Page 53 Interoperability 53 running a business or producing products that can effectively leverage Web services technology. The IT leaders behind the Web services specifications realize that interoperability is in the best interests of all industry participants. In 2002, they created the Web Services Interoperability Organization (WS-I) WS-I WS-I [WSI] is an open industry organization that is chartered to promote Web services interoperability across differing platforms, operating systems/middleware, programming languages, and tools. It works across the varied existing industry and standards organizations to respond to customer needs by providing guidance and best practices to help develop Web service solutions. Membership of WS-I is open to software vendors of all sizes, to their customers, and to any others who have interests in Web services. The work of WS-I is carried out by the members in WS-I working groups, generally consisting of individuals who have a diverse set of skills (developers, testers, business analysts, and so on). Members can actively participate in one or more WS-I working groups, based on their specific interest or expertise. WS-I was formed specifically for the creation, promotion, and support of generic protocols for interoperable exchange of messages between Web services. Generic protocols are protocols that are independent of any actions necessary for secure, reliable, and efficient delivery. Interoperable in this context means suitable for and capable of being implemented and deployed onto multiple platforms. Among the deliverables that WS-I is creating are profiles, testing tools, use case scenarios, and sample applications. A profile consists of a list of Web services specifications at specified version levels, along with recommended guidelines for use, or the exclusion of inadequately specified features. WS-I is developing a set of profiles that support interoperability. Profiles facilitate the discussion of Web service interoperability at a level of granularity for those people who have to make investment decisions about Web services and in particular Web services products. WS-I focuses on compatibility at the profile level. To avoid confusion, it is likely that only a few profiles will be defined. There is already a consensus on those standards that

24 Weer_CH03.qxd 3/1/05 12:13 PM Page Web Services: A Realization of SOA form the most basic Web services profile, and it is likely although not mandatory that as additional profiles emerge, they will indeed be based on this basic profile. In addition to references to industry standards and emerging specifications, a profile might contain interoperability guidelines that can resolve ambiguities. Such guidelines constrain some of the specifications or standard MAYs and SHOULDs, often the source of interoperability problems, such that they become MUSTs or MUST NOTs to satisfy the requirements of the use cases and usage scenarios. The first, or Basic, WS-I profile pertains to the most basic Web services, such as XML Schema 1.0, SOAP 1.1, WSDL 1.1, and UDDI 2.0. The testing tools monitor and analyze interactions with and between Web services to ensure that exchanged messages conform to the WS-I profile guidelines. Sample applications are being developed to demonstrate the implementation of applications that are built from Web Services Usage Scenarios, which conform to a given set of profiles. Implementations of the same sample application on multiple platforms, using different languages and development tools, allow WS-I to show interoperability and provide readily usable resources for Web services developers and users. WS-I is committed to building strong relationships and adopting specifications developed by a wide array of organizations, such as the Internet Engineering Task Force (IETF), Open Applications Group (OAGi), OASIS, OMG, UDDI, W3C, and many others. These organizations serve the needs of a vast range of communities and customer bases. It is the plan of WS-I to engage these groups and work together to meet the needs of Web services developers and customers REST Despite the name, Web service technology offers several advantages in non- Web environments. For example, Web service technology facilitates the integration of J2EE components with.net components within an enterprise or department in a straightforward manner. But as shown, Web services can be implemented in Web environments, too, on top of basic Web technologies such as HTTP, Simple Mail Transfer Protocol (SMTP), and so on. Representational State Transfer (REST) is a specific architectural style introduced in [F00]. Simply put, it is the architecture of the Web.

CmpE 596: Service-Oriented Computing

CmpE 596: Service-Oriented Computing CmpE 596: Service-Oriented Computing Pınar Yolum pinar.yolum@boun.edu.tr Department of Computer Engineering Boğaziçi University CmpE 596: Service-Oriented Computing p.1/53 Course Information Topics Work

More information

Implementing a Ground Service- Oriented Architecture (SOA) March 28, 2006

Implementing a Ground Service- Oriented Architecture (SOA) March 28, 2006 Implementing a Ground Service- Oriented Architecture (SOA) March 28, 2006 John Hohwald Slide 1 Definitions and Terminology What is SOA? SOA is an architectural style whose goal is to achieve loose coupling

More information

Web service design. every Web service can be associated with:

Web service design. every Web service can be associated with: Web Services Web services provide the potential of fulfilling SOA requirements, but they need to be intentionally designed to do so. Web services framework is flexible and adaptable. Web services can be

More information

Introduction to Web Services & SOA

Introduction to Web Services & SOA References: Web Services, A Technical Introduction, Deitel & Deitel Building Scalable and High Performance Java Web Applications, Barish Service-Oriented Programming (SOP) SOP A programming paradigm that

More information

Semantic Web Services for Satisfying SOA Requirements

Semantic Web Services for Satisfying SOA Requirements Semantic Web Services for Satisfying SOA Requirements Sami Bhiri 1, Walid Gaaloul 1, Mohsen Rouached 2, and Manfred Hauswirth 1 1 Digital Enterprise Research Institute (DERI), National University of Ireland,

More information

Chapter 8 Web Services Objectives

Chapter 8 Web Services Objectives Chapter 8 Web Services Objectives Describe the Web services approach to the Service- Oriented Architecture concept Describe the WSDL specification and how it is used to define Web services Describe the

More information

Introduction to Web Services & SOA

Introduction to Web Services & SOA References: Web Services, A Technical Introduction, Deitel & Deitel Building Scalable and High Performance Java Web Applications, Barish Web Service Definition The term "Web Services" can be confusing.

More information

Realisation of SOA using Web Services. Adomas Svirskas Vilnius University December 2005

Realisation of SOA using Web Services. Adomas Svirskas Vilnius University December 2005 Realisation of SOA using Web Services Adomas Svirskas Vilnius University December 2005 Agenda SOA Realisation Web Services Web Services Core Technologies SOA and Web Services [1] SOA is a way of organising

More information

Web services for a Software Development Platform

Web services for a Software Development Platform Degree Project Web services for a Software Development Platform Yue Wang 2010-08-17 Subject: Computer Science Level: Master Course code: 5DV00E Abstract Web service is a sophisticated SOA technology with

More information

(9A05803) WEB SERVICES (ELECTIVE - III)

(9A05803) WEB SERVICES (ELECTIVE - III) 1 UNIT III (9A05803) WEB SERVICES (ELECTIVE - III) Web services Architecture: web services architecture and its characteristics, core building blocks of web services, standards and technologies available

More information

Identity-Enabled Web Services

Identity-Enabled Web Services Identity-Enabled s Standards-based identity for 2.0 today Overview s are emerging as the preeminent method for program-toprogram communication across corporate networks as well as the Internet. Securing

More information

The Open Group SOA Ontology Technical Standard. Clive Hatton

The Open Group SOA Ontology Technical Standard. Clive Hatton The Open Group SOA Ontology Technical Standard Clive Hatton The Open Group Releases SOA Ontology Standard To Increase SOA Adoption and Success Rates Ontology Fosters Common Understanding of SOA Concepts

More information

Topics on Web Services COMP6017

Topics on Web Services COMP6017 Topics on Web Services COMP6017 Dr Nicholas Gibbins nmg@ecs.soton.ac.uk 2013-2014 Module Aims Introduce you to service oriented architectures Introduce you to both traditional and RESTful Web Services

More information

Overview SENTINET 3.1

Overview SENTINET 3.1 Overview SENTINET 3.1 Overview 1 Contents Introduction... 2 Customer Benefits... 3 Development and Test... 3 Production and Operations... 4 Architecture... 5 Technology Stack... 7 Features Summary... 7

More information

Next-Generation SOA Infrastructure. An Oracle White Paper May 2007

Next-Generation SOA Infrastructure. An Oracle White Paper May 2007 Next-Generation SOA Infrastructure An Oracle White Paper May 2007 Next-Generation SOA Infrastructure INTRODUCTION Today, developers are faced with a bewildering array of technologies for developing Web

More information

Distribution and web services

Distribution and web services Chair of Software Engineering Carlo A. Furia, Bertrand Meyer Distribution and web services From concurrent to distributed systems Node configuration Multiprocessor Multicomputer Distributed system CPU

More information

Application Oriented Networks: An SOA Perspective

Application Oriented Networks: An SOA Perspective Oriented s: An SOA Perspective www.thbs.com Introduction Service Oriented Architecture is the hot topic of discussion in IT circles today. So much so, in fact, that SOA is being seen by many as the future

More information

National Identity Exchange Federation. Terminology Reference. Version 1.0

National Identity Exchange Federation. Terminology Reference. Version 1.0 National Identity Exchange Federation Terminology Reference Version 1.0 August 18, 2014 Table of Contents 1. INTRODUCTION AND PURPOSE... 2 2. REFERENCES... 2 3. BASIC NIEF TERMS AND DEFINITIONS... 5 4.

More information

BPEL Research. Tuomas Piispanen Comarch

BPEL Research. Tuomas Piispanen Comarch BPEL Research Tuomas Piispanen 8.8.2006 Comarch Presentation Outline SOA and Web Services Web Services Composition BPEL as WS Composition Language Best BPEL products and demo What is a service? A unit

More information

Using JBI for Service-Oriented Integration (SOI)

Using JBI for Service-Oriented Integration (SOI) Using JBI for -Oriented Integration (SOI) Ron Ten-Hove, Sun Microsystems January 27, 2006 2006, Sun Microsystems Inc. Introduction How do you use a service-oriented architecture (SOA)? This is an important

More information

Copyright 2002, 2003 by the Web Services-Interoperability Organization. All rights reserved.

Copyright 2002, 2003 by the Web Services-Interoperability Organization. All rights reserved. WS-I Overview Document Status: Public Version: 1.4 Date: January 15, 2003 Authors: David Ehnebuske (divide@us.ibm.com) Christopher Ferris (chrisfer@us.ibm.com) Tom Glover (glover@ca.ibm.com) Christopher

More information

C exam. IBM C IBM WebSphere Application Server Developer Tools V8.5 with Liberty Profile. Version: 1.

C exam.   IBM C IBM WebSphere Application Server Developer Tools V8.5 with Liberty Profile. Version: 1. C9510-319.exam Number: C9510-319 Passing Score: 800 Time Limit: 120 min File Version: 1.0 IBM C9510-319 IBM WebSphere Application Server Developer Tools V8.5 with Liberty Profile Version: 1.0 Exam A QUESTION

More information

ActiveVOS Technologies

ActiveVOS Technologies ActiveVOS Technologies ActiveVOS Technologies ActiveVOS provides a revolutionary way to build, run, manage, and maintain your business applications ActiveVOS is a modern SOA stack designed from the top

More information

Simple Object Access Protocol (SOAP) Reference: 1. Web Services, Gustavo Alonso et. al., Springer

Simple Object Access Protocol (SOAP) Reference: 1. Web Services, Gustavo Alonso et. al., Springer Simple Object Access Protocol (SOAP) Reference: 1. Web Services, Gustavo Alonso et. al., Springer Minimal List Common Syntax is provided by XML To allow remote sites to interact with each other: 1. A common

More information

International Journal of Computer Science Trends and Technology (IJCST) Volume 3 Issue 6, Nov-Dec 2015

International Journal of Computer Science Trends and Technology (IJCST) Volume 3 Issue 6, Nov-Dec 2015 RESEARCH ARTICLE OPEN ACCESS Middleware Interoperability using SOA for Enterprise Business Application T Sathis Kumar Assistant Professor Department of Computer Science and Engineering Saranathan College

More information

Migration to Service Oriented Architecture Using Web Services Whitepaper

Migration to Service Oriented Architecture Using Web Services Whitepaper WHITE PAPER Migration to Service Oriented Architecture Using Web Services Whitepaper Copyright 2004-2006, HCL Technologies Limited All Rights Reserved. cross platform GUI for web services Table of Contents

More information

Goal: Offer practical information to help the architecture evaluation of an SOA system. Evaluating a Service-Oriented Architecture

Goal: Offer practical information to help the architecture evaluation of an SOA system. Evaluating a Service-Oriented Architecture Evaluating a Service-Oriented Architecture Paulo Merson, SEI with Phil Bianco, SEI Rick Kotermanski, Summa Technologies May 2007 Goal: Offer practical information to help the architecture evaluation of

More information

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI Department of Computer Science and Engineering IT6801 - SERVICE ORIENTED ARCHITECTURE Anna University 2 & 16 Mark Questions & Answers Year / Semester: IV /

More information

Sistemi ICT per il Business Networking

Sistemi ICT per il Business Networking Corso di Laurea Specialistica Ingegneria Gestionale Sistemi ICT per il Business Networking SOA and Web Services Docente: Vito Morreale (vito.morreale@eng.it) 1 1st & 2nd Generation Web Apps Motivation

More information

Service Interface Design RSVZ / INASTI 12 July 2006

Service Interface Design RSVZ / INASTI 12 July 2006 Architectural Guidelines Service Interface Design RSVZ / INASTI 12 July 2006 Agenda > Mandatory standards > Web Service Styles and Usages > Service interface design > Service versioning > Securing Web

More information

Service-Oriented Programming

Service-Oriented Programming Service-Oriented Programming by Guy Bieber, Lead Architect, ISD C4I, Motorola ABSTRACT - The Service-Oriented Programming (SOP) model is the most exciting revolution in programming since Object Oriented

More information

- WEB SERVICES Service descriptions WSDL Messaging with SOAP Service discovery UDDI Message Exchange Patterns Orchestration Choreography WS Transactions. Service descriptions (with WSDL) When we covered

More information

Lesson 3 SOAP message structure

Lesson 3 SOAP message structure Lesson 3 SOAP message structure Service Oriented Architectures Security Module 1 - Basic technologies Unit 2 SOAP Ernesto Damiani Università di Milano SOAP structure (1) SOAP message = SOAP envelope Envelope

More information

WebSphere Application Server, Version 5. What s New?

WebSphere Application Server, Version 5. What s New? WebSphere Application Server, Version 5 What s New? 1 WebSphere Application Server, V5 represents a continuation of the evolution to a single, integrated, cost effective, Web services-enabled, J2EE server

More information

We recommend you review this before taking an ActiveVOS course or before you use ActiveVOS Designer.

We recommend you review this before taking an ActiveVOS course or before you use ActiveVOS Designer. This presentation is a primer on WSDL. It s part of our series to help prepare you for creating BPEL projects. We recommend you review this before taking an ActiveVOS course or before you use ActiveVOS

More information

1. Draw the fundamental software technology architecture layers. Software Program APIs Runtime Operating System 2. Give the architecture components of J2EE to SOA. i. Java Server Pages (JSPs) ii. Struts

More information

Glossary of Exchange Network Related Groups

Glossary of Exchange Network Related Groups Glossary of Exchange Network Related Groups CDX Central Data Exchange EPA's Central Data Exchange (CDX) is the point of entry on the National Environmental Information Exchange Network (Exchange Network)

More information

SOA Architect. Certification

SOA Architect. Certification SOA Architect Certification SOA Architect The new generation SOACP program from Arcitura is dedicated to excellence in the fields of contemporary service-oriented architecture, microservices, service APIs

More information

Distributed Systems. Web Services (WS) and Service Oriented Architectures (SOA) László Böszörményi Distributed Systems Web Services - 1

Distributed Systems. Web Services (WS) and Service Oriented Architectures (SOA) László Böszörményi Distributed Systems Web Services - 1 Distributed Systems Web Services (WS) and Service Oriented Architectures (SOA) László Böszörményi Distributed Systems Web Services - 1 Service Oriented Architectures (SOA) A SOA defines, how services are

More information

1 Executive Overview The Benefits and Objectives of BPDM

1 Executive Overview The Benefits and Objectives of BPDM 1 Executive Overview The Benefits and Objectives of BPDM This is an excerpt from the Final Submission BPDM document posted to OMG members on November 13 th 2006. The full version of the specification will

More information

Sentinet for BizTalk Server SENTINET

Sentinet for BizTalk Server SENTINET Sentinet for BizTalk Server SENTINET Sentinet for BizTalk Server 1 Contents Introduction... 2 Sentinet Benefits... 3 SOA and API Repository... 4 Security... 4 Mediation and Virtualization... 5 Authentication

More information

Semantic SOA - Realization of the Adaptive Services Grid

Semantic SOA - Realization of the Adaptive Services Grid Semantic SOA - Realization of the Adaptive Services Grid results of the final year bachelor project Outline review of midterm results engineering methodology service development build-up of ASG software

More information

Göttingen, Introduction to Web Services

Göttingen, Introduction to Web Services Introduction to Web Services Content What are web services? Why Web services Web services architecture Web services stack SOAP WSDL UDDI Conclusion Definition A simple definition: a Web Service is an application

More information

describe the functions of Windows Communication Foundation describe the features of the Windows Workflow Foundation solution

describe the functions of Windows Communication Foundation describe the features of the Windows Workflow Foundation solution 1 of 9 10/9/2013 1:38 AM WCF and WF Learning Objectives After completing this topic, you should be able to describe the functions of Windows Communication Foundation describe the features of the Windows

More information

Oracle Developer Day

Oracle Developer Day Oracle Developer Day Sponsored by: Track # 1: Session #2 Web Services Speaker 1 Agenda Developing Web services Architecture, development and interoperability Quality of service Security, reliability, management

More information

Implementing the Army Net Centric Data Strategy in a Service Oriented Environment

Implementing the Army Net Centric Data Strategy in a Service Oriented Environment Implementing the Army Net Centric Strategy in a Service Oriented Environment Michelle Dirner Army Net Centric Strategy (ANCDS) Center of Excellence (CoE) Service Team Lead RDECOM CERDEC SED in support

More information

Semantic Web. Semantic Web Services. Morteza Amini. Sharif University of Technology Fall 94-95

Semantic Web. Semantic Web Services. Morteza Amini. Sharif University of Technology Fall 94-95 ه عا ی Semantic Web Semantic Web Services Morteza Amini Sharif University of Technology Fall 94-95 Outline Semantic Web Services Basics Challenges in Web Services Semantics in Web Services Web Service

More information

04 Webservices. Web APIs REST Coulouris. Roy Fielding, Aphrodite, chp.9. Chp 5/6

04 Webservices. Web APIs REST Coulouris. Roy Fielding, Aphrodite, chp.9. Chp 5/6 04 Webservices Web APIs REST Coulouris chp.9 Roy Fielding, 2000 Chp 5/6 Aphrodite, 2002 http://www.xml.com/pub/a/2004/12/01/restful-web.html http://www.restapitutorial.com Webservice "A Web service is

More information

J2EE APIs and Emerging Web Services Standards

J2EE APIs and Emerging Web Services Standards J2EE APIs and Emerging Web Services Standards Session #4 Speaker Title Corporation 1 Agenda J2EE APIs for Web Services J2EE JAX-RPC APIs for Web Services JAX-RPC Emerging Web Services Standards Introduction

More information

The Impact of SOA Policy-Based Computing on C2 Interoperation and Computing. R. Paul, W. T. Tsai, Jay Bayne

The Impact of SOA Policy-Based Computing on C2 Interoperation and Computing. R. Paul, W. T. Tsai, Jay Bayne The Impact of SOA Policy-Based Computing on C2 Interoperation and Computing R. Paul, W. T. Tsai, Jay Bayne 1 Table of Content Introduction Service-Oriented Computing Acceptance of SOA within DOD Policy-based

More information

XML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web

XML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web Web Services. XML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web Platform: Windows COM Component Previously

More information

METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE

METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE UDC:681.324 Review paper METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE Alma Butkovi Tomac Nagravision Kudelski group, Cheseaux / Lausanne alma.butkovictomac@nagra.com Dražen Tomac Cambridge Technology

More information

Agent-Enabling Transformation of E-Commerce Portals with Web Services

Agent-Enabling Transformation of E-Commerce Portals with Web Services Agent-Enabling Transformation of E-Commerce Portals with Web Services Dr. David B. Ulmer CTO Sotheby s New York, NY 10021, USA Dr. Lixin Tao Professor Pace University Pleasantville, NY 10570, USA Abstract:

More information

Notes. Submit homework on Blackboard The first homework deadline is the end of Sunday, Feb 11 th. Final slides have 'Spring 2018' in chapter title

Notes. Submit homework on Blackboard The first homework deadline is the end of Sunday, Feb 11 th. Final slides have 'Spring 2018' in chapter title Notes Ask course content questions on Slack (is651-spring-2018.slack.com) Contact me by email to add you to Slack Make sure you checked Additional Links at homework page before you ask In-class discussion

More information

Direct, DirectTrust, and FHIR: A Value Proposition

Direct, DirectTrust, and FHIR: A Value Proposition Direct, DirectTrust, and FHIR: A Value Proposition August 10, 2017 Authors: Grahame Grieve, HL7 Product Director for FHIR; David Kibbe, Luis Maas, Greg Meyer, and Bruce Schreiber, members of the DirectTrust

More information

Integrating Legacy Assets Using J2EE Web Services

Integrating Legacy Assets Using J2EE Web Services Integrating Legacy Assets Using J2EE Web Services Jonathan Maron Oracle Corporation Page Agenda SOA-based Enterprise Integration J2EE Integration Scenarios J2CA and Web Services Service Enabling Legacy

More information

Chapter 17 Web Services Additional Topics

Chapter 17 Web Services Additional Topics Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 17 Web Services Additional Topics Prof. Dr.-Ing. Stefan Deßloch

More information

Enterprise SOA Experience Workshop. Module 8: Operating an enterprise SOA Landscape

Enterprise SOA Experience Workshop. Module 8: Operating an enterprise SOA Landscape Enterprise SOA Experience Workshop Module 8: Operating an enterprise SOA Landscape Agenda 1. Authentication and Authorization 2. Web Services and Security 3. Web Services and Change Management 4. Summary

More information

A Perspective on the Transformation of zseries to Support New Workloads

A Perspective on the Transformation of zseries to Support New Workloads A Perspective on the Transformation of zseries to Support New Workloads Carl Wohlers IBM Corporation carlw@us.ibm.com 1-877-535-6382 Mainframe and Distributed Server Integration In days of yore, the mainframe

More information

SOA: Service-Oriented Architecture

SOA: Service-Oriented Architecture SOA: Service-Oriented Architecture Dr. Kanda Runapongsa (krunapon@kku.ac.th) Department of Computer Engineering Khon Kaen University 1 Gartner Prediction The industry analyst firm Gartner recently reported

More information

Berner Fachhochschule. Technik und Informatik. Web Services. An Introduction. Prof. Dr. Eric Dubuis Berner Fachhochschule Biel

Berner Fachhochschule. Technik und Informatik. Web Services. An Introduction. Prof. Dr. Eric Dubuis Berner Fachhochschule Biel Berner Fachhochschule Technik und Informatik Web Services An Introduction Prof. Dr. Eric Dubuis Berner Fachhochschule Biel Overview Web Service versus Web Application A Definition for the Term Web Service

More information

UNITE 2003 Technology Conference

UNITE 2003 Technology Conference UNITE 2003 Technology Conference Web Services as part of your IT Infrastructure Michael S. Recant Guy Bonney MGS, Inc. Session MTP4062 9:15am 10:15am Tuesday, September 23, 2003 Who is MGS, Inc.! Software

More information

Incorporating applications to a Service Oriented Architecture

Incorporating applications to a Service Oriented Architecture Proceedings of the 5th WSEAS Int. Conf. on System Science and Simulation in Engineering, Tenerife, Canary Islands, Spain, December 16-18, 2006 401 Incorporating applications to a Service Oriented Architecture

More information

WSDL describes a service interface Not sufficient: many other aspects of a service needs to be modeled Policies generally define the other

WSDL describes a service interface Not sufficient: many other aspects of a service needs to be modeled Policies generally define the other WSDL describes a service interface Not sufficient: many other aspects of a service needs to be modeled Policies generally define the other requirements, constraints, and properties of a service

More information

Web Services Architecture Directions. Rod Smith, Donald F Ferguson, Sanjiva Weerawarana IBM Corporation

Web Services Architecture Directions. Rod Smith, Donald F Ferguson, Sanjiva Weerawarana IBM Corporation Web Services Architecture Directions Rod Smith, Donald F Ferguson, Sanjiva Weerawarana 1 Overview Today s Realities Web Services Architecture Elements Web Services Framework Conclusions & Discussion 2

More information

BEAAquaLogic. Service Bus. JPD Transport User Guide

BEAAquaLogic. Service Bus. JPD Transport User Guide BEAAquaLogic Service Bus JPD Transport User Guide Version: 3.0 Revised: March 2008 Contents Using the JPD Transport WLI Business Process......................................................2 Key Features.............................................................2

More information

Service-Oriented Architecture (SOA)

Service-Oriented Architecture (SOA) Service-Oriented Architecture (SOA) SOA is a software architecture in which reusable services are deployed into application servers and then consumed by clients in different applications or business processes.

More information

Programming Web Services in Java

Programming Web Services in Java Programming Web Services in Java Description Audience This course teaches students how to program Web Services in Java, including using SOAP, WSDL and UDDI. Developers and other people interested in learning

More information

WS-* Standards. Szolgáltatásorientált rendszerintegráció Service-Oriented System Integration. Dr. Balázs Simon BME, IIT

WS-* Standards. Szolgáltatásorientált rendszerintegráció Service-Oriented System Integration. Dr. Balázs Simon BME, IIT WS-* Standards Szolgáltatásorientált rendszerintegráció Service-Oriented System Integration Dr. Balázs Simon BME, IIT Outline Integration requirements WS-* standards 2 Integration requirements 3 Integration

More information

Service Oriented Architectures Visions Concepts Reality

Service Oriented Architectures Visions Concepts Reality Service Oriented Architectures Visions Concepts Reality CSC March 2006 Alexander Schatten Vienna University of Technology Vervest und Heck, 2005 A Service Oriented Architecture enhanced by semantics, would

More information

National Identity Exchange Federation. Web Services System- to- System Profile. Version 1.1

National Identity Exchange Federation. Web Services System- to- System Profile. Version 1.1 National Identity Exchange Federation Web Services System- to- System Profile Version 1.1 July 24, 2015 Table of Contents TABLE OF CONTENTS I 1. TARGET AUDIENCE AND PURPOSE 1 2. NIEF IDENTITY TRUST FRAMEWORK

More information

OASIS BPEL Webinar: Frank Leymann Input

OASIS BPEL Webinar: Frank Leymann Input OASIS BPEL Webinar: Frank Leymann Input (OASIS Webinar, March 12th, 2007) Prof. Dr. Frank Leymann Director, Institute of Architecture of Application Systems Former IBM Distinguished Engineer BPEL s Role

More information

Send and Receive Exchange Use Case Test Methods

Send and Receive Exchange Use Case Test Methods Send and Receive Exchange Use Case Test Methods Release 1 Version 1.0 October 1, 2017 Send and Receive Exchange Test Methods Release 1 Version 1.0 Technology Sponsor [Name] [Email] [Telephone] Signature

More information

Java Web Service Essentials (TT7300) Day(s): 3. Course Code: GK4232. Overview

Java Web Service Essentials (TT7300) Day(s): 3. Course Code: GK4232. Overview Java Web Service Essentials (TT7300) Day(s): 3 Course Code: GK4232 Overview Geared for experienced developers, Java Web Service Essentials is a three day, lab-intensive web services training course that

More information

Software Design COSC 4353/6353 DR. RAJ SINGH

Software Design COSC 4353/6353 DR. RAJ SINGH Software Design COSC 4353/6353 DR. RAJ SINGH Outline What is SOA? Why SOA? SOA and Java Different layers of SOA REST Microservices What is SOA? SOA is an architectural style of building software applications

More information

SHORT NOTES / INTEGRATION AND MESSAGING

SHORT NOTES / INTEGRATION AND MESSAGING SHORT NOTES / INTEGRATION AND MESSAGING 1. INTEGRATION and MESSAGING is related to HOW to SEND data to and receive from ANOTHER SYSTEM or APPLICATION 2. A WEB SERVICE is a piece of software designed to

More information

Semantic Web. Semantic Web Services. Morteza Amini. Sharif University of Technology Spring 90-91

Semantic Web. Semantic Web Services. Morteza Amini. Sharif University of Technology Spring 90-91 بسمه تعالی Semantic Web Semantic Web Services Morteza Amini Sharif University of Technology Spring 90-91 Outline Semantic Web Services Basics Challenges in Web Services Semantics in Web Services Web Service

More information

WebServices the New Era

WebServices the New Era WebServices the New Era Introduction to WebServices Standards of WebServices Component Architecture WebServices Architecture SOAP WSDL UDDI Tools and Technologies of WebServices An example of WebServices

More information

IBM WebSphere Message Broker for z/os V6.1 delivers the enterprise service bus built for connectivity and transformation

IBM WebSphere Message Broker for z/os V6.1 delivers the enterprise service bus built for connectivity and transformation IBM Europe Announcement ZP07-0445, dated October 9, 2007 IBM WebSphere Message Broker for z/os V6.1 delivers the enterprise service bus built for connectivity and transformation Description...2 Product

More information

[MS-OXWSMSHR]: Folder Sharing Web Service Protocol. Intellectual Property Rights Notice for Open Specifications Documentation

[MS-OXWSMSHR]: Folder Sharing Web Service Protocol. Intellectual Property Rights Notice for Open Specifications Documentation [MS-OXWSMSHR]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation ( this documentation ) for protocols,

More information

Picasso: A Service Oriented Architecture for Model-based Automation

Picasso: A Service Oriented Architecture for Model-based Automation Picasso: A Service Oriented Architecture for Model-based Automation Sharad Singhal, James Pruyne, Vijay Machiraju Enterprise Systems and Software Laboratory HP Laboratories Palo Alto HPL-2007-50R1 January

More information

SUN. Java Platform Enterprise Edition 6 Web Services Developer Certified Professional

SUN. Java Platform Enterprise Edition 6 Web Services Developer Certified Professional SUN 311-232 Java Platform Enterprise Edition 6 Web Services Developer Certified Professional Download Full Version : http://killexams.com/pass4sure/exam-detail/311-232 QUESTION: 109 What are three best

More information

Component-based Architecture Buy, don t build Fred Broks

Component-based Architecture Buy, don t build Fred Broks Component-based Architecture Buy, don t build Fred Broks 1. Why use components?... 2 2. What are software components?... 3 3. Component-based Systems: A Reality!! [SEI reference]... 4 4. Major elements

More information

Web Services Development for IBM WebSphere Application Server V7.0

Web Services Development for IBM WebSphere Application Server V7.0 000-371 Web Services Development for IBM WebSphere Application Server V7.0 Version 3.1 QUESTION NO: 1 Refer to the message in the exhibit. Replace the??? in the message with the appropriate namespace.

More information

DISTRIBUTED COMPUTING

DISTRIBUTED COMPUTING UNIT 1 DISTRIBUTED COMPUTING Distributing Computing is a type of computing in which different components and objects comprising an application can be located on different computers connected to network

More information

WEB-202: Building End-to-end Security for XML Web Services Applied Techniques, Patterns and Best Practices

WEB-202: Building End-to-end Security for XML Web Services Applied Techniques, Patterns and Best Practices WEB-202: Building End-to-end Security for XML Web Services Applied Techniques, Patterns and Best Practices Chris Steel, Ramesh Nagappan, Ray Lai www.coresecuritypatterns.com February 16, 2005 15:25 16:35

More information

Global Reference Architecture: Overview of National Standards. Michael Jacobson, SEARCH Diane Graski, NCSC Oct. 3, 2013 Arizona ewarrants

Global Reference Architecture: Overview of National Standards. Michael Jacobson, SEARCH Diane Graski, NCSC Oct. 3, 2013 Arizona ewarrants Global Reference Architecture: Overview of National Standards Michael Jacobson, SEARCH Diane Graski, NCSC Oct. 3, 2013 Arizona ewarrants Goals for this Presentation Define the Global Reference Architecture

More information

Lesson 13 Securing Web Services (WS-Security, SAML)

Lesson 13 Securing Web Services (WS-Security, SAML) Lesson 13 Securing Web Services (WS-Security, SAML) Service Oriented Architectures Module 2 - WS Security Unit 1 Auxiliary Protocols Ernesto Damiani Università di Milano element This element

More information

Oracle Exam 1z0-478 Oracle SOA Suite 11g Certified Implementation Specialist Version: 7.4 [ Total Questions: 75 ]

Oracle Exam 1z0-478 Oracle SOA Suite 11g Certified Implementation Specialist Version: 7.4 [ Total Questions: 75 ] s@lm@n Oracle Exam 1z0-478 Oracle SOA Suite 11g Certified Implementation Specialist Version: 7.4 [ Total Questions: 75 ] Question No : 1 Identify the statement that describes an ESB. A. An ESB provides

More information

SOA-20: The Role of Policy Enforcement in SOA Management

SOA-20: The Role of Policy Enforcement in SOA Management SOA-20: The Role of Policy Enforcement in SOA Management Phil Walston VP Product Management Layer 7 Technologies Overview Discuss policy in SOA, the role of Policy Enforcement Points and where this fits

More information

Naming & Design Requirements (NDR)

Naming & Design Requirements (NDR) The Standards Based Integration Company Systems Integration Specialists Company, Inc. Naming & Design Requirements (NDR) CIM University San Francisco October 11, 2010 Margaret Goodrich, Manager, Systems

More information

Workshop on Web of Services for Enterprise Computing

Workshop on Web of Services for Enterprise Computing Workshop on Web of Services for Enterprise Computing Fujitsu Submission v0.2 Authors: Jacques Durand Tom Rutt Hamid BenMalek Acknowledgements: Masahiko Narita Paul A. Knapp 1. The Great Divide The fundamental

More information

Leverage SOA for increased business flexibility What, why, how, and when

Leverage SOA for increased business flexibility What, why, how, and when Leverage SOA for increased business flexibility What, why, how, and when Dr. Bob Sutor Director, IBM WebSphere Product and Market Management sutor@us.ibm.com http://www.ibm.com/developerworks/blogs/dw_blog.jspa?blog=384

More information

F O U N D A T I O N. OPC Unified Architecture. Specification. Part 1: Concepts. Version 1.00

F O U N D A T I O N. OPC Unified Architecture. Specification. Part 1: Concepts. Version 1.00 F O U N D A T I O N Unified Architecture Specification Part 1: Concepts Version 1.00 July 28, 2006 Unified Architecture, Part 1 iii Release 1.00 CONTENTS Page FOREWORD... vi AGREEMENT OF USE... vi 1 Scope...

More information

Technologies for Securing the Networked Supply Chain. Alex Deacon Advanced Products and Research Group VeriSign, Inc.

Technologies for Securing the Networked Supply Chain. Alex Deacon Advanced Products and Research Group VeriSign, Inc. Technologies for Securing the Networked Supply Chain Alex Deacon Advanced Products and Research Group VeriSign, Inc. Agenda Introduction Security challenges Security technologies in use today Applying

More information

Oracle SOA Suite 10g: Services Orchestration

Oracle SOA Suite 10g: Services Orchestration Oracle University Contact Us: 01 800 214 0697 Oracle SOA Suite 10g: Services Orchestration Duration: 5 Days What you will learn This course deals with the basic concepts of Service Orchestration (SOA)

More information

QoS-aware model-driven SOA using SoaML

QoS-aware model-driven SOA using SoaML QoS-aware model-driven SOA using SoaML Niels Schot A thesis submitted for the degree of MSc Computer Science University of Twente EEMCS - TRESE: Software Engineering Group Examination committee: Luís Ferreira

More information

Sentinet for Windows Azure VERSION 2.2

Sentinet for Windows Azure VERSION 2.2 Sentinet for Windows Azure VERSION 2.2 Sentinet for Windows Azure 1 Contents Introduction... 2 Customer Benefits... 2 Deployment Topologies... 3 Isolated Deployment Model... 3 Collocated Deployment Model...

More information

Prescription Monitoring Program Information Exchange (PMIX) Architecture. Version 1.0. April 2012

Prescription Monitoring Program Information Exchange (PMIX) Architecture. Version 1.0. April 2012 Prescription Monitoring Program Information Exchange (PMIX) Architecture Version 1.0 April 2012 Developed in conjunction with: TABLE OF CONTENTS 1 Document Purpose... 5 2 Document Scope... 5 3 Background...

More information

RESTful Web service composition with BPEL for REST

RESTful Web service composition with BPEL for REST RESTful Web service composition with BPEL for REST Cesare Pautasso Data & Knowledge Engineering (2009) 2010-05-04 Seul-Ki Lee Contents Introduction Background Design principles of RESTful Web service BPEL

More information