Bringing system to the Oracle SOA toolbox

Hajo Normann, EDS Torsten Winterberg, OPITZ CONSULTING GmbH

SOA Werkzeuge SIG SOA Agenda

• Oracle SOA Strategy • Reference architectures, SOA Blueprint • Oracle SOA toolbox • Tools in specific contexts

Oracle SOA toolbox SIG SOA 2 About us…

Torsten Winterberg [email protected]

 Divisional Director Application Engineering at OPITZ CONSULTING  Oracle Ace Director  Speaker on several IT conferences: Jax, W-Jax, OOP, DOAG, …  Author of several SOA/BPM related articles  Head of SOA Special Interest Group (SIG) of the German Oracle User Group (DOAG) together with Hajo Normann  Member of Oracle SOA Customer Advisory Board (SOA CAB)  Member of Advisory Board of Jax and W-Jax  Foundation Member of the „Masons of SOA“  Java EE developer, coach and architect  Started with first Oracle BPEL PM project in 2004

Oracle SOA toolbox SIG SOA 3 About us…

Hajo Normann [email protected]

SOA/BPM Architect at EDS, an HP company

Oracle ACE Director

Speaker on several IT conferences: Jax, W-Jax, OOP

Author of several SOA/BPM related articles

Together with Torsten Winterberg Head of SOA Special Interest Group (SIG) of the German Oracle User Group (DOAG) Foundation Member of the „Masons of SOA“

Started with first Oracle BPEL PM project in 2004;

Direct link to Oracle HQ: Regularly meet and exchange thoughts on BPM and SOA at Oracle HQ

Aim for JOINT SUCCESS through partnership

Oracle SOA toolbox SIG SOA 4 1 Oracle SOA Strategy

Oracle SOA toolbox SIG SOA 5 Some Oracle SOA Tools…

Weblogic Workshop LiquidVM ODI Coherence Oracle Enterprise Pack for Eclipse (OEPE) Stellent Oracle Enterprise Service Bus Service Registry SOA Suite Human Workflow IDM Suite WebService Manager Oracle Service Bus (ALSB) B2B Service Repository Business Rules UCM BPA Suite WebCenter JDeveloper Enterprise Manager BAM Weblogic Server BPEL PM Oracle BPM AIA JRockit CEP Oracle Application Server

Oracle SOA toolbox SIG SOA 6 Statements from OpenWorld 2008:

• Good progress of BEA integration into Oracle SOA stack • „best-in-class‟ SOA infrastructure (Oracle WebLogic Server, Oracle WebLogic Application Grid, Oracle Business Process Management, Oracle WebCenter Suite) • ‚enhanced SOA Suite„ (new elements; all-in-one SOA starter kit) • Extension of „pre-built SOA-based integrations“ as part of AIA initiative • Continuous SOA Investments: – In the area of Composite WebServices – For E-Business Suite and the other Business Applications – Adherence of SOA-based design- und development principles for the „next-generation Fusion applications“

Oracle SOA toolbox SIG SOA 7 What about the Oracle SOA Strategy?

• Modularity is good in SOA technology, but is not so good in SOA messaging

• Oracle should have inherited some of BEA‟s focus on SOA along with BEA‟s SOA technology

• Oracle has plenty of SOA-related work underway, and can claim parity and even superiority to IBM on many SOA fronts

• What Oracle has yet to demonstrate or articulate, however, is a consistent and over-arching SOA message or approach to this market.

Oracle SOA toolbox SIG SOA 8 2 SOA Blueprint

Oracle SOA toolbox SIG SOA 9 Reference architectures

• Reference architecture = Desired ideal of achievable IT landscape (beacon on the horizon) • Way to implement a reference architecture is long: – (external) influences cause nessecary variations • Chief architects: stay on path, adjustment of implementation – Constant checking and adjustment nessecary to prevent SOA spaghetti mess – Not only for the duration of one project, but for the whole SOA transformation

Oracle SOA toolbox SIG SOA 10 Vision: Adaptive Enterprise Computing

Oracle SOA toolbox SIG SOA 11 SOA Blueprint

Oracle SOA toolbox SIG SOA 12 Another „AIA“: Accidental Integration Architecture

