100% found this document useful (2 votes)
295 views27 pages

OracleBPELPM Final

SOA is an evolution of distributed computing and modular programming. SOA provides a modularity of logic that can be presented as a service for a client and function as a client for other services. Web Services are a result of the emergence of the Web as a standards-based, language.

Uploaded by

Dilip Gudipati
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
295 views27 pages

OracleBPELPM Final

SOA is an evolution of distributed computing and modular programming. SOA provides a modularity of logic that can be presented as a service for a client and function as a client for other services. Web Services are a result of the emergence of the Web as a standards-based, language.

Uploaded by

Dilip Gudipati
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 27

SOA Suit

© Tata Consultancy Services ltd. August 2, 2009 1


SOA

Service Oriented Architecture (SOA) is an evolution


of distributed computing and modular Programming.

SOA provides a modularity of logic that can be


presented as a service for a client (client as in client-
server architecture) and at the same time function as
a client for other services.

2
Requirements for a SOA

In order to efficiently use a SOA, you must abide by the following


requirements:

Interoperability between different systems and programming


languages

Clear and unambiguous description language

Retrieval of the service

3
Terms
 Web Services
 SOAP (Simple Object Access Protocol)
 UDDI (Universal Description, Discovery
and Integration)
 WSDL (Web Services Description
Language)
 WS-BPEL (Web Services Business Process
Execution Language)
 XML (eXtensible Markup Language)

4
Terms
 Web Services - Web Services use a
loosely coupled integration model to allow
flexible integration of heterogeneous
systems in a variety of domains including
business-to-consumer, business-to-
business and enterprise application
integration.
 Integration is loosely coupled, rather than
tightly coupled like in the case of
proprietary formats (e.g.. EDI).
 Web Services framework consists of
“publish-find-bind” cycle
5
Terms
Web Services function on the foundations of
 Simple Object Access Protocol (SOAP) – Defines
an XML messaging protocol for services
interoperability.
 Web Services Description Language (WSDL) –
Introduces a common grammar for describing
services.
 Universal Description, Discovery and
Integration (UDDI) – Provides the infrastructure
necessary to discover and publish services in a
systematic manner.
Why Web Services ?
 Web Services are a result of the emergence of the
Web as a standards-based, language and
6
Web Services Standards
 WS-Messaging - WS-Addressing provides
transport-neutral mechanisms to address Web
services and messages. This specification defines
XML elements to identify Web service endpoints
and to secure end-to-end endpoint identification in
messages.
 WSDL - WSDL is an XML format for describing
network services as a set of endpoints operating
on messages containing either document-oriented
or procedure-oriented information.
 SOAP – Allows objects (or code) of any kind - on
any platform / any language to cross-
communicate in a distributed, decentralized, Web
based environment.
 XSL – eXtensible Stylesheet
7 Language family.
Web Services Standards
 XSLT – XSL Transformations – Part of XSL family,
this is a language for transformation XML
documents into other XML documents
 WSIF – Web Services Invocation Framework – This
is a Java API that enables invocation of web
services across diverse platforms and languages.
 XQuery – XML query language – enables querying
XML documents in a standardized format.
 WSBPEL – Driven and developed by OASIS
(Organization for Advancement of Structured
Information Standards), a non-profit organization.
This is a language used for the definition and
execution of business processes using web
services.
8
Web Services – Orchestration Vs.
Choreography
Combining discrete web services to build end-
to-end business processes involves two
activities :
(1) Orchestration : A central process takes
control of the involved web services and co-
ordinates the execution of different operations
on the web services involved in the operation.
The “involved” web services do not “know” of
their involvement in a composition process

9
Web Services – Orchestration Vs.
Choreography
(2) Choreography : This is a collaborative
effort and focuses on exchange of messages.
The web services need to be aware of the
business process that they imbibe, operations
to execute and messages to exchange.

10
BPEL
What Is BPEL?
BPEL is an XML-based language for
enabling task sharing across multiple
enterprises using a combination of Web
services. BPEL is based on the XML schema,
simple object access protocol (SOAP), and Web
services description language (WSDL).

BPEL provides enterprises with an


industry standard for business process
orchestration and execution. Using BPEL, you
design a business process that integrates a
series of discrete services into an end-to-end
process flow. This integration reduces process
11
The BPEL language enables you to define how to:

 Send XML messages to, and asynchronously


receive XML messages from, remote services
 Manipulate XML data structures
 Manage events and exceptions
 Design parallel flows of process execution
 Undo portions of processes when exceptions
occur

