Upload
pedro-bizarro
View
3.756
Download
0
Embed Size (px)
DESCRIPTION
Part 6 of 7 of the Use Case Tutorial presented at DEBS'2009 in Nashville, TN
Citation preview
eptsevent processing technical society
1http://www.padres.msrg.utoronto.ca
Business Process Management & Business Activity MonitoringHans-Arno JacobsenBell University Laboratory Chair
Middleware Systems Research Group, University of Toronto
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
Business Process Example
> 0.7
elseelse
< 0.5
Checkscore
Creditcheck
Creditcheck 2
Checkscore 2
Reject
Approve
Send toofficer
< 0.3
Store inDB
…
…
Loan Application Processing
2
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
Large-scale Business ProcessesVendorVendor
SaleSale
ManufactoryManufactory
FinanceFinance
Dispatch B
Out-stock B
Pick-up goods
Packaging
MarketingMarketing
Design
Out-stock B
Target price
Prototype
Out Take
Control
Assign
Confirm
Determinateplan
Check stock
Rawmaterials
Audit
Raw
Determinateplan
Executeplan
Processcontrol
Monitor
Process
Pay
Check
Signature
Print receipt
WarehouseWarehouse
Delivery
FedEx
Pick up
Monitoring
Statistic
Chart
StrategyStrategy DesignDesign MarketingMarketing OrderOrderManufactoryManufactory PaymentPayment
Requirementcollection
Feature selection
Goods selection
Confirmfeatures
Material
Make plan
Feedback
Check order
Fill order
Check dealer Check credit
Approval Approval
Validate
Affirm order
Sale prediction
SignContract
CCCadministrate
Goods delivery
Fill dispatch bill
Fill out-stock bill
Credit card
3
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
What is the Common Denominator?
• BPM applications, such as business processes, are driven by asynchronous state transitions.
– Something happens, … an appropriate reaction is expected and required.
• Asynchronous state transitions represent events.
– A process is triggered, a request submitted, …
• BPM applications require event management and processing capabilities to run effectively.
4
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
The Events
• Loan application process
– A loan application submission, loan approval or denial
– An exception in the process execution
– A failure in the execution of the process
– A re-try of an operation, a tiime-out
• Large-scale business process
– Essentially the same as above
The execution of a business process comesclose to a firework of events.
5
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
Business Activities
• Loan application process
– Loans processed per unit of time
– Loans approved or denied
– Loans with volume > X approved
– Average credit check service time
• Large-scale business process
– Process and application KPIs
– Service level agreements
6
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
In Numbers
• Large processes
– Millions of invocations per day
– Tens of thousands of processes concurrently executing
– Processes are often long-running (years)
7
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
Business Processes & Events
• Dependency in processes and more complex process patterns requires event correlation
• Event correlation enabled by the detection of composite events
• Composite events are expressed via composite subscriptions
• Composite subscription consists of atomic subscriptions
• Subscription language features:– Operators (AND, OR) and variables ($x)
– Example: D executes, if B and C have
completed (D depends on B and C)
B C
D8
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
What Abstractions Enable Effective Event Processing?
• It is our opinion that the afore-mentioned requirements can best be addressed by
– The content-based publish/subscribe paradigm
– Realized by content-based message routing
• Events represent state transitions in the environment.
– Conveyed as publications to the pub/sub system
• Event filtering and correlation is based on
– Subscriptions managed by the pub/sub system
9
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
The Content-based Pub/Sub Model
• Language and data model– Boolean functions over predicates
– Subscriptions are conjunctions of predicates
– Publications are sets of attribute-value pairs
• Matching semantic– A subscription matches if all its predicates match
Example Tree-structured data
Graph-structured data
Un-structured data
Regular languages
Relational model
Subscription XPath RDF Query Keywords Regular expressions
SQL
Publication XML RSS feeds Text, documents Sentences over some alphabet
DBs, i.e., tables
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
Content-based Message Routing
Publisher
Subscriber
1. Advertise
2. Subscribe
3. Publish
Event-BasedEvent-Based
DecoupledDecoupled
FlexibleFlexible
ResponsiveResponsive
Content RoutingContent Routing
DeclarativeDeclarative
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
Benefits of Content-based Publish/Subscribe for BPM
• Naturally enables centralized and distributed business process coordination
• Coordination can span administrative domains and physically distributed resources
• Supports process orchestration and choreography
• Monitoring & control is integral part of paradigm
• Agile on the fly process adaptation and versioning
• Correlation of application events with low-level infrastructure events
12
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
Business Process Management
• Transformation of process into pub/sub language and data model
• Deployment of the transformed process
• Triggering and executing the process instances
• Monitoring the process execution
A
B C
D
trigger
E
F
trigger multiple instances concurrently
Exception & compensation
13
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
PADRES ESB Architecture & Vision
Server Farm
Computers
ComputersDatabase
Laptops
Computers
Workstation
Laptops
DatabaseServer
ServerSwitch
Server
Switch
Computing, Storage, and Networking Resources
Content-based Routing (Publish/Subscribe)
Content-based RouterClients (publisher/subscriber)
PADRES ESB
Business Process Execution
Deploy Control UpdateVisualize
Monitor ...
6
43
7start halt
Business Process Management and Business Activity Monitoring
Redirectresume
addremove
Event Management Framework
Application Events
Business Events
Complex Events
Network and System Events
14
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
Questions?
A D R E SP
15
For more details see our
report entitled:
“PADRES & NINOS…”
PADRES is
open source(forthcoming release)
epts event processing technical society
MIDDLEWARE SYSTEMSRESEARCH GROUP
References
• The PADRES ESB project home– http://padres.msrg.utoronto.ca
• An eQoSystem for declarative distributed applications with SLAs– http://research.msrg.utoronto.ca/Eqosystem/
• The Micro-ToPSS event processing middleware for sensor networks– http://microToPSS.msrg.utoronto.ca/
• Mobile-ToPSS – publish/subscribe for mobile and location-based applications– http://research.msrg.utoronto.ca/Mobile/
• ToPSS - the Toronto Publish/Subscribe System Family– http://www.ToPSS.biz (coming soon)
• Quantifying events in software to increase modularity & customization in C-based systems and software-based product lines– http://www.AspeCtC.net (ACC - the AspeCt-oriented C compiler)
• The Middleware Systems Research Group– http://www.msrg.utoronto.ca
• My web site– http://www.eecg.toronto.edu/~jacobsen
@ the University of Toronto
16