Oracle SOA toolbox SIG SOA 13 Bringing system to the toolbox

• The best filled toolbox doesn„t guarantee optimal solutions • Mission of the architect is to bring system to the toolbox • Each tool must be perfectly known for its function and area of application: – Which tool is used best for which area of application? – Which tools optimal play together in sense of SOA Blueprint – Will the reference architecture be broken? – Which combinations hold difficulties or redundancies? • Outcome of complex projects depends highly on the experience and qualities of the responsible architect

Oracle SOA toolbox SIG SOA 14 3 Oracle SOA toolbox

Oracle SOA toolbox SIG SOA 15 Evolution of Oracle SOA Suite

Oracle SOA toolbox SIG SOA 16 Emergence of Service Platforms SERVICE PLATFORM

• Integrated for ease-of-use 11g & optimized performances • Yet, fully standards-compliant • No sacrifice on hot-pluggability

SCA 10.1.3 BPEL ESB 10.1.2 Web Services WSDL XSLT J2EE XML EAI Messaging CORBA

Oracle SOA toolbox SIG SOA 17 Oracle SOA and Event Technologies

BPA Suite BAM CEPGOVERNANCE Enterprise REAL-TIME Manager VISIBILITY & PROCESSINGEnterprise Alerts Events System GOVERNANCE Modeling Business MonitoringORCHESTRATIONData Streams Monitoring

BPM Suite BPEL Process Manager Web Services Manager Native Business Human Business User WS Policies Modeling BPELROUTING &Rules DATA SERVICESWorkflow Security

JDeveloper Oracle Service Bus Data Integrator Enterprise Repository Application Routing Transform ETL & Data Development Replication Quality SOA lifecycle Framework MediationCONNECTIVITY governance

Adapters B2B Registry Apps DB Legacy Partners UDDI

Coherence Cache Messaging J2EE Application Server JRockit VM & RT (Oracle AS, WebLogic, WebSphere, JBoss)

Oracle SOA toolbox SIG SOA 18 The new BPM story

Oracle SOA toolbox SIG SOA 19 Oracle BPM BPA • Process Experts • Six Sigma, Lean • Methodology Rigorous • Hierarchical Modeling • Documentation Modeling BPM • Business user friendly • Human centric • Collaborative • Frequent process Business BPM changes BPEL PM • SOA architecture IT BPM • Apps integration, AIA and • BPEL Service Orchestration • High performance STP • Round-tripping with BPA

Oracle20 SOA toolbox SIG SOA 20 Oracle BPM Product Architecture – 10g

Screen Org Workspace XPDL Flows Model BPM Server Process BPM Studio (XPDL) Dashboards

MS Office

Worklist Human BPEL Rules WF

BPA Process BPM Server BAM Architect (ARIS) (BPEL) JDeveloper MS Office

Oracle SOA toolbox SIG SOA 21 Oracle BPM Product Architecture – Roadmap

BPMN Process Worklist Process Portal MS Office BAM BPA Process blueprint Architect (ARIS) (optional step)

BPEL, BPEL4People BPMN 2.0 Rules Business View (Human WF) XPDL, BPMN 2.0, / XPDL BPEL SCA BPM Server BPM Studio (with Biz and IT view)

• BPM Studio: Integrated process, workflow, rules, and forms designer; includes simulation • BPM Server: Integrated process engine supporting BPEL, XPDL/BPMN 2.0 and Human WF based on BPEL4People • BPM Worklist: ADF Worklist application • BPA Suite Addresses rich analysis and modeling requirements (e.g. Six Sigma, Lean, documentation-only modeling, etc)

Oracle SOA toolbox SIG SOA 22 The new ESB story

Oracle SOA toolbox SIG SOA 23 ESB Roadmap

“100-day” release 10g update 11g

3.1 OSB 11gR1 (AquaLogic Service Bus)

SOA 11g Service Infrastructure mediator

OESB upgrade to mediator (path already in place today) 10g 10.1.3.5

Objectives: • Provide all Oracle and BEA customers with a seamless upgrade path • Use Oracle Service Bus as the vehicle to deliver new ESB features • Use OESB in hot-pluggable environments, for mediation and internal apps AIA use cases

