Value of BPM Advanced
Value of BPM Advanced
A Fit-for-purpose discussion
Smarter Process
Agenda
1. Background and Motivation
• Early projects must also pave the way to a company wide ‘program’
– Creating a COE or COC won’t work unless it is grounded in early project successes
• Using the right tools, right notations and right techniques, plus using
them the right way is key to those first projects being successful
• Integration is part of this story, playing a role from the start, a role which
becomes more prominent as processes mature
Smarter Process
steps u
p
the automated paths.as part of
Humans
Human Interactions are
structured
ordered and sequenced,
exception
but relatively generic,
handling Handling – this
Unstructured exception
saying “Do this Task”
without a lot of extra means the use of ad-hoc subprocesses
help to accomplish it. and hgeneral case handling as needed in
us Ad-hoc
addition
p to more reuse of ‘update’
services used in the automated paths.
human task
time
As processes evolve, the number of instances that can be fully automated increases and the handling of
exceptions becomes more structured.
Smarter Process Imperative: Support All Types of Processes
Notes
•Some processes start
life around V4, because
there are already a
V4 Do basic modeling and
number of automated analysis to get from V1 to
tasks that are known V4 and then go live
•There is a V5
corresponding evolution
of KPIs, metrics and
insights that come as
processes evolve
V6 Do extensive modeling,
analysis and simulation
and then go live
Business Agility and Process Design
Smarter Process
Comm.
Service
Agility Enablers
1.Service endpoint
changes
Comm.
2.Decision Services
Service
Decision 3.Ad-hoc sections of the
Info Service overall process
Service Comm. 4.Event handlers
Service
5.Leveraging Analytics
and Business Activity
Monitoring
Analytics
7
Monitoring
Smarter Process
a a a a a a a a
t1 t2 t3
1 2 3 4 5 6 7 8
Net Result:
1.More responsive to
A1-A4, A5-A8 business
•not changing the process structure radically
2.Fewer major
•no instance migration
revisions in the ‘large
Initial work •less governance required
project queue’
to first Go •plenty of business involvement
3.Opportunity to be
live - go more flexible on when
early. It major revisions are
doesn’t Major Revision (V2.0) Major Revision needed
have to be 4.Opportunity for
•traditionally comes to (V3.0)
ongoing
perfect. late, gets to big, etc.. •do you ever get to improvement, versus
•Now can maybe be this today? ‘develop, deliver and
Today, pushed out, if our •Will you need to get vanish’
projects agility enablers can to it tomorrow?
wait too help us improve 8
long without disrupting
8
Smarter Process
9
Smarter Process
10
Smarter Process
BPMN 2.0
11
Smarter Process
IBM BPM 12
Smarter Process
13
Smarter Process
BPEL
14
Smarter Process
BPEL Characteristics
Short-running Process
• Process is a directed graph of BPEL Activity
Nodes that represents a single business activity
• There are two types of Processes
1. Short-running (Microflow)
- Single transaction per Process
- Service orchestration only – very fast execution! Long-running Process
2. Long-running
- Transaction scope at Activity level
DB
- Persistent
- Asynchronous Activities allowed
- Process orchestration or choreography
• Compensation support
Maintains execution
DB state in database
15
Smarter Process
Transactional
boundaries
Service
joinTransaction= true
Process
Invoke
Invoke
T1 T2 T3 T4
preferredInteractionStyle= async
Continuation
messages via
Service
BPC internal queue
16
Smarter Process
Microflows
Navigation and Transactional Boundaries
Transactional
boundary
Process
Invoke
Receive Assign Assign Reply
Invoke
joinTransaction= true
Service
17
Smarter Process
• Macroflows
– Synchronous or asynchronous interactions
– Fine-grained transaction control
– Instance repair via BPC Explorer
18
Smarter Process
BPEL Guidance
• Flexible features
• High performance
• Transactionality
• Integration with third party systems
20
Smarter Process
• Use Mediation Modules (WebSphere ESB & Process Server) for integration /
mediation logic:
– Short-running, minimal choreography
– Supports header manipulation
– “Litmus test”
• If you remove the mediation, consumer and provider should be able to understand each
other, if you forgive routing and protocol/data transformation
• More Information:
– http://www.ibm.com/developerworks/websphere/library/techarticles/0803_fa
sbinder2/0803_fasbinder2.html
21
Smarter Process
22
Smarter Process
23
Smarter Process
Challenge
Expose Complex Services to Processes via AIS
• When invoking directly complex Services into Process Designer (PD) my be problematic
• The data types exposed to PD may be too complex to handle in PD
• The data types my not all be business process relevant
• The binding my bot be handled well or handled at all in PD (i.e. MQ, or CICS via J2C
Adapter)
• Dealing with technical faults in human centric processes is a challenge
• Suggested Good
Use Integration Practice
Designer to import the Complex Service
• Define AIS with only the data that the business process required (canonical view)
• Hide the IT business objects or complex XSD structures (technical data) using Mirrored
Libraries
• Use data transforms to convert canonical data to technical data
• Translate technical faults to business faults for use in business process
Smarter Process
25
Smarter Process
26
Smarter Process
BPLE Process
orchestrates complex
integrations
27
Smarter Process
Complex IT data in
private library!
This folder
contains a
large number
of complex
SAP types!
28
Smarter Process IT View: Data Mapping, Error Handling
Author fault
handler
29
Smarter Process
Data Mapping
Complex, Large, Simple, Small,
All Data Required Data
30
Smarter Process
31
Smarter Process
Façade Impl.
i
Service Impl
Gateway Impl.
34
Smarter Process
• BPD made
solely of system
swimlane tasks
36
Smarter Process
37
Smarter Process
38
Smarter Process
BPEL 2 – Microflow
Typically used in
conjunction with
mediation flows
39
Smarter Process
0.2
6.0
57.3
150.2
Test cases used for this test available upon request from the author.
Smarter Process
42
Smarter Process
43
Smarter Process
44
Smarter Process
45
Smarter Process
– Process navigation
- Information necessary to support decisions on which path needs to be
taken
– Visibility
- Information needed for monitoring, dashboards, SLAs, KPIs, etc.
– Searches
- Business data needed to retrieve process instances or tasks
• Best practices
– Use the “claim check pattern”: store large objects in a DB as soon as you can,
and carry a reference in the processes
– Explore fragmenting large objects into smaller objects before sending them to
BPM
– Ensure that exceptionally large objects are dealt with one at a time
- If possible, reduce poll time and set poll quantity to 1 in
adapters
– Increase JVM heap size
- Use 64-bit platforms to overcome heap size limitations of 32-
bit JVMsc
Smarter Process
48
Smarter Process
Graphical mapping
Branching
49
Smarter Process
50
Smarter Process
51
Smarter Process
52
Smarter Process
Flow Development
Flow Administration
BPMN BPEL MFC
Web administration Full Full Partial
Instance Full Full NA
administration
Store & Forward None Full Full
Failed Event Partial Full Full
Script-based Partial Full Full
administration
Smarter Process
Summary (Part 1)
• If you have a straight-through process then
– Start with BPEL
– Add BPDs and service flows for humans as exceptions (it is
architected to handle this)
• If you have a top-down human centric process
– Start with a top level BPD
– Each step in that BPD will bring a decision again, based on
performance, function, QOS and other aspects. Mix in coach
flows, BPEL flows, MFCs and other elements as needed.
Smarter Process
Summary (Part 2)
• There is a lot of power here.
• It isn’t all for you (individual customers or projects will focus on key pieces given
the center of gravity for their application)
• Your needs will change over time
• If you have strong IT skills, don’t constrain yourself to “Process Designer”
because the IT folks will get ‘too creative’
• Remember, you have to
– get the application created,
– be able to update it without too much effort and pain
– handle scale and performance requirements as time goes
on
– deal with the increased integration that will occur as the
process matures.