www.opitz-consulting.com
Danilo Schmiedel, OPITZ CONSULTING Technical Consultant & Andrejus Baranovskis, Red Samurai Consulting CEO and Architect held this session at Oracle Open World in San Francisco 2012
--
About us
OPITZ CONSULTING is a leading project specialist for custom-build applications and individual business intelligence solutions in the German market. The company's ambition is to help organizations to be better than their competitors. To achieve this OPITZ CONSULTING analyses the individual competitive edge the customer has, optimizes business processes for process automation and IT-support, chooses and designs appropriate system architectures, develops and implements solutions and guarantees a 24/7 support and application maintenance. To ensure the necessary skill and qualification OPITZ CONSULTING has established a training center for customers and the internal staff.
Since 1990 over 600 customers have a long lasting and successful business relationship with OPITZ CONSULTING. Over 2/3 of the German stock index (DAX) companies rely on services from the 400+ OPITZ CONSULTING consultants. OPITZ CONSULTING maintains offices in Bad Homburg, Berlin, Essen, Gummersbach, Hamburg, Munich, Nuremberg and Kraków (Poland).
About us: http://www.opitz-consulting.com/en/about_us
Services: http://www.opitz-consulting.com/en/leistungsangebot
Career: http://www.opitz-consulting.com/en/career
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
Oracle BPM / Oracle ADF Integration - Best Practices | Oracle Open World 2012
1. Oracle BPM /
Oracle ADF
Integration Best
Practices
Andrejus Baranovskis
CEO & Architect, Red Samurai Consulting
Oracle ACE Director
Danilo Schmiedel
Technical Consultant, Opitz Consulting GmbH
2. ADF, SOA , BPM, WebCenter Oracle Fusion Middleware
and UCM Innovation Award 2010
Small Team of Experts, SOA Partner Community
Focused on Technical Quality Award for Outstanding
Results Contribution Across the
World 2010
Customers – Global
Corporations, Medium and 2010 Enterprise 2.0 Blazer:
Small Business Enterprise 2.0 Leader Award
Oracle Technical Blog – 7
Years (~500 posts)
3. OPITZ CONSULTING GmbH
Founded in 1990, located in Germany and
Poland
Business IT Alignment, BPM, SOA and
system integration, Application
development, IT Infrastructure Management
Specialized in SOA, BPM, ADF &
Application Grid
Also specialized in Exadata, Business
Intelligence Foundation, Oracle Database,
Oracle Enterprise Linux, Real Application
Cluster, Oracle VM, Data Warehousing,
DB11g Performance Tuning
2010 Oracle Fusion Middleware Award
2008 – 2010 EMEA SOA Community Award
4. BPM/ADF Integration Points
Reuse of BPM Components
ADF/BPM Generic Task Handler
Decoupling Business Data
Complexity and Architecture
Outline Process Replay
Oracle BPM/ADF Integration
Share Artifacts with MDS
Customize BPM Workspace with
ADF
5. BPM/ADF Integration Points
ADF UI ADF UI
Custom ADF App
BPM Workspace App
Imports BPM Workspace JAR
BPM Human Task Process
6. Some of our challenges…
Complexity
Long-running end-to-end processes
Approx. 20 Human Tasks per process + automated service calls
Infrastructure with more than 750 Managed Servers in Production
300.000 calculated end-to-end process instances per year
Flexibility
Configurable through Business Rules, DVMs, …
Process migration because of environment changes and
new product releases are necessary
Top-down approach (contract-first)
Integration
Custom-defined user task forms that fit into existing
implementations and future plans
7. Component
View
Locking and
Validation Preparation Finish
Coordination
Staffing
Validate cancelled
Staffing Business Process
Application Continue? Setup
Workplace
Start
Process
Finish
Staffing
yes Staffing
no processed
Check Staffing Setup
Approve Staffing
Dependencies Accounts
Dependency
exists?
Approver A
Create Dynamic Perform
operating Approver Approval
sequence Determination Steps
Start Approval
Continue Cancel Staffing
Approval finished Staffing event event
Approver B
Perform
Approval
Steps
Approver X
8. Challenges and what it means (1)?
Complexity
Long-running end-to-end processes
Approx. 20 Human Tasks per process + automated service calls
Infrastructure with more than 750 Managed Servers in Production
300.000 calculated end-to-end process instances per year
Following the BPM Suite standard approach for
Flexibility
approx.15 processes:
Configurable through Business Rules, DVMs, …
several SCA projects because of environment changes and
Process migration
new product releases are necessary
more than 300 task definition files
more than 300 single ADF-UI projects
Top-down approach (contract-first)
Integration
Versioning? Maintenance? Migration?
Custom-defined user task forms that fit into existing
implementations and future plans
9. Cancel Staffing Continue
event Staffing event
Staffing
Validate cancelled
Staffing Business Process
Application Continue? Setup
Workplace
Start
Process
Finish
Staffing
yes Staffing
no processed
Check Staffing Setup
Approve Staffing
Dependencies Accounts
Dependency
exists?
Approver A
Create Dynamic Perform
operating Approver Approval
sequence Determination Steps
Start Approval
Approval finished
Approver B
Perform
Approval
Steps
Approver X
10. Cancel Staffing Continue
event Staffing event
Staffing
Validate cancelled
Staffing Business Process
Application Continue? Setup
Workplace
Start
Process
Finish
Staffing
yes Staffing
no processed
Check Staffing Setup
Approve Staffing
Dependencies Accounts
Dependency
exists?
x
Approver A
Create Dynamic Perform
operating Approver Approval
sequence Determination Steps
Start Approval
Approval finished
x x
Approver B
Perform
Approval
Steps
x
Approver X
x x x
11. Cancel Staffing Continue
event Staffing event
Staffing
Validate cancelled
Staffing Business Process
Application Continue? Setup
Workplace
Start
Process
Finish
Staffing
yes Staffing
no processed
Check Staffing Setup
Approve Staffing
Dependencies Accounts
Dependency
exists?
Generic Task Handler
Approver A
Create Dynamic Perform
operating Approver Approval
sequence Determination Steps
Start Approval
Approval finished
Before Task
Oracle Human Workflow
Operations
Approver B
Perform
Approval
Steps
Human Task
Approver X
After Task
Operations
x
12. Generic ADF Human Task Handler
ADF UI ADF UI
ADF Data Control
Generic BPM Human Task
Generic BPM Human Task
BPM Human Task BPM Human Task
17. Challenges and what it means (2)?
Complexity
Long-running end-to-end processes
Approx. 20 Human Tasks per process + automated service calls
Infrastructure with more than 750 Managed Servers in Production
300.000 calculated end-to-end process instances per year
What about my running instances?
Flexibility
Configurable through Business Rules, DVMs, …
Process migration because of environment changes and
new product releases are necessary
Top-down approach (contract-first)
Integration
Custom-defined user task forms that fit into existing
implementations and future plans
18. Decoupling Business Data
Cancel Staffing Continue
event Staffing event
Staffing
Validate cancelled
Staffing Business Process
Application Continue? Setup
Workplace
Start
Process
Finish
Staffing
yes Staffing
no processed
Check Staffing Setup
Approve Staffing
Dependencies Accounts
Dependency
exists?
Deployment
Instance Data Why is the transfer of complex
Task Data / Payload business data through the whole
process critical?
Versioning
Migration
MDS SOAINFRA
Performance
UI collects data from SOAINFRA
19. Decoupling Business Data (2)
Cancel Staffing Continue
event Staffing event
Staffing
Validate cancelled
Staffing Business Process
Application Continue? Setup
Workplace
Start
Process
Finish
Staffing
yes Staffing
no processed
Check Staffing Setup
Approve Staffing
Dependencies Accounts
Dependency
exists?
Deployment
Instance Data Why is the transferServices
Adapter of complex
Task Data / Payload business data through the whole
process critical?
Versioning
Migration Business
MDS SOAINFRA
related data
Performance
UI collects data from SOAINFRA
20. Setup the housekeeping
Monitor the filesystem
Monitor your server and apps (EM FMW Control, Grid Control)
Monitor the memory (JRockit Mission Control)
Manage database growth of MDS and SOAINFRA
Purging: Looping, Parallel, Partitioning
Oracle Fusion Middleware Administrator's Guide (chapter 9)
SOA 11G Database Growth Management Strategy
The character of the processes and the amount of instances is
important to find the right purging strategy (short-running or
long-running)
21. Challenges and what it means (3)?
Complexity
Long-running end-to-end processes
Approx. 20 Human Tasks per process + automated service calls
Infrastructure with more than 750 Managed Servers in Production
300.000 calculated end-to-end process instances per year
Flexibility
Configurable through Business Rules, DVMs, …
=> How shouldmigration because of environment changes and
Process I design my SCA-Applications?
new product releases are necessary
=> Which functionalities can be used twice or more?
Top-down approach (contract-first)
=> How should I use features like partitions in order to
Integration
ease the monitoring of the composites during runtime?
Custom-defined user task forms that fit into existing
=> What are valid naming conventions?
implementations and future plans
22.
23. Process Replay
Approver A
Create Dynamic Perform
operating Approver Approval
sequence Determination Steps
Start Approval
Approval finished
1 Check: Is Replay Mode
Approver B
Perform
Approval
Steps
active?
2 Query the outcome and
… Form Data
the appropriate task
1
2 … ..
data of the current order
Generic
Task Handler and working step.
… …
3 Replay
Service
… …
3 Return the result to the
2 2 Form Data Table
Generic Task Handler
Order WS and mark the working
Working Steps Form Data …
30000 … .. step as replayed.
WS01 … …
40001 … …
WS02 … …
4 Continue the steps for
70080 … …
WS01 … …
all tasks with a selected
Order Table outcome.
Working Step Table
24. Challenges and what it means (4)?
Complexity
Long-running end-to-end processes
Approx. 20 Human Tasks per process + automated service calls
Infrastructure with more than 750 Managed Servers in Production
300.000 calculated end-to-end process instances per year
Flexibility
Where should I store those contract information?
Configurable through Business Rules, DVMs, …
Process migration because of environment changes and
new product releases are necessary
Top-down approach (contract-first)
Integration
Custom-defined user task forms that fit into existing
implementations and future plans
25. Reuse of services + data
SOA Composite 1
CustomerInfoService CarRental
Customer
(with SOAP-Binding) Interface Car CarBooking
CustomerInfoService
ClaimNotification (abstract Interface)
Interface Claim Notification
MDS
Server
SOA Composite 2
26. Share artifacts with MDS
oramds:/apps/<FOLDER>/<Service>.wsdl
Business Events Fault Policies Reference Interfaces
Data (XSD) (XML)
(EDL) (WSDL)
Composite Domain
Interface (WSDL) Value Maps (DVM) MDS
27. A few more things...
Set the title-attribute of your composite instance with a
business related identifier
Use component-properties to change configuration
parameters of your implementations during runtime
Implement dynamic endpoint-binding pattern to avoid large if-
then-else trees (in BPEL: set property endpointURI during
runtime)
28. Challenges and what it means (5)?
Complexity
Long-running end-to-end processes
Approx. 20 Human Tasks per process + automated service calls
Infrastructure with more than 750 Managed Servers in Production
300.000 calculated end-to-end process instances per year
Flexibility
Configurable through Business Rules, DVMs, …
How can I create my own worklist application?
Process migration because of environment changes and
new product releases are necessary
Top-down approach (contract-first)
Integration
Custom-defined user task forms that fit into existing
implementations and future plans
34. ADF Security Integration
ADF UI ADF UI
A
D
F
ADF Data Control
S Generic BPM Human Task
E
C
U
R
I Generic BPM Human Task
T
Y
BPM Human Task BPM Human Task
35. Summary
Create reusable components for BPM and ADF.
Decouple business data from process instance data.
Don‘t forget the housekeeping for BPM and ADF.
Create well defined interfaces that fit into your architecture.
Be prepared for the worst-case (Fault Management, Replay, Entry
Points, etc.).
Use MDS to share your metadata.
Define clear naming conventions in advance for BPM and ADF.
36. Opitz Consulting Profile
Client Markus Mehrens
Retail/ Non-Profit Head of Account Management, Deutsche Postbank AG
Logistic „Referring to our external partners,
Telco/
I rarely experienced that project
Media
organization and project management
have been handled in such perfect
manner.“
Industry Financial Services
Andreas Röttger (COO):
Consulting Coaching „We rely on services of trusted
partners so we can ensure the holistic
Fix Price Outtasking
approach in our projects. This is a key
in delivering value and innovation in
Marketing Technology complex projects.”
Jürgen Kunz
Senior Vice President Northern Europe & Managing
Director Oracle Germany
„Our Platinum Partner
OPITZ CONSULTING with his
Non-Profit Methods excellent employees and outstanding
Partner project successes belongs to our
privileged partners.“
37. Red Samurai Profile
Customer Base Focus
United States Canada Advanced Oracle
Fusion Coaching
Germany Czech Republic
Oracle Fusion
South Africa Norway Architecture
Greece Development
Switzerland Oracle Fusion
Development and
United Kingdom Implementation
Spain Social Enterprise
Portugal Suite Product
Development and
Australia Integration
Jordan
Saudi Arabia