Oracle SOA toolbox SIG SOA 24 Benefits of the Service Infrastructure • Performances (minimum marshalling/unmarshalling) • Global policies • Coherence for dehydration • Infrastructure features made available to all components • Side-by-side versioning model across suite • Unified Tracking and Logging

Human Mediator BPEL Task Policy Enforcement Policy Manager Point 3 4 5 Service Infrastructure Conversion to Normalized 2 Message No conversion SOAP

1 HTTP/SOAP message

Oracle SOA toolbox SIG SOA 25 4 Tools in specific contexts

Oracle SOA toolbox SIG SOA 26 Things BPM

Local Workflow/EAI projects vs. Enterprise Level BPM/SOA

27 / 19. Sept. 2008/ Nature of many „BPM“ projects: Workflow, almost no business services

Directly implemented as workflow tasks, not as SOA Business Services

Directly implemented database adapter, not as SOA Business Service

Oracle SOA toolbox SIG SOA 28 Nature of many projects: Organizational context local; rather workflow than BPM

Fulfillment SAP-CRM Billing

Silo specific functionality

Redundant functionality

Internal processes (task driven, no interaction with other silos)

Oracle SOA toolbox SIG SOA 29 .. as compared to cross silo end to end processes: Enterprise level (or at least domain level) BPM/SOA

SILO 1 SILO 2 SILO 3

Shared Services

Oracle SOA toolbox SIG SOA 30 Local Workflow/EAI projects vs. Enterprise Level BPM/SOA Enterprise BPM

-Addresses otimizations the way the organization interacts with customer and homogenizes inner procedures - Uncontrolled environment: Information is spread over departments, you need stroing governance to know how to retrieve information or change something

Local project, remaining in siloes

-Addresses otimizations of human interactions with systems in one department - Controlled environment: You go to the developer next door or look in well known known log files when investigating something

These differefferent contexts have impacts on the feasible tools and their usage!

Oracle SOA toolbox SIG SOA 31 The impact of context on tools: Local Workflow Projects using „SOA/BPM Technology“

Pure BPMN is sufficient -> BPM Suite (Ex-Fuego) rather than BPA Suite

No UDDI is necessary for data stewardship

Business Rule Engine not justified, some developers might play No UDDI and ESB necessary for with it. service virtualization and reuse

Oracle SOA toolbox SIG SOA 32 The impact of context on tools: Enterprise Level BPM

Pure BPMN is not sufficient, BPMN is embedded process hirarchies and in other larger scopedEA models -> BPA Suite

UDDI and ESB necessary for service virtualization and reuse

UDDI- >is necessary for data stewardship, ESB for complex transformations -> Oracle misses semantical type definition and mapping tool

Business Rule Engine justified for central place to define and investigate important business rules

Oracle SOA toolbox SIG SOA 33 ESB in Context

Where to put my Routing and Integration Logic??

ESB Puzzles and Answers for SOA Suite 11 with and without new “Oracle ESB” (Ex- BEA ALSB)

34 / 19. Sept. 2008/ A loosely coupled design for a SOA Business Service based on AIA

Design Time enables analysts and developers to Enterprise Business find services and its meta data (XML Flow (EBF) “A” schema etc.) Based on process Service Registry Runtime model in BPA Suite resolves endpoint URLs and executable in BPEL

Application Business Var 1 What is location URL of „A“? Connector Services (ABCS): Var 2 ESB based adapter ESB based implementation service for „Peoplesoft“ Peoplesoft for Business Service (EBS) A“

ABCS for „SIEBEL“ SIEBEL

Stateful orchestration Keep no state (no Complex enrichment variables) Routing (if it depends Call services along a chain on variable, not Simple enrichment Handles Mediation message content) do routing (if it depends on (Syntactic transformation message content) from / to canonical model) Calls endpoint

Oracle SOA toolbox SIG SOA 35 An AIA based business service in “11 Classic” BPEL based Business Process fulfill Order Service Registry WSDL (UDDI)

Adapter Stateful Stateless integration Service „ ABCS X“ Activity Service „EBF fO“ Process „ EBS fO” Orchestrates; System X decides on implementation Mediator

