monitoring business processes with queries · 2008. 5. 1. · 6 monitoring business processes with...
TRANSCRIPT
![Page 1: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/1.jpg)
BP-Mon:Monitoring Business Processes
with Queries
Catriel Beeri, Anat Eyal, Tova Milo, Alon Pilberg
Tel-Aviv UniversityHebrew University
![Page 2: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/2.jpg)
Monitoring Business Processes with Queries2
Outline
� Introduction to Business Processes
� Overview of BP-Mon by example
� Formal model
� Implementation & experiments
� Summary
![Page 3: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/3.jpg)
Monitoring Business Processes with Queries3
ERPERP
HR HR
SystemSystem
eCommeCommCRMCRM
LogisticsLogistics
CustomerCustomer
BankBank
SupplierSupplier
Business ProcessesIntroduction and Motivation
![Page 4: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/4.jpg)
Monitoring Business Processes with Queries4
Business Processes Execution Language (BPEL)
Process spec. represented in XML
• operations (atomic/ compound activities)
• flow and data
Designed using visual tools
• graphs of nodes and edges
Compiled into executable code &
run on any BPEL application server
BPEL in a NutshellIntroduction and Motivation
Visual BPEL editor
BPEL Application Server
process invocation
deploy
Process instance
Business process
high-level & portable
![Page 5: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/5.jpg)
Monitoring Business Processes with Queries5
The Need for Monitoring
Imagine you run an auction service…
� Guarantee fair play: notify on too many cancels
� Maintain SLA: monitor response time
� Promotions: prizes for the x10,000 transaction
� Illegal access: notify on buyers attempt to
confirm bids without registering first
Introduction and Motivation
Monitoring is crucial for enforcing business policies and
meeting efficiency & reliability goals
![Page 6: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/6.jpg)
Monitoring Business Processes with Queries6
Background and ChallengesIntroduction and Motivation
BPM systems send process traces as events
Very large field: active database, publish-subscribe,
composite events, temporal logic,…
Shortcoming of current approaches BPEL challenges
Abstraction level •Two levels: events vs. spec
Efficiency
Implementation &
Deployment
•Generic optimizations
•Propriety language•Not portable
Write queries the same way as the spec
Exploit knowledge of the spec
Declarative languageRun everywhere
�
�
�
![Page 7: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/7.jpg)
Monitoring Business Processes with Queries7
Abstraction level•High level graphical query language
•Tight analogy to the spec
Efficiency
ContributionsIntroduction and Motivation
Implementation
& deployment
•Dedicated efficient automata based Algorithm
•Novel optimizations based on analysis of spec
•Pruning of redundant monitoring
•Compiles a BP-Mon query into a BPEL process
•Easy deployment, portability
•Minimal overhead
![Page 8: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/8.jpg)
Monitoring Business Processes with Queries8
Running ExampleIntroduction and Motivation
![Page 9: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/9.jpg)
Monitoring Business Processes with Queries9
EventsIntroduction and Motivation
<actionData>
<header>
<processName> auctionHouse </processName>
<instanceId> 517 </instanceId>
<sensorTarget> notify_winner </sensorTarget>
<timestamp> 2006-05-31T11:32:46.510+00:00 </>
</header>…
<activityData>
<activityType>invoke </activityType>
<evalPoint> completion </evalPoint> …
![Page 10: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/10.jpg)
Monitoring Business Processes with Queries10
Nested set of DAGs:
• Nodes� Activation
� Completion
• Timestamps
• Edges� Flow
� Zoom-in, Zoom-out
a
c
BP Execution Traces as DAGsIntroduction &Motivation
![Page 11: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/11.jpg)
Monitoring Business Processes with Queries11
Query Example (1)BP-Mon by Example
Too many Cancels Use execution patterns
� Transitive nodes
� Report/ Report*
� Regular expressions
or rep
� Transitive edges
![Page 12: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/12.jpg)
Monitoring Business Processes with Queries12
Monitor response time (and notify the process to change the db)
Sliding window
� Time based
Report* Every 1 hrs Range 2 hrs
� Instance based
Every 100 entries Range 200 …
Output format
� XQuery like
� Group by having
Query Example (2)BP-Mon by Example
Report
� Local/Global
� Multiple reports
![Page 13: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/13.jpg)
Monitoring Business Processes with Queries13
X10,000 win
Query Example (3)BP-Mon by Example
![Page 14: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/14.jpg)
Monitoring Business Processes with Queries14
Static and dynamic analysis
Query Example (4)BP-Mon by Example
![Page 15: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/15.jpg)
Monitoring Business Processes with Queries15
• EX-trace: nested DAGs
• EX-pattern: EX- trace without timestamps
transitive edges & nodes
‘any’, ‘or’, ‘rep’
A query defines a set of concrete
Ex-patterns obtained by:
�Rep– replacing with arbitrary number of copies
� Or – choosing an internal trace & replacing
Queries: Execution PatternsFormalModel
![Page 16: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/16.jpg)
Monitoring Business Processes with Queries16
p concrete EX-pattern, e EX-trace.
Definition: An embedding of p into e is a
An EmbeddingFormalModel
homomorphism from the nodes/edges in p to nodes/edges/paths in e s.t.
� node labels match
� edge (transitive)�edge(path), of the same type
� direct edge of transitive nodes � any type
![Page 17: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/17.jpg)
Monitoring Business Processes with Queries17
p EX-pattern, e EX-trace, S a set of embeddings of
patterns in concrete(p) into e
Definition(semi-formal): ψ S is greedy (in S) if:
There is no other embedding ψ’ that
agrees with ψ on the prefix of n p but matches n
with an earlier timestamp
A Greedy EmbeddingFormalModel
∈
ψ(n) ψ’(n)
∈
![Page 18: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/18.jpg)
Monitoring Business Processes with Queries18
• Incrementally extends a greedy embeddingto one of a larger prefix
• Automaton with Ex-pattern nodes as states– Tries to match (concurrently) the concrete
patterns of the given EX-pattern
– Attempts to match events as early as possible
– On failure: backtracks & retries
The AlgorithmFormalModel
Complexity: polynomial in the size of the trace
(with the exponent determined by the size of the pattern)
![Page 19: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/19.jpg)
Monitoring Business Processes with Queries19
The Algorithm (cont)
• Manage simultaneously a large
number of active states
• Potential exponential growth in the size of the automaton
FormalModel
⇒ We provide a hybrid solution
• Lazy DFA• Small automaton, same size as the pattern
• Relatively few states are simultaneously active
Issues:• Backtracking
• Retaining of events
Non-deterministic automaton Deterministic automaton
![Page 20: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/20.jpg)
Monitoring Business Processes with Queries20
Let S be a BP specification, o an activity in S
Definitions (semi-formal):
� Activity o is irrelevant to query node n
• if there is no EX-trace of S where it participates in an
embedding.
� Activity o is inconsistent with EX-pattern p
• if p cannot be embedded into any EX-trace of S that
contains an activation event of o.
Algo uses BP-QL [VLDB06] for spec analysis
Optimization: Irrelevance & InconsistencyFormalModel
![Page 21: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/21.jpg)
Monitoring Business Processes with Queries21
Optimization (example)FormalModel
BP-QL query (on spec)
![Page 22: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/22.jpg)
Monitoring Business Processes with Queries22
Visual query editor
Query process
events
invoke newinstance
Query instanceevents
deploy
query
subscriptionrequests
Process instance …
output streams
Report
generator
ArchitectureImplementation
A monitoring query is compiled into a BPEL process
BPEL Application Server
process invocation
Optimizer
(BP-QL)
Dispatcher
Business process
Query translator
![Page 23: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/23.jpg)
Monitoring Business Processes with Queries23
Visual InterfaceImplementation
![Page 24: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/24.jpg)
Monitoring Business Processes with Queries24
Queries overhead
Impact of optimization
Effect of % of queried activities
Effect of queries per process
Experiments ResultsImplementation
![Page 25: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/25.jpg)
Monitoring Business Processes with Queries25
Each process: 200 activities, 40% queried
Query: report*, 3 reports
Experiments Results: Queries OverheadImplementation
![Page 26: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/26.jpg)
Monitoring Business Processes with Queries26
� User friendly query language for monitoring BPs:
• Graphical and intuitive (wizard)
� Semantics:
• Early match (greedy), all matches
� Algorithm
• Lazy DFA
• Irrelevancy & inconsistency
� Implementation
• Compiles into BPEL=>
Easy deployment, portability, and minimal overhead
ConclusionSummary
![Page 27: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/27.jpg)
Monitoring Business Processes with Queries27
� Querying/mining logs
� Incomplete information
� Application to software monitoring and verification
� More optimization
Ongoing and Future WorkSummary
![Page 28: Monitoring Business Processes with Queries · 2008. 5. 1. · 6 Monitoring Business Processes with Queries Introduction and Background and Challenges Motivation BPM systems send process](https://reader035.vdocument.in/reader035/viewer/2022071608/614705d9f4263007b1358d32/html5/thumbnails/28.jpg)
Thank you !