Post on 04-Mar-2018
Peter Oosterlynck - Oracle Belgium 2
SOA :SOA :SOA :SOA :Service Oriented ArchitecturesService Oriented ArchitecturesService Oriented ArchitecturesService Oriented ArchitecturesSOA :SOA :SOA :SOA :SOA :SOA :SOA :SOA :Service Oriented ArchitecturesService Oriented ArchitecturesService Oriented ArchitecturesService Oriented ArchitecturesService Oriented ArchitecturesService Oriented ArchitecturesService Oriented ArchitecturesService Oriented Architectures
Peter OosterlynckMaster Principal Sales ConsultantOracle Belgium
peter.oosterlynck@oracle.com
Peter Oosterlynck - Oracle Belgium 3
AgendaAgendaAgendaAgendaAgendaAgendaAgendaAgendaAgendaAgendaAgendaAgenda
� SOA defined
� Service Enablement, Adapter Framework
� Service Contract vs. Service Implemantation
� Routing and Transformation
� Services Orchestration
� SOA Governance
� Real-Time Visibilty
� BPM: Business Process Management
� (SCA: Service Component Architecture)
Peter Oosterlynck - Oracle Belgium 4
SOA : Service Oriented ArchitectureSOA : Service Oriented ArchitectureSOA : Service Oriented ArchitectureSOA : Service Oriented ArchitectureSOA : Service Oriented ArchitectureSOA : Service Oriented ArchitectureSOA : Service Oriented ArchitectureSOA : Service Oriented ArchitectureSOA : Service Oriented ArchitectureSOA : Service Oriented ArchitectureSOA : Service Oriented ArchitectureSOA : Service Oriented Architecture
� A method for …
� Systems development
� Systems integration
� … whereby functionality is …
� grouped around business processes
� packaged as interoperable services
� … aimed at …
� Increasing agility
� Improving total system quality
� Limiting IT TCO
“SOA is about turning
spaghetti into lasagna.“Gartner analyst Massimo Pezzini
“SOA is about turning
spaghetti into lasagna.“Gartner analyst Massimo Pezzini
Peter Oosterlynck - Oracle Belgium 5
BPM : BPM : BPM : BPM : Business Process ManagementBusiness Process ManagementBusiness Process ManagementBusiness Process ManagementBPM : BPM : BPM : BPM : BPM : BPM : BPM : BPM : Business Process ManagementBusiness Process ManagementBusiness Process ManagementBusiness Process ManagementBusiness Process ManagementBusiness Process ManagementBusiness Process ManagementBusiness Process Management
� "BPM is a management practice that provides for governance of a business's process environment toward the goal of improving agility and operational performance.
� BPM is a structured approach employing methods, policies, metrics, management practices and software tools to manage and continuously optimize an organization's activities and processes."
(Gartner)
Peter Oosterlynck - Oracle Belgium 6
SOA by example: Order Management SOA by example: Order Management SOA by example: Order Management SOA by example: Order Management ProjectProjectProjectProjectSOA by example: Order Management SOA by example: Order Management SOA by example: Order Management SOA by example: Order Management SOA by example: Order Management SOA by example: Order Management SOA by example: Order Management SOA by example: Order Management ProjectProjectProjectProjectProjectProjectProjectProject
Get Account
Information
Manage
New OrdersKey Processes
Business Process
Service Enablement
System Access (Adapters)
Customer Orders Portlet
Order Approval
Key Portlets
Portal
Account
InformationOrder Invoice Service
Get Order
iDoc
Issue Invoice
Service Enablement
System Access (Adapters)
Routing/
Transformation
Orchestration
“Granularity”
Aggregate Account
Information
LO
B C
EN
TR
IC IT
CE
NT
RIC
Service
Enablement
UI
Peter Oosterlynck - Oracle Belgium 7
Apps
AdaptersAdapters B2BB2B
PartnersDB Legacy
CONNECTIVITY
Routing Transform DataQuality
ETL &Replication
Data IntegratorData IntegratorOracle Service BusOracle Service Bus
SOA Agility
ROUTING & DATA SERVICES
NativeBPEL
Business Rules
Human Workflow
BPEL Process ManagerBPEL Process Manager
ORCHESTRATION
Coherence Cache
J2EE Application Server(Oracle AS, WebLogic, WebSphere, JBoss)
Messaging
GOVERNANCESystem
Monitoring
Enterprise Enterprise ManagerManager
UDDI
WS PoliciesSecurity
Web Services Web Services ManagerManager
RegistryRegistry
GOVERNANCE
SOA lifecyclegovernance
EnterpriseEnterpriseRepositoryRepository
JRockit VM & RT
REAL-TIMEVISIBILITY
& PROCESSING AlertsBusiness Monitoring
BAMBAM
EventsData Streams
CEPCEP
ApplicationDevelopmentFramework
EnterpriseModeling
BPA SuiteBPA Suite
JDeveloperJDeveloper
Business UserModeling
BPM SuiteBPM Suite
Oracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event Technologies
Peter Oosterlynck - Oracle Belgium 8
Apps
AdaptersAdapters B2BB2B
PartnersDB Legacy
CONNECTIVITY
Coherence Cache
J2EE Application Server(Oracle AS, WebLogic, WebSphere, JBoss)
Messaging JRockit VM & RT
The Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformEVENTS & CONNECTIVITYEVENTS & CONNECTIVITYEVENTS & CONNECTIVITYEVENTS & CONNECTIVITY
The Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformEVENTS & CONNECTIVITYEVENTS & CONNECTIVITYEVENTS & CONNECTIVITYEVENTS & CONNECTIVITYEVENTS & CONNECTIVITYEVENTS & CONNECTIVITYEVENTS & CONNECTIVITYEVENTS & CONNECTIVITY
Peter Oosterlynck - Oracle Belgium 9
Adapter FrameworkAdapter FrameworkAdapter FrameworkAdapter FrameworkAdapter FrameworkAdapter FrameworkAdapter FrameworkAdapter Framework
Providing Connectivity
Capturing Events
Peter Oosterlynck - Oracle Belgium 10
Adapter FrameworkAdapter FrameworkAdapter FrameworkAdapter FrameworkAdapter FrameworkAdapter FrameworkAdapter FrameworkAdapter Framework
Enterprise-strength infrastructure for connectivity to enterprise information systems (EIS).
J2EE Application Server
(Oracle Application Server & 3rd party
Application Servers) �
OracleAS Adapters
• Comprehensive and
pervasive
connectivity
• Support for SOA
/EDA
• Open Standards
Support
• Hot Pluggable
• Rapid development
• Robust & highly
scalable.
• Managed through
Oracle Application
Server 10g
Legacy Applications
Oracle Applications
Packaged Applications
BPEL PM
Technology
ESB
PORTAL
Adapter
Design-time
(JDeveloper)�
WSDL
JCA
Native
Interfaces
BAM
J2EE
Applications
Peter Oosterlynck - Oracle Belgium 11
A Service …A Service …A Service …A Service …A Service …A Service …A Service …A Service …A Service …A Service …A Service …A Service …
<rate>
5.6%
</rate>
Payload
XML
Network Centric
Self describing
WSDL
GetCustomerInfo
GetReport
ListProducts
Search
CreditAccount
ProcessOrder
•A ContractA ContractA ContractA Contract
•An implementationAn implementationAn implementationAn implementation
••A ContractA ContractA ContractA ContractA ContractA ContractA ContractA Contract
••An implementationAn implementationAn implementationAn implementationAn implementationAn implementationAn implementationAn implementation
Peter Oosterlynck - Oracle Belgium 12
<?xml version="1.0" encoding="UTF-8"?><definitions name="EmpDept"
xmlns="http://schemas.xmlsoap.org/wsdl/" … ><types><schema xmlns="http://www.w3.org/2001/XMLSchema" … ><element name="empno" type="int"/><element name="emp" type="tns:emp_t"/><complexType name="emp_t"><sequence><element name="empno" type="int"/><element name="ename" type="string"/>…
</sequence></complexType>
</schema></types>
…
The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”
Peter Oosterlynck - Oracle Belgium 13
The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”The WSDL “contract”
…<message name="getEmpRequestMessage"><part name="empno" element="tns:empno"/>
</message><message name="getEmpResponseMessage"><part name="payload" element="tns:emp"/>
</message><portType name="EmpDeptPortType"><operation name="getEmp"><input name="getEmpRequest"
message="tns:getEmpRequestMessage"/><output name="getEmpResponse"
message="tns:getEmpResponseMessage"/><fault … />
</operation></portType>
…
Peter Oosterlynck - Oracle Belgium 14
A Service …A Service …A Service …A Service …A Service …A Service …A Service …A Service …A Service …A Service …A Service …A Service …
.NET, Axis Service
Java Service
Database
Stored Procedures
RMI
HTTP
JDBC
BINDING
BINDING
ERPJCA
BINDING
INTERFACE
WSDL
… Should Offer … Should Offer … Should Offer … Should Offer OptimizedOptimizedOptimizedOptimized BindingsBindingsBindingsBindings… Should Offer … Should Offer … Should Offer … Should Offer … Should Offer … Should Offer … Should Offer … Should Offer OptimizedOptimizedOptimizedOptimizedOptimizedOptimizedOptimizedOptimized BindingsBindingsBindingsBindingsBindingsBindingsBindingsBindings
Peter Oosterlynck - Oracle Belgium 15
Service binding in the WSDLService binding in the WSDLService binding in the WSDLService binding in the WSDLService binding in the WSDLService binding in the WSDLService binding in the WSDLService binding in the WSDLService binding in the WSDLService binding in the WSDLService binding in the WSDLService binding in the WSDL…
<binding name="EmpDeptSOAPBinding"type="tns:EmpDeptPortType">
<soap:bindingstyle="document"transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="getEmp"><soap:operation style="document" soapAction="getEmp"/><input><soap:body use="literal"/>
</input><output><soap:body use="literal"/>
</output></operation>
</binding><service name="EmpDeptSOAPService"><port name="EmpDeptPort"
binding="tns:EmpDeptSOAPBinding"><soap:address location="http://some.soap.endpoint"/>
</port></service>
</definitions>
Peter Oosterlynck - Oracle Belgium 16
… but not only SOAP… but not only SOAP… but not only SOAP… but not only SOAP… but not only SOAP… but not only SOAP… but not only SOAP… but not only SOAP… but not only SOAP… but not only SOAP… but not only SOAP… but not only SOAP…<binding name="EmpDeptEJBBinding"
type="tns:EmpDeptPortType"><ejb:binding/><format:typeMapping encoding="Java" style="Java">…<operation name="getEmp"><ejb:operation methodName="getEmp"
parameterOrder="empno"interface="remote"returnPart="payload"/>
<input name="getEmpRequest"/><output name="getEmpResponse"/>
</operation></binding><service name="EmpDeptEJBService"><port name="EmpDeptPort" binding="tns:EmpDeptEJBBinding"><ejb:address className="p_oosterlynck.EmpDeptEJBHome"
jndiName="EmpDeptEJB"initialContextFactory="p_oosterlynck.naming.RMIContextFactory"
jndiProviderURL="ormi://poosterl-vm0:23792/EmpDeptEJB"/>
</port></service>
</definitions>
Peter Oosterlynck - Oracle Belgium 17
WSIF WSIF WSIF WSIF –––– Web Services Invocation FrameworkWeb Services Invocation FrameworkWeb Services Invocation FrameworkWeb Services Invocation FrameworkWSIF WSIF WSIF WSIF WSIF WSIF WSIF WSIF –––––––– Web Services Invocation FrameworkWeb Services Invocation FrameworkWeb Services Invocation FrameworkWeb Services Invocation FrameworkWeb Services Invocation FrameworkWeb Services Invocation FrameworkWeb Services Invocation FrameworkWeb Services Invocation Framework
� Java API/Library for invoking (Web) services
� … no matter how or where the services are provided
WSIF Framework
Java A
PI
EJB
Java
HTTP
SOAP
WS
IF P
rovid
ers
JCA
…
AQ
Database
JMS
File/FTP
…
factory.getService(<WSDL URL>…)
service.getPort(<port name>)
port.createOperation(<operation name>…)
operation.executeRequestResponseOperation(…)
getObjectPart(<partname>)
Peter Oosterlynck - Oracle Belgium 18
Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…
Databases� Oracle 8i and above
� IBM DB/2 UDB
� Informix
� Clarion
� Clipper
� Cloudscape
� DBASE
� Dialog
� Essbase
� FOCUS Data Access
� Great Plains
� Microsoft SQL Server
� MUMPS (Digital Standard MUMPS)
� Navision Financials (ODBC 3.x)
� Nucleus
� Paradox
� Pointbase
� PROGRESS
� Red Brick
� RMS
� SAS Transport Format
� Sybase
� Teradata
� Unisys DMS 1100/2200
� UniVerse
Applications� Oracle Applications
� SAP R/3
� Peoplesoft
� JD Edwards
� Siebel
� Clarify
� Lotus Notes
� Ariba
� AXIOM mx/open
� Baan
� BroadVision
� Clarify
� Commerce One
� Hogan Financials
� i2 Technologies
� Lawson
� Livelink
� Manugistics
� Microsoft CRM
� Vantive
� Walker Interactive
� Remedy
� Salesforce.com
Technology� SOAP
� HTTP, HTTP-S
� Email – POP3, SMTP, IMAP
� FTP, FTP-S
� Flat File
� LDAP
� JMS
� Oracle AQ
� IBM MQSeries
� TIBCO Rendezvous
� Socket
Legacy� CICS
� IMS/DB
� IMS/TM
� VSAM
� ADABAS
� Natural
� Tuxedo
� CA-Datacom
� Screen Scraping
� CA-IDMS
� C-ISAM,D-ISAM,K-SAM,
QSAM
Peter Oosterlynck - Oracle Belgium 19
Apps
AdaptersAdapters B2BB2B
PartnersDB Legacy
CONNECTIVITY
Routing Transform DataQuality
ETL &Replication
Data IntegratorData IntegratorOracle Service BusOracle Service Bus
SOA Agility
ROUTING & DATA SERVICES
Coherence Cache
J2EE Application Server(Oracle AS, WebLogic, WebSphere, JBoss)
Messaging JRockit VM & RT
The Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformEnterprise Service BusEnterprise Service BusEnterprise Service BusEnterprise Service BusThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformEnterprise Service BusEnterprise Service BusEnterprise Service BusEnterprise Service BusEnterprise Service BusEnterprise Service BusEnterprise Service BusEnterprise Service Bus
Peter Oosterlynck - Oracle Belgium 20
ESB: ESB: ESB: ESB: ESB: ESB: ESB: ESB: Enterprise Service BusEnterprise Service BusEnterprise Service BusEnterprise Service BusEnterprise Service BusEnterprise Service BusEnterprise Service BusEnterprise Service Bus
Decoupling Contract from Provider(s)K
Service Virtualisation
Peter Oosterlynck - Oracle Belgium 21
An ESB Moves DataAn ESB Moves DataAn ESB Moves DataAn ESB Moves DataAn ESB Moves DataAn ESB Moves DataAn ESB Moves DataAn ESB Moves Data
ConnectAdapters
Metadata
WS Manager
Security
Apps Events
ConnectConnectAdaptersAdapters
MetadataMetadata
WS ManagerWS Manager
SecuritySecurity
Apps EventsApps Events
EnrichTransformation
Value Mappings
Business Rules
Workflow
System Xref
EnrichEnrichTransformationTransformation
Value MappingsValue Mappings
Business RulesBusiness Rules
WorkflowWorkflow
System XrefSystem Xref
DistributeRouting
Protocol Bus
Messaging
Interoperability
HA, Scalability
DistributeDistributeRoutingRouting
Protocol BusProtocol Bus
MessagingMessaging
InteroperabilityInteroperability
HA, ScalabilityHA, Scalability
Monitoring and Configuration Monitoring and Configuration Monitoring and Configuration
Peter Oosterlynck - Oracle Belgium 22
Oracle ESB Oracle ESB Oracle ESB Oracle ESB Oracle ESB Oracle ESB Oracle ESB Oracle ESB –––––––– DiagrammerDiagrammerDiagrammerDiagrammerDiagrammerDiagrammerDiagrammerDiagrammer
Peter Oosterlynck - Oracle Belgium 23
Routing ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting Services
Peter Oosterlynck - Oracle Belgium 24
XPath Expression BuilderXPath Expression BuilderXPath Expression BuilderXPath Expression BuilderXPath Expression BuilderXPath Expression BuilderXPath Expression BuilderXPath Expression Builder
Peter Oosterlynck - Oracle Belgium 25
Routing ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting ServicesRouting Services
Peter Oosterlynck - Oracle Belgium 26
XSLT MapperXSLT MapperXSLT MapperXSLT MapperXSLT MapperXSLT MapperXSLT MapperXSLT Mapper
• Visual XSLT Mapping tool
• Caching and Configurable Validation
• Unit Debugger
• DVM/Code Conversions/Lookups
• Dictionaries - “Smart” mapping
• BPEL, ESB, PeopleSoft Tools
JDev XSLT Mapper
Peter Oosterlynck - Oracle Belgium 27
Apps
AdaptersAdapters B2BB2B
PartnersDB Legacy
CONNECTIVITY
Routing Transform DataQuality
ETL &Replication
Data IntegratorData IntegratorOracle Service BusOracle Service Bus
SOA Agility
ROUTING & DATA SERVICES
NativeBPEL
Business Rules
Human Workflow
BPEL Process ManagerBPEL Process Manager
ORCHESTRATION
Coherence Cache
J2EE Application Server(Oracle AS, WebLogic, WebSphere, JBoss)
Messaging JRockit VM & RT
The Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformBPEL Process ManagerBPEL Process ManagerBPEL Process ManagerBPEL Process ManagerThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformBPEL Process ManagerBPEL Process ManagerBPEL Process ManagerBPEL Process ManagerBPEL Process ManagerBPEL Process ManagerBPEL Process ManagerBPEL Process Manager
Peter Oosterlynck - Oracle Belgium 28
BPEL Process ManagerBPEL Process ManagerBPEL Process ManagerBPEL Process ManagerBPEL Process ManagerBPEL Process ManagerBPEL Process ManagerBPEL Process Manager
Services Orchestration
Peter Oosterlynck - Oracle Belgium 29
What is BPEL?What is BPEL?What is BPEL?What is BPEL?What is BPEL?What is BPEL?What is BPEL?What is BPEL?
SalesDB start
end
Router
Billing
Business Process Execution Language
Standardized markup language for composing a set of discrete services
into an end-to-end process flow
• Coordinate process flow (parallel,
switch, while, …)�
• Invoke (Web) services
• Expose a process flow as a Web
service
• Expose asynchronous services and
Receive asynchronous callbacks
• Copy and manipulate XML
Documents using XPATH, XSLT, …
• Manage events and exceptions
• Define compensation handlers
• Bind to SOAP but also JMS, JCA, …
Peter Oosterlynck - Oracle Belgium 30
BPELBPELBPELBPELBPELBPELBPELBPEL
A first glance at the BPEL Source code
Peter Oosterlynck - Oracle Belgium 31
A first glance at the A first glance at the A first glance at the A first glance at the A first glance at the A first glance at the A first glance at the A first glance at the BPEL Source codeBPEL Source codeBPEL Source codeBPEL Source codeBPEL Source codeBPEL Source codeBPEL Source codeBPEL Source code
Peter Oosterlynck - Oracle Belgium 32
A first glance at the A first glance at the A first glance at the A first glance at the A first glance at the A first glance at the A first glance at the A first glance at the BPEL Source codeBPEL Source codeBPEL Source codeBPEL Source codeBPEL Source codeBPEL Source codeBPEL Source codeBPEL Source code
Peter Oosterlynck - Oracle Belgium 33
Select Lowest Price
10:00am
Handle Negative
Credit Exception
Credit Service
start
end
BPEL Flow
?
Rapid Distributors SelectManufacturers
Get Rating
Send Order Info
Receive Price
03:00pm
Send Order Info
Receive Price
BPEL by ExampleBPEL by ExampleBPEL by ExampleBPEL by ExampleBPEL by ExampleBPEL by ExampleBPEL by ExampleBPEL by ExampleBPEL by ExampleBPEL by ExampleBPEL by ExampleBPEL by Example
BPEL Flow<process>
</process>
<switch>
<faultHandlers>
<receive>
<invoke>
<invoke><flow>
</flow>
<partnerLink>
<partnerLink> <partnerLink>
Peter Oosterlynck - Oracle Belgium 34
Oracle BPEL Process ManagerOracle BPEL Process ManagerOracle BPEL Process ManagerOracle BPEL Process ManagerOracle BPEL Process ManagerOracle BPEL Process ManagerOracle BPEL Process ManagerOracle BPEL Process ManagerOracle BPEL Process ManagerOracle BPEL Process ManagerOracle BPEL Process ManagerOracle BPEL Process Manager
BPEL Process Manager
Simplifying integration and delivering repeatable, 100% portable processes.
• Comprehensive and native
BPEL implementation
• Easy-to-use modeling tool
• Scalable and reliable engine
• Flexible binding framework
• Rich management and
monitoring
• App Server neutral
• Get up and running in less
than 15 minutes!
BPEL ConsoleMANAGE
Oracle Database
DEHYDRATE
Oracle DB
Eclipse, JDeveloper
BPEL Designer
BPEL
WSDL Binding
JCA
Web Service
JMS
Built-in Integration Services
XPath XSLT User
TasksBPELJ
Core BPEL Engine
J2EE Application Server
(WebLogic, Oracle AS, JBoss, WebSphere)
Peter Oosterlynck - Oracle Belgium 35
Core BPEL EngineCore BPEL EngineCore BPEL EngineCore BPEL EngineCore BPEL EngineCore BPEL EngineCore BPEL EngineCore BPEL EngineCore BPEL EngineCore BPEL EngineCore BPEL EngineCore BPEL Engine
BPEL Process Manager
Enterprise-strength infrastructure for deploying, executing and managing BPEL business processes.
• Comprehensive and native
BPEL 1.1 implementation
• Sync and async messaging
• Side-by-side versioning
• App Server neutral
• Context dehydration
Core BPEL Engine
J2EE Application Server
(WebLogic, Oracle AS, JBoss, WebSphere)
BPEL ConsoleMANAGE
Database
DEHYDRATE
Oracle DB
Eclipse, JDeveloper
BPEL Designer
BPEL
WSDL Binding
JCA
Web Service
JMS
Built-in Integration Services
XPath XSLT User
TasksBPELJ
Peter Oosterlynck - Oracle Belgium 36
Extensible Binding Framework Extensible Binding Framework Extensible Binding Framework Extensible Binding Framework (WSIF)(WSIF)(WSIF)(WSIF)Extensible Binding Framework Extensible Binding Framework Extensible Binding Framework Extensible Binding Framework Extensible Binding Framework Extensible Binding Framework Extensible Binding Framework Extensible Binding Framework (WSIF)(WSIF)(WSIF)(WSIF)(WSIF)(WSIF)(WSIF)(WSIF)
BPEL Process Manager
Integrate SOAP Web services but also EJB, JCA, JMS, POJO, … components
• Define custom WSDL bindings
• Implement custom WSIF
providers (custom data format,
custom protocols)
• Leverage JCA Adapters
• Oracle, SAP, Toplink, JMS,
FTP, …
• iWay, Atunity, Pervasive, …
Core BPEL Engine
J2EE Application Server
(WebLogic, Oracle AS, JBoss, WebSphere)
BPEL ConsoleMANAGE
Oracle Database
DEHYDRATE
Oracle DB
Eclipse, JDeveloper
BPEL Designer
BPEL
WSDL Binding
JCA
Web Service
JMS
Built-in Integration Services
XPath XSLT User
TasksBPELJ
Peter Oosterlynck - Oracle Belgium 37
Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Some of the Adapters Available for Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…Oracle SOA Suite…
Databases� Oracle 8i and above
� IBM DB/2 UDB
� Informix
� Clarion
� Clipper
� Cloudscape
� DBASE
� Dialog
� Essbase
� FOCUS Data Access
� Great Plains
� Microsoft SQL Server
� MUMPS (Digital Standard MUMPS)
� Navision Financials (ODBC 3.x)
� Nucleus
� Paradox
� Pointbase
� PROGRESS
� Red Brick
� RMS
� SAS Transport Format
� Sybase
� Teradata
� Unisys DMS 1100/2200
� UniVerse
Applications� Oracle Applications
� SAP R/3
� Peoplesoft
� JD Edwards
� Siebel
� Clarify
� Lotus Notes
� Ariba
� AXIOM mx/open
� Baan
� BroadVision
� Clarify
� Commerce One
� Hogan Financials
� i2 Technologies
� Lawson
� Livelink
� Manugistics
� Microsoft CRM
� Vantive
� Walker Interactive
� Remedy
� Salesforce.com
Technology� SOAP
� HTTP, HTTP-S
� Email – POP3, SMTP, IMAP
� FTP, FTP-S
� Flat File
� LDAP
� JMS
� Oracle AQ
� IBM MQSeries
� TIBCO Rendezvous
� Socket
Legacy� CICS
� IMS/DB
� IMS/TM
� VSAM
� ADABAS
� Natural
� Tuxedo
� CA-Datacom
� Screen Scraping
� CA-IDMS
� C-ISAM,D-ISAM,K-SAM,
QSAM
Peter Oosterlynck - Oracle Belgium 38
BuiltBuiltBuiltBuilt----in Integration Servicesin Integration Servicesin Integration Servicesin Integration ServicesBuiltBuiltBuiltBuiltBuiltBuiltBuiltBuilt--------in Integration Servicesin Integration Servicesin Integration Servicesin Integration Servicesin Integration Servicesin Integration Servicesin Integration Servicesin Integration Services
BPEL Process Manager
Common building blocks needed to design sophisticated BPEL business processes
• XSLT, Xpath, …
transformation and query
services
• Java integration/In-lining
• User task/workflow manager
Core BPEL Engine
J2EE Application Server
(WebLogic, Oracle AS, JBoss, WebSphere)
BPEL ConsoleMANAGE
Oracle Database
DEHYDRATE
Oracle DB
Eclipse, JDeveloper
BPEL Designer
BPEL
WSDL Binding
JCA
Web Service
JMS
Built-in Integration Services
XPath XSLT User
TasksBPELJ
Peter Oosterlynck - Oracle Belgium 39
Workflow as a ServiceWorkflow as a ServiceWorkflow as a ServiceWorkflow as a ServiceWorkflow as a ServiceWorkflow as a ServiceWorkflow as a ServiceWorkflow as a ServiceWorkflow as a ServiceWorkflow as a ServiceWorkflow as a ServiceWorkflow as a Service
Worklist
Assign Task
TaskComplete
Workflow Service
(1) assign tasks to a user/role
(2) wait for task completion as part of an end to end process flow
Update
Task
BPEL
Process
WSDL Contract
Peter Oosterlynck - Oracle Belgium 40
Human Workflow Features Human Workflow Features Human Workflow Features Human Workflow Features Human Workflow Features Human Workflow Features Human Workflow Features Human Workflow Features Human Workflow Features Human Workflow Features Human Workflow Features Human Workflow Features
Task assignment to
Users, roles, groups
Task routing –
various flow patterns and
assignment rules
Notification to users/groups -
Email, Voice, Pager, SMS …Escalation and
Delegation rules
Task History and Audit,
Productivity Reports
Customizable Worklist,
Task forms, attachments
Peter Oosterlynck - Oracle Belgium 41
User Task/Workflow ManagerUser Task/Workflow ManagerUser Task/Workflow ManagerUser Task/Workflow ManagerUser Task/Workflow ManagerUser Task/Workflow ManagerUser Task/Workflow ManagerUser Task/Workflow ManagerUser Task/Workflow ManagerUser Task/Workflow ManagerUser Task/Workflow ManagerUser Task/Workflow Manager
Peter Oosterlynck - Oracle Belgium 42
Designer EditorsDesigner EditorsDesigner EditorsDesigner EditorsDesigner EditorsDesigner EditorsDesigner EditorsDesigner Editors
Peter Oosterlynck - Oracle Belgium 43
Apps
AdaptersAdapters B2BB2B
PartnersDB Legacy
CONNECTIVITY
Routing Transform DataQuality
ETL &Replication
Data IntegratorData IntegratorOracle Service BusOracle Service Bus
SOA Agility
ROUTING & DATA SERVICES
NativeBPEL
Business Rules
Human Workflow
BPEL Process ManagerBPEL Process Manager
ORCHESTRATION
Coherence Cache
J2EE Application Server(Oracle AS, WebLogic, WebSphere, JBoss)
Messaging
GOVERNANCESystem
Monitoring
Enterprise Enterprise ManagerManager
UDDI
WS PoliciesSecurity
Web Services Web Services ManagerManager
RegistryRegistry
GOVERNANCE
SOA lifecyclegovernance
EnterpriseEnterpriseRepositoryRepository
JRockit VM & RT
Oracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event TechnologiesOracle SOA and Event Technologies
Peter Oosterlynck - Oracle Belgium 44
Governance : Some definitionsGovernance : Some definitionsGovernance : Some definitionsGovernance : Some definitionsGovernance : Some definitionsGovernance : Some definitionsGovernance : Some definitionsGovernance : Some definitionsGovernance : Some definitionsGovernance : Some definitionsGovernance : Some definitionsGovernance : Some definitions
� Governance
� Latin origins: suggest the notion of “steering” as opposed to the traditional "top-down" approach of "driving" a society or an organization.
� “a decision process that defines expectations, grants power, or verifies performance.”
� “… develops and manages consistent, cohesive policies, processes and decision-rights for a given area of responsibility.”
� Corporate Governance
� “the set of processes, customs, policies, laws and institutions affecting the way in which a corporation is directed, administered or controlled.”
� SOA Governance
� “… is a concept used for activities related to exercising control over services in a SOA”
Source wikipedia
Peter Oosterlynck - Oracle Belgium 45
SOA GovernanceSOA GovernanceSOA GovernanceSOA GovernanceSOA GovernanceSOA GovernanceSOA GovernanceSOA GovernanceSOA GovernanceSOA GovernanceSOA GovernanceSOA Governance
� No one single nicely confined definition.
� In essence: “a framework that blends the flexibility of SOA with the control and predictability of a traditional IT architecture”*
� Usually includes:
� Lifecycle management
� Policy management
� Contract management
� Metadata management
� No one single solution
� Need for a suite of integrated tools.
* Source SOA World Magazine
Peter Oosterlynck - Oracle Belgium 46
Apps
AdaptersAdapters B2BB2B
PartnersDB Legacy
CONNECTIVITY
Routing Transform DataQuality
ETL &Replication
Data IntegratorData IntegratorOracle Service BusOracle Service Bus
SOA Agility
ROUTING & DATA SERVICES
NativeBPEL
Business Rules
Human Workflow
BPEL Process ManagerBPEL Process Manager
ORCHESTRATION
Coherence Cache
J2EE Application Server(Oracle AS, WebLogic, WebSphere, JBoss)
Messaging
GOVERNANCESystem
Monitoring
Enterprise Enterprise ManagerManager
UDDI
WS PoliciesSecurity
Web Services Web Services ManagerManager
RegistryRegistry
GOVERNANCE
SOA lifecyclegovernance
EnterpriseEnterpriseRepositoryRepository
JRockit VM & RT
REAL-TIMEVISIBILITY
& PROCESSING AlertsBusiness Monitoring
BAMBAM
EventsData Streams
CEPCEP
The Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformREALREALREALREAL----TIME VISIBILITY & PROCESSINGTIME VISIBILITY & PROCESSINGTIME VISIBILITY & PROCESSINGTIME VISIBILITY & PROCESSINGThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformREALREALREALREALREALREALREALREAL--------TIME VISIBILITY & PROCESSINGTIME VISIBILITY & PROCESSINGTIME VISIBILITY & PROCESSINGTIME VISIBILITY & PROCESSINGTIME VISIBILITY & PROCESSINGTIME VISIBILITY & PROCESSINGTIME VISIBILITY & PROCESSINGTIME VISIBILITY & PROCESSING
Peter Oosterlynck - Oracle Belgium 47
Apps
AdaptersAdapters B2BB2B
PartnersDB Legacy
CONNECTIVITY
Routing Transform DataQuality
ETL &Replication
Data IntegratorData IntegratorOracle Service BusOracle Service Bus
SOA Agility
ROUTING & DATA SERVICES
NativeBPEL
Business Rules
Human Workflow
BPEL Process ManagerBPEL Process Manager
ORCHESTRATION
Coherence Cache
J2EE Application Server(Oracle AS, WebLogic, WebSphere, JBoss)
Messaging
GOVERNANCESystem
Monitoring
Enterprise Enterprise ManagerManager
UDDI
WS PoliciesSecurity
Web Services Web Services ManagerManager
RegistryRegistry
GOVERNANCE
SOA lifecyclegovernance
EnterpriseEnterpriseRepositoryRepository
JRockit VM & RT
REAL-TIMEVISIBILITY
& PROCESSING AlertsBusiness Monitoring
BAMBAM
EventsData Streams
CEPCEP
ApplicationDevelopmentFramework
EnterpriseModeling
BPA SuiteBPA Suite
JDeveloperJDeveloper
Business UserModeling
BPM SuiteBPM Suite
The Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA Platform
Peter Oosterlynck - Oracle Belgium 48
Apps
AdaptersAdapters B2BB2B
PartnersDB Legacy
CONNECTIVITY
Routing Transform Data
Quality
ETL &Replication
Data IntegratorData IntegratorOracle Service BusOracle Service Bus
Mediation
ROUTING & DATA SERVICES
Native
BPEL
Business
Rules
Human
Workflow
BPEL Process ManagerBPEL Process Manager
ORCHESTRATION
Coherence Cache
J2EE Application Server(Oracle AS, WebLogic, WebSphere, JBoss)
Messaging
GOVERNANCESystem
Monitoring
Enterprise Enterprise ManagerManager
UDDI
WS PoliciesSecurity
Web Web Services Services ManagerManager
RegistryRegistry
GOVERNANCE
SOA lifecyclegovernance
EnterpriseEnterpriseRepositoryRepository
JRockit VM & RT
REAL-TIMEVISIBILITY
& PROCESSING AlertsBusiness Monitoring
BAMBAM
Events
Data Streams
CEPCEP
ApplicationDevelopment
Framework
Enterprise
Modeling
BPA SuiteBPA Suite
JDeveloperJDeveloper
Business User
Modeling
BPM SuiteBPM Suite
The Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformThe Oracle SOA PlatformModeling and DevelopmentModeling and DevelopmentModeling and DevelopmentModeling and DevelopmentModeling and DevelopmentModeling and DevelopmentModeling and DevelopmentModeling and Development
Peter Oosterlynck - Oracle Belgium 49
The BPM LifecycleThe BPM LifecycleThe BPM LifecycleThe BPM LifecycleThe BPM LifecycleThe BPM LifecycleThe BPM LifecycleThe BPM Lifecycle
BPM is about
� Process Modeling, Execution and Management
� Continuous Process Improvement
� Business and IT working together to achieve business objectives
� Making IT more responsive to changing business needs and conditions
BPM is about
� Process Modeling, Execution and Management
� Continuous Process Improvement
� Business and IT working together to achieve business objectives
� Making IT more responsive to changing business needs and conditions
Model
Simulate
Implement
Deploy
Execute
Monitor
Optimize
BPM
Lifecycle
Business Process
Analysis (BPA)
Peter Oosterlynck - Oracle Belgium 50
Organization BPM
Entry Model
Business Process Modeling & AnalysisBusiness Process Modeling & AnalysisBusiness Process Modeling & AnalysisBusiness Process Modeling & AnalysisBusiness Process Modeling & AnalysisBusiness Process Modeling & AnalysisBusiness Process Modeling & AnalysisBusiness Process Modeling & Analysis
Organization
Processes
Overview
Service-Oriented
Process Model
Process Simulation
Peter Oosterlynck - Oracle Belgium 51
Business Process Modeling (contd..)Business Process Modeling (contd..)Business Process Modeling (contd..)Business Process Modeling (contd..)ABusiness Process Modeling (contd..)Business Process Modeling (contd..)Business Process Modeling (contd..)Business Process Modeling (contd..)A
Detailed Business Process Modeled with Oracle BPA Method
Peter Oosterlynck - Oracle Belgium 52
Technical
Modeling
Oracle Process Designer (BPEL)
Business
Modeling
Oracle BPA Suite (EPC, BPMN)
Conceptual Model
Executable
Model
Logical
Design
Metadata
Model
Shared
Metadata
Key Underpinnings of our Integration Key Underpinnings of our Integration Key Underpinnings of our Integration Key Underpinnings of our Integration Key Underpinnings of our Integration Key Underpinnings of our Integration Key Underpinnings of our Integration Key Underpinnings of our Integration Approach Business and Technical Modeling AlignmentApproach Business and Technical Modeling AlignmentApproach Business and Technical Modeling AlignmentApproach Business and Technical Modeling AlignmentApproach Business and Technical Modeling AlignmentApproach Business and Technical Modeling AlignmentApproach Business and Technical Modeling AlignmentApproach Business and Technical Modeling Alignment
Peter Oosterlynck - Oracle Belgium 53
What is SCA?What is SCA?What is SCA?What is SCA?What is SCA?What is SCA?What is SCA?What is SCA?
� Service Component Architecture:
� language-neutral
�component model
�assembly model
� Specifications backed by a growing number of leading industry vendors
SCA terminology:
� Composite: deployment unit
� Service: entry-point into composite
� Component: provides logic
� Reference: refers to external services
� Wire: connects services, components and references – no special semantic.
C1
C2
wire
component
composite
service
reference
S
R
S S
R
R
properties
Java interface
WSDL portType
Binding:
SOAP
JMS
JCS
…
Peter Oosterlynck - Oracle Belgium 54
SOA CompositeSOA CompositeSOA CompositeSOA CompositeSOA CompositeSOA CompositeSOA CompositeSOA Composite
� SOA composite is a standards-based deployment unit
� Leverages the SCA assembly model
� Can mix variety of components: ESB routing (Mediator), BPEL, Human Workflow, etc.
Mediator
BPEL
wire
SOA composite
service reference
S S
R
R
properties
BPEL
WS
WS
WSR
S
S
R
R
R
� Unit testingof composites (wires, components)
� Side-by-side versioningof composites
� JSR-88 deployment plansfor composites
Peter Oosterlynck - Oracle Belgium 55
11g SCA Composite Editor11g SCA Composite Editor11g SCA Composite Editor11g SCA Composite Editor11g SCA Composite Editor11g SCA Composite Editor11g SCA Composite Editor11g SCA Composite Editor
SCA Composite Editor
Mediation
BPEL orchestration
Business Rules
Human Tasks
Web servicesand adapters
Mediation
Peter Oosterlynck - Oracle Belgium 56
SDOADF BC
Service Oriented ArchitectureService Oriented ArchitectureService Oriented ArchitectureService Oriented ArchitectureService Oriented ArchitectureService Oriented ArchitectureService Oriented ArchitectureService Oriented ArchitectureComposite ApplicationsComposite ApplicationsComposite ApplicationsComposite ApplicationsComposite ApplicationsComposite ApplicationsComposite ApplicationsComposite Applications
OptimizedService & Eventing
Infrastructure
Service Infrastructure
Policy Manager
Policy Management
JCAETLB2B
Common Connectivity Infrastructure
…
…SOAP
Pluggable Service Engines
Rules BPELHuman
Task
SCA Composite
SOA Composite Editor
BPEL
HumanTask
RulesMediation
BPEL orchestration
Business Rules
Human Tasks
Web services
and adapters
Mediation