Adapter Service „ ABCS Y“ Var 1 Var 2 Mediator System Y Mediator if Var 1 > 100.000 else Stateful Workflow „fullfillOrder“

Service D

BPEL BPEL

SCA Composite “fulfill Order”

Oracle SOA toolbox SIG SOA 36 Well – now this is the advice we got at Oracle HQ: fulfill Order Service Registry BPEL WSDL (UDDI) Oracle ESB (Ex-BEA-ALSB)

Now, where did my nice Fabric with all the beauty of SCA go?

After all, this was at the core of Thomas Kurian„s story of 11 that watered our mouths since two years, wasn„t it?

After many discussions at OOW, we came up with this ...

Oracle SOA toolbox SIG SOA 37 A business service implementation in “11 plus new ESB” fulfill Order Service Registry BPEL WSDL (UDDI) Oracle ESB: Entry Point and data- and implementation virtualization for “fulfill Order”

Adapter Stateless integration Service „ ABCS X“ Stateful Process „ EBS A” Activity Service „EBF A“ System X Orchestrates; decides on implementation Adapter Service „ ABCS Y“ System Y Var 1 Var 2 Oracle ESB

if Var 1 > 100.000 else Stateful Workflow

Service D

BPEL BPEL

Oracle SOA toolbox SIG SOA SCA Composite “A” 38 A business service implementation in “11 plus new ESB” fulfill Order Service Registry BPEL WSDL (UDDI)

Data: Translates to Oracle ESB: canonical data Entry Point and data- and implementation model virtualization for “fulfill Order”

Adapter Stateless integration Service „ ABCS X“ Stateful Process „ EBS A” Activity Service „EBF A“ System X Orchestrates; decides on implementation Adapter Service „ ABCS Y“ System Y Var 1 Var 2 Data: Translates to local dialects Oracle ESB

if Var 1 > 100.000 else Stateful Workflow

Service D

BPEL BPEL Data: Deals purely with canonical format Oracle SOA toolbox SIG SOA SCA Composite “A” 39 A business service implementation in “11 plus new ESB”

Assessment

Pro: • More mature, richer ESB features: Variables, XQuery-Editor • Better separation of concerns: Separate integration logic from business composites

Contra (as for first realease of 11, might resolved when integrated): • Adds confusion, unclearer desings • Different IDEs and runtime Oracle ESB not integrated in JDeveloper

Oracle SOA toolbox SIG SOA 40 Tradeoff: Routing logic in the business service ...

BPEL based Business Process fulfill Order Service Registry WSDL (UDDI)

Stateful Adapter Activity Service „EBF fO“ Integration Process Service „ ABCS X“ Orchestrates; “fulfillOrderAsIntegrationProcess” decides on implementation System X

Adapter Service „ ABCS Y“ Var 1 Var 2 System Y

Stateful Workflow if Var 1 > 100.000 else „fulfill Order as Workflow“

Service D BPEL

SCA Composite “fulfill Order”

Oracle SOA toolbox SIG SOA 41 Tradeoff: Routing logic in the business service - the beauty of loose coupling: Change the implementation does not change the process (stable as longs as WSDL stays stable) BPEL based Business Process fulfill Order Service Registry (UDDI) WSDL WSDL

Stateful Implementation Activity Service „EBF fO“ as Rule decides on implementation

Var 1 Var 2

if Var 1 > 100.000 else

Rule Service

BPEL SCA Composite “fulfill Order”

Service “fullfillOrder“ from Partner Company

Oracle SOA toolbox SIG SOA 42 Tradeoff: Routing logic in the business service Let’s take a look how we could move the decision on implementation from within the service -> up to the business process (next slide) BPEL based Business Process fulfill Order Service Registry WSDL (UDDI)

Stateful Adapter Activity Service „EBF fO“ Integration Process Service „ ABCS X“ Orchestrates; “fulfillOrderAsIntegrationProcess” decides on implementation System X

Adapter Service „ ABCS Y“ Var 1 Var 2 System Y

Stateful Workflow if Var 1 > 100.000 else „fulfill Order as Workflow“

Service D BPEL