12
Anatomy of a BPEL Process

 BPEL process consists of “activities”.

 Basic BPEL activities involve


 <invoke> Invoking other Web Services
 <receive> Waiting to receive an
invocation activity from client
 <reply> Generating a response for
synchronous operations
 <variable> Declare variables
 <assign> Manipulating Data Variables
 <throw> Indicate faults and exceptions
 <wait> Waiting for some time
 <terminate> Terminate the entire process
13
Anatomy of a BPEL Process

 Basic activities can be combined to define


complex algorithms that specify the steps of
a business process. To achieve this, BPEL
support “structure” activities.
 Structure activities involve
 <sequence> Define an ordered sequence of
activities
 <flow> Defining a set of activities that will be
invoked in parallel
 <switch> Implementing branching of
activities.
 <while> Implementing loops.
 <pick> Ability to select one of several paths.
 BPEL processes define pointers to other web
14
Sample BPEL Process

15
Understanding BPEL Process
 The Employee Travel
Status Web service
provides the
EmployeeTravelStatu
sPT port type through
which the employee
travel status can be
checked with the
EmployeeTravelStatu
s operation.

 The Airline Web service


specifies two port
types: The first,
FlightAvailabilityPT,
is used to check the
flight availability using
the FlightAvailability
operation. To return the
result, the Web service
16
Understanding BPEL Process
 Once a BPEL process is
defined, it needs to be
exposed as a web
service, so that clients /
other web services can
invoke it.

 The process has to


receive messages from
its clients and return
results. It has to expose
the TravelApprovalPT
port type, which will
specify an input
message. It also has to
declare the
ClientCallbackPT port
type, used to return the
result to the client.
17
Oracle SOA Suit
BPEL Process Manager

 Process Designer
 Process Manager Console
 Process Manager Server
 Integration Services
 Human Workflow

Business Activity Monitoring

 Web Browser Dashboard


 Business User Authoring
 Embedded Actions
 Real-Time Analytics

18
Enterprise Service Bus

 Multi-protocol bus
 Data enrichment
 Content based routing
 Content filtering

Web Services Management

 Policy authoring
 Policy enforcement
 .NET and Java support

Web Services Registry

 Publish services
 Categorize services
 SOA System of Record

19
Business Rules

 Business User Authoring


 Small Footprint Engine
 Seamless Integration
 Rules SDK

Connectivity

 300+ Application adapters


 Legacy adapters
 Technology adapters
 B2B protocols
 WSIF bindings

JDeveloper

 Develop Web services


 WS-* standards support
·

20
Oracle BPEL PM
What Is Oracle BPEL Process Manager?

Oracle BPEL Process Manager provides a framework for


easily designing, deploying, monitoring, and administering
processes based on BPEL standards.
 Member of Oracle Fusion Middleware family of products.
 Enables enterprises in orchestrating disparate applications
and Web services into business processes.
 Facilitates adoption of Service-Oriented Architecture (SOA)
by enabling rapid building and deployment of business
processes in a standards-based manner.
 Addresses integration requirements and helps build
composite applications based on Web Services industry
standards.
 Native support for BPEL, XML, XSLT, XPATH, JMS, JCA etc.

21
Oracle BPEL Process Manager provides support for the following
features:
 Web service standards such as XML, SOAP, and WSDL
 Dehydration (enables the states of long-running processes to be
automatically maintained in a database) and correlation of asynchronous
messages
 Service-oriented architecture (SOA)
 Parallel processing of tasks
 Fault handling and exception management during both design time and
run time
 Event timeouts and notifications
 Compensation mechanisms for the implementation of long-running
transactions
 Scalability and reliability of processes
 Management and administration of processes
 Version control
 Audit trails for tracing business flow history
 Installation on multiple operating systems and integration with multiple
application servers (for example, Oracle Application Server, BEA
WebLogic, and JBoss) and databases.
22
Oracle BPEL PM
Components of Oracle BPEL
Process Manager
 BPEL Designer
 BPEL Engine / Server
 BPEL Console

23
Sample BPEL Process in Oracle
BPEL PM

24
Hands-On : Order Booking Tutorial

25
Resources
BPEL Specification
http://www.oasis-open.org/committees/documents.php?w

Oracle BPEL PM Home


http://www.oracle.com/technology/products/ias/bpel/inde

OTN BPEL PM Forum


http://forums.oracle.com/forums/forum.jspa?forumID=212

Clemens Utschig’s Blog


http://clemensblog.blogspot.com
26
Thank You!

27

You might also like