Vous êtes sur la page 1sur 43

Understanding Web Services,

SOA, BPEL & AIA

Basheer Khan
Agenda
• Web Services
• Service-Oriented Architecture (SOA)
• Business Process Execution Language (BPEL)
• BPEL Demo
• Application Integration Architecture (AIA)
• Next Steps
• Q&A

4/1/2009 2
Web Services
What Is A Web Service?
• C2C – Consumer to Consumer
– Person (consumer) to person
– Email (SMTP, RFC-822)

• B2C – Business to Consumer


– Person to Application
– Web (HTTP, HTML)

• A2A – Application to Application


– Application to Application
– Web services (XML, SOAP, UDDI, WSDL)

4/1/2009 4
What Is A Web Service?
• A Web service …

– Exposes and describes itself

– Allows other services to locate it on the Web

– Can be invoked

– Must return a response

4/1/2009 5
How Does A Web Service Work?

Service
Broker
Find Register

Service
Contract
Service Service
Consumer Provider
Client Service

4/1/2009 6
How Does A Web Service Work?

Courtesy: IBM

4/1/2009 7
Service-Oriented Architecture
Understanding SOA
When we move to a new home …
Service

Service Gas

Phone

Service
Power

Home Sweet Home


Service

Cable TV Service

Water
… we establish and use (everyday) a Service-Oriented Architecture!
4/1/2009 9
Understanding SOA
Yet, why is it that most organizations today …

Banks Warehouses

XYZ, Inc

Customers Vendors

… build their own bridges to interact between applications or with partners?


4/1/2009 10
SOA – Characteristics
• Reusability – leverages existing business processes across the
enterprise and external trading partners

• Agility – provides true business agility for rapid technology


deployment

• Interoperability – provides framework that is platform or language


agnostic

• Visibility – provides insight into available services and business


processes

• Manageability – increases ability to monitor, secure, and manage


services and business processes
4/1/2009 11
SOA – Benefits
• Lower cost, flexible architecture

• Complies with industry standards and long term future direction

• Loosely coupled solution that is vendor and platform agnostic

• Enables rapid business application development by reusing existing


functionality

• Enables the process-oriented or services-oriented organization that is


extremely agile and adaptable to change

• Leverage existing IT legacy investments with lower risk, incremental


projects
4/1/2009 12
SOA – Key Considerations
• Services must be provisioned and accessed in a secure manner

• Services must comply with corporate and regulatory policies

• Services must be highly available and reliable

• Service consumers must be isolated from the changes to:


– Service implementation and network topology
– Security and management policy

• Services and policies must be discoverable via a registry to promote reuse

• Services must meet SLA, performance, and scalability goals

• Services must be monitored and managed to ensure quality of service


4/1/2009 13
Understanding SOA
APPLICATION

Portals
J2EE Applications
.NET Client Web Client Portal Servlets
(Support) (Self Service) (Self Service)

PROCESS FLOWS

BPEL
XSLT
Orchestration
XQuery

Management and Security WS-Security


WS-Policy, SAML

WSDL WSDL WSDL WSDL WSDL


BUSINESS SERVICES

JDBC JMS JCA


XML, XML Schema
SOAP RMI
WSDL/WSIF
SOAP, JCA, JMS

.NET/Axis Database Mainframe Packaged Apps EJBs

4/1/2009 14
Why is SOA important?
• Organizations have realized the immense benefit
SOA brings by enabling reuse of existing
services, introducing agility and reducing cost
• There is a paradigm shift in the industry in terms
of SOA adoption. Major software vendors,
including Oracle, now embed native web services
in their applications
• Applications Unlimited are now certified with
Fusion Middleware for SOA-enablement

4/1/2009 15
BPEL Process Manager
What Is BPEL?
Business Process Execution Language: Markup language for composing a set of
discrete services into an end-to-end process flow

• 10+ years of R&D from SalesDB start


MSFT and IBM
Duplicate
• SOAP but also Java, JCA Number!

• Rich Flow Semantics


Billing
• Optimized Bindings
• XPATH+XSLT+XQuery
• WS-Security
Router
• A Process is a Service
end
4/1/2009 17
How Does BPEL Work?
• Unlike Enterprise Application Integration (EAI) tools
that just orchestrated data, BPEL orchestrates both
data and processes
• It combines web services from different applications
to build end-to-end processes
• It enables standards-based communication between:
– One application to another
– User interfaces to back-end applications
– One organization to another (B2B)

4/1/2009 18
How Does BPEL Work?
PORTAL Web Service

Java Service

? Database
Stored Procedures

J2EE
ERP
Oracle, SAP, etc.
BPEL
The Orchestrator
IU User Tasks
TOMCAT
4/1/2009 19
How Does BPEL Work?
• BPEL guarantees delivery correctly, once –
ensuring no data loss and avoiding data
duplication (when an interface batch gets
executed more than once)
• If any application is not available, BPEL stores
the state and ensures that the data delivered or
process is executed on the target application
once it is available again (similar to print
spooling)
4/1/2009 20
How Does BPEL Work?
BPEL Process Manager
BAM
• Comprehensive and native
Oracle BPEL Process Manager
BPEL implementation

BPEL
• Easy-to-use modeling tool
Workflow Rule BPEL
Designer
Console • Scalable and reliable engine
BPEL Engine
XSLT • Flexible binding framework
Mapper
Transformation Correlation • Rich management and
Adapter WSIF Binding Queuing monitoring
Factory Dehydration Store
(Oracle Database) • Support for Oracle AS,
SAP EBS DB File … WebLogic and WebSphere
• Get up and running in less
Application Server ( Oracle, BEA, JBoss, IBM) than 15 minutes!
4/1/2009 21
Oracle’s SOA Approach (using BPEL)
• Since organizations have heterogeneous
environments, Oracle introduced adapters to
jumpstart SOA enablement
• Instead of developing native, core web services
for every application, you can now configure
Database (in less than 5 mins) to make a
database table, view or procedure to behave as a
web service!

4/1/2009 22
How Does BPEL Work?
BPEL Adapters

KEY FEATURES
• WSIF + JCA + XML

• Rich Metadata
• Requests and Events
• Optimized Bindings
• 200+ Systems
• Fail Over Management

4/1/2009 23
Increased Visibility
• Developing interfaces (processes) using BPEL
provide greater end-to-end visibility and are very
easy to debug/maintain.
• The Designer uses an easy, click-drag-and-drop
approach to building processes
• The Console displays the process exactly as it
was design (What You See Is What You Get)

4/1/2009 24
How Does BPEL Work?
BPEL Designer
KEY FEATURES

• Native BPEL Support


• Drag-and-drop process modeler
• UDDI and WSIL service browser
• Visual XPATH editor
• Visual Assign editor
• One-click build and deploy

4/1/2009 25
How Does BPEL Work?
BPEL Console
KEY FEATURES

• Visual Monitoring
• Auditing
• BPEL Debugging
• In-flight Instance Administration
• Performance Tuning
• Partitioning/Domains

4/1/2009 26
How Does BPEL Work?
• Mapping, transformation and translation of data
elements is no longer embedded (tightly-coupled)
in the source or target applications.
• Transformation of data elements is abstracted to
a standards-based, XSL mapping which is
designed using a simple, click-and-drag user
interface
• Abstracting the data mapping promotes reuse as
well as saves effort during upgrades

4/1/2009 27
How Does BPEL Work?
BPEL Transformations

KEY FEATURES

• Drag-and-drop Interface
• Built-in Library of Functions
• Support for Lists and Iterations
• Auto-mapping
• Version Resiliency

4/1/2009 28
How Does BPEL Work?
• BPEL provides a very robust, scalable
architecture that provides high-availability by
introducing multiple nodes
• Performance is typically not an issue when using
BPEL. The processes are usually waiting on the
source or target applications.
• BPEL has been demonstrated to process around
80,000 transactions per hour using a single
server!

4/1/2009 29
How Does BPEL Work?
BPEL Architecture

KEY FEATURES
• Plug and Play
• Cross Platform
• Massively Scalable

4/1/2009 30
How Does BPEL Work?
BPEL High Availability

BPEL Server
LOAD BALANCER

App. Server

BPEL-Optimized
SOAP Stack

Dehydration Store
(Oracle Database)
Stateless
Architecture BPEL Server Support for large BPEL
• Clustering App. Server
Processes (20,000+ activities)
• Fail Over
4/1/2009 31
BPEL Demo
Application Integration
Architecture (AIA)
BPEL and AIA
• BPEL is the core product used to develop
Process Integration Packs in Oracle’s
Application Integration Architecture
• Oracle Fusion Applications leverage BPEL for
internal workflow and AIA for integration to other
applications

4/1/2009 34
Application Integration Architecture (AIA)

4/1/2009 35
Understanding AIA
• AIA uses an intermediate Enterprise Business
Object (EBO) to map between several
applications
• The EBO contains a superset of all possible
attributes for a given entity so that any application
can map to it.

4/1/2009 36
Understanding AIA

4/1/2009 37
Why AIA?
• By using the EBO, the mappings between
multiple applications do not have to be rewritten if
one of the application’s schema changes during
an upgrade.
• Only the portion of the mapping between the
EBO and the upgraded application needs to be
remapped.

4/1/2009 38
Integration Without AIA

Application A Application B
Customer Customer
- Name - Company Name
- Phone - Street
- Address - City
- Fax - State
- Zip
- Office Phone
- Office Fax

4/1/2009 39
Integration With AIA

Application A EBO Application B

Customer Customer Customer


- Name - Name - Company Name
- Phone - Street - Street
- Address - City - City
- Fax - State - State
- Zip - Zip
- Industry - Office Phone
- Phone - Office Fax
- Fax
- Website
- etc.
4/1/2009 40
Next Steps
• Visit Oracle BPEL Home Page
http://www.oracle.com/technology/bpel

• Download & try Oracle BPEL – it is FREE!

4/1/2009 41
About Innowave
• Technology Consulting firm founded in 2005; HQ in Irvine, CA, USA
• Provide unique, innovative solutions using Oracle Applications and
Technology
• Expertise includes: Fusion Middleware, WebLogic Suite, SOA Suite,
SOA Governance, WSM, OER, BPEL, OSB, Business Rules, BPA,
BPM, BAM, OBIEE, Web Center Suite, Identity Management
• Implement, upgrade, and enhance Oracle E-Business Suite,
JD Edwards, PeopleSoft, and Siebel Applications
• Extensive experience and expertise managing global and local
implementations across various industry verticals

4/1/2009 42
Thank You!

QUESTIONS
ANSWERS

4/1/2009 43