SCA Composite “fulfill Order”

Oracle SOA toolbox SIG SOA 43 Decision on implementation at Process Level (preferred when decision rule is business relevant)

BPEL based Business Process if Var 1 > 100.000 fulfill Order as Workflow

else fulfill Order as Internal Integration Process

Adapter Integration Process Service „ ABCS X“ “fulfillOrderAsIntegrationProcess” System X

Adapter Service „ ABCS Y“ System Y

Stateful Workflow „fulfill Order as Workflow“ Pro: Business relevant decision in Process Model

Service D Con: Tighter coupling between process step and implementation (a bit “Anti-SOA”)

Oracle SOA toolbox SIG SOA 44 Orchestration in three years: Will BPEL survive?

Oracle SOA toolbox SIG SOA 45 Usages of BPEL today: Business Process, Workflow, Integration Process fulfill Order Model: BPMN (e.g. in BPA Suite); Executable: BPEL

Adapter Stateful Stateless integration Service „ ABCS X“ Activity Service „EBF fO“ Process „ EBS fO” Orchestrates; decides on implementation Adapter Service „ ABCS Y“

Var 1 Var 2 Stateless Integration pipes: Not BPEL; BPEL if statefull

if Var 1 > 100.000 else Stateful Workflow „fullfillOrder“

Service D

Complex Integration Logic: BPEL Workflow: BPEL

Oracle SOA toolbox SIG SOA 46 The future of BPEL

fulfill Order Model: BPMN 2.0; Executable: BPMN 2.0

Stateless Integration pipes: Oracle ESB: non BPEL-based EAI flow Entry Point for “fulfill Order ”

Adapter Stateless integration Service „ ABCS X“ Stateful Process „ EBS fO” Activity Service „EBF A“ Orchestrates; decides on implementation Adapter Service „ ABCS Y“

Var 1 Var 2 Integration pipes: non BPEL- based EAI flow Oracle ESB

if Var 1 > 100.000 else Stateful Workflow

Service D

Complex Integration Logic: Workflow: BPMN 2.0 BPEL - or non BPEL based EAI flow in Oracle ESB Oracle SOA toolbox SIG SOA SCA 47 Securing SOA Composites: The Policy Manager • Clearly separates process logic from security concerns Human Mediator BPEL • Secures endpoints Task • Sets and propagate Policy Manager identity 2 3 4

Service Infrastructure Service Component Interceptors: • Authorization

SOAP SOAP Web Service Interceptor: • User token insertion (such 1 5 as SAML) Web Service Interceptor: • Integrity & Confidentiality • Authentication (signatures, • Authorization encryption/decryption) • Integrity & Confidentiality (signatures, encryption/decryption) OPS4J • Publish security HTTP/SOAP HTTP/SOAP requirements as WS-Policy message message in WSDL SSO (Oracle Access Manager)

File LDAP DB

Oracle SOA toolbox SIG SOA 48 5 Conclusion

Oracle SOA toolbox SIG SOA 49 Conclusion

• Oracle has a best-in-class SOA toolbox… • …just needs a better, holistic SOA strategy communication • Adhere to the SOA Blueprint! • Know your toolbox very well! • Know the right tool for the right context! • Don„t get stuck in one learned solution, investigate the tradeoffs!

Oracle SOA toolbox SIG SOA 50 Questions…?

Torsten Winterberg Hajo Normann Dipl.-Ing. / Dipl.-Wirt.-Ing.(FH) EDS: SOA Architect @ SOA Business & Integration Consulting; Divisioinal Director – Oracle ACE Director Member of BPM Community Steering Committee; Top Gun Alumni Oracle: Oracle ACE Director; Leader DOAG SIG SOA OPITZ CONSULTING GmbH EDS Operations Services GmbH Kirchstr. 6 - 51647 Gummersbach EDS OperationsEisenstrasse Services56 - GmbH65428 Rüsselsheim , Germany Phone +49(0)2261/6001-0 - Fax -4200 - Mobile +49(0)173/5479302 Phone/Mobil: +49 1520 1655028 [email protected] [email protected] - www.opitz-consulting.de Web: www.eds.com

Oracle SOA toolbox SIG SOA 51