engineering data-centric process models · data-centric processes . data-centric process model...
TRANSCRIPT
Engineering Data-Centric Process Models
Rik Eshuis
Process modeling perspectives
PAGE 2 22-10-2014
Behavior view
Data view
Resource view
Business Process
Separation of concerns: engineer models separately
Information System
Data-centric processes
Data-centric process model combines data and behavior perspective • Artifact-driven BPM (IBM) • Case handling/management • Document-driven workflows (PSU) • Data-driven process structures (Ulm Univ) • Process models with data flows
PAGE 3 22-10-2014
Why data-centric processes?
• Gaining flexibility
PAGE 4 22-10-2014
classic
data-centric
Why data-centric processes?
• Gaining flexibility • Gaining precision • Gaining understandability
− for business users, thinking in terms of entities (artifacts) is more easy then thinking in terms of processes [IBM]
PAGE 5 22-10-2014
Data-centric processes
Data-centric process model combines data and behavior perspective • Artifact-driven BPM (IBM) • Case handling/management • Document-driven workflows (PSU) • Data-driven process structures (Ulm Univ) • Process models with data flows
PAGE 6 22-10-2014
Outline
• Framework • Analysis of workflow data models • Synthesis of object-life cycles • Transactional process views • Splitting GSM schemas
PAGE 8 22-10-2014 22-10-2014 PAGE 8
Control flow and data flow
PAGE 9 22-10-2014
A B C
message passing: loose integration
shared database: tight integration
Data granularity
• ~ how many states can a data item have? • Variable: each value is a state • Object: discrete, explicitly specified states
PAGE 10 22-10-2014
variables objects
low granularity high granularity
Business process scope
• Intra-organizational • Inter-organizational
PAGE 11 22-10-2014 22-10-2014 PAGE 11
Data flow dimensions
• Data integration − Tight: Shared database − Loose: Message passing
• Data granularity
− High: variables − Low: object states
• Scope
− Intra-organizational − Inter-organizational
PAGE 12 22-10-2014
Shared database Message
Object Variable Object Variable Intra-organizational Inter-organizational
Research topics
• Analysis of workflow data models • Synthesis of object-life cycles • Transactional process views • Splitting GSM schemas
PAGE 13 22-10-2014 22-10-2014 PAGE 13
Shared database Message
Object Variable Object Variable Intra-organizational
Analysis of workflow data models
Synthesis of object-life cycles
Inter-organizational Transactional process views
Splitting GSM schemas
Research topics
• Analysis of workflow data models • Synthesis of object-life cycles • Transactional process views • Splitting GSM schemas
PAGE 14 22-10-2014
Shared database Message
Object Variable Object Variable Intra-organizational
Analysis of workflow data models
Synthesis of object-life cycles
Inter-organizational Transactional process views
Splitting GSM schemas
22-10-2014 PAGE 14
Analysis of workflow data models (joint work with Diana Borrego of Un. of Seville)
• Workflow models with variables and pre/postconditions for activities
• Workflow gets stuck at activity if precondition fails • How can we diagnose correctness of workflow
models with pre/postconditions?
22-10-2014 PAGE 15
Example
Precondition
violation
22-10-2014 PAGE 16
Diagnosis
3*30+100+30<200
22-10-2014 PAGE 17
Diagnosis approach
• Workflow graphs + pre/postconditions • Encode correct control flow execution (subgraph) as
Integer Programming model − Rik Eshuis, Akhil Kumar: An integer programming based approach for verification
and diagnosis of workflows. Data & Knowl. Eng. 69(8): 816-835 (2010)
• Encode pre/postconditions as Constraint Satisfaction Problem
• Combined IP+CSP model processed by CSP solver
22-10-2014 PAGE 18
Algorithm
• For each activity a with precondition p • Find subgraph that leads to a but does not include a • Encode subgraph as CSP+IP model • Add not(p) to CSP+IP model • If solution exists, then error
• If no error found, then the workflow graph is correct
PAGE 19 22-10-2014
Validation
• Java-based implementation for verifiying annotated XPDL models
• Using COMET CSP checker • The execution time scales linearly in the size of the
XPDL models
PAGE 20 22-10-2014
Results
Contributions • Seamless integration of process and data
verification • Extensive feedback to fix data flow errors • Fully implemented
Future work • Extend set of workflow operators
22-10-2014 PAGE 21
Diana Borrego, Rik Eshuis, María Teresa Gómez López, Rafael M. Gasca. Diagnosing correctness of semantic workflow models. Data & Knowledge Engineering, 87: 167-184 (2013)
Research topics
• Analysis of workflow data models • Synthesis of object-life cycles • Transactional process views • Splitting GSM schemas
PAGE 22 22-10-2014
Shared database Message
Object Variable Object Variable Intra-organizational
Analysis of workflow data models
Synthesis of object-life cycles
Inter-organizational Transactional process views
Splitting GSM schemas
22-10-2014 PAGE 22
Synthesis of object life cycles (joint work with Pieter Van Gorp)
• UML activity diagrams implicitly specify object life cycles
• Object life cycles are specified in UML statecharts • How can we discover implicit object life cyles from
UML activity diagrams? • Why?
− Check consistency with pre-existing object life cycles − Generate software code
Withdraw cash
Check balance Dispense cash
Log entryPrint receipt
: Account[uncredited]
: Account[checked]
: Account[credited]
22-10-2014 PAGE 23
Receive
Reject
Determine costs
Update client contributionNotify client
Pay
: Claim[policy checked]
: Claim[rejected]
: Claim[archived]
: Claim[policy not checked]
: Claim[damage checked] : Claim
[settled]
Check policy
Check damage
: Claim[assessed]
: Claim[damage not checked]
: Claim[received]
received
rejected
assessed
policy checked
damage checked
archived
settled
checking
O4
O3
policy not checked
damage not checked
O1
O2
preprocessing
???
22-10-2014 PAGE 24
Approach
Two sequential steps • Filtering (to remove irrelevant parts) • Synthesis (to construct statechart hierarchy) Fully automated!
PAGE 25 22-10-2014
Filtering
• Reduction rules
22-10-2014 PAGE 26
Filtering effect
: Claim[policy checked]
: Claim[rejected]
: Claim[archived]
: Claim[policy not checked]
: Claim[damage checked]
: Claim[settled]
: Claim[assessed] : Claim
[damage not checked]
: Claim[received] : Order[accepted]
: Order[accepted]
: Order[accepted]
: Order[accepted]
22-10-2014 PAGE 27
Synthesis
• Transformation rules to construct state hierarchy − rule for creating AND state − rule for creating OR state
22-10-2014 PAGE 28
Example construction AND state
22-10-2014 PAGE 29
received
O7
O2
O1
received
damage not checked damage checked
policy not checked policy checkedO7
O2
O35
O46
O1
T2
damage not checked damage checked
policy not checked policy checkedO35
O46
A1O3456
Final statechart
• Add transitions to statechart hierarchy
received
rejected
assessed
policy checked
damage checked
archived
settled
checking
O4
O3
policy not checked
damage not checked
O1
O2
preprocessing
22-10-2014 PAGE 30
Implementation
PAGE 31 22-10-2014
GrGenGraph Rewriting Tool
with optional Visualization
Eclipse based editors(Eugenia/Kieler and Official UML 2 Tools)
UML Activity Diagram
XMI
UML Statechart
XMI
Filteringrules
Synthesisrules
Final remarks
Contributions • Synthesis of expressive hierarchical state machines • Structure preserving • Filtering out of irrelevant parts • Fully implemented prototype using GrGen • Extended to deal with multiple objects Future work • Enhance set of translations • Support roundtrip engineering
22-10-2014 PAGE 32
Rik Eshuis, Pieter Van Gorp. Synthesizing Object Life Cycles from Business Process Models. Proc. ER 2012, Springer (2012). Rik Eshuis, Pieter Van Gorp. Synthesizing Object-Centric Models from Business Process Models. Proc. BPM 2013 workshops, Springer (2014).
Research topics
• Analysis of workflow data models • Synthesis of object-life cycles • Transactional process views • Splitting GSM schemas
PAGE 33 22-10-2014
Shared database Message
Object Variable Object Variable Intra-organizational
Analysis of workflow data models
Synthesis of object-life cycles
Inter-organizational Transactional process views
Splitting GSM schemas
Transactional Process Views (Joint work with Jochem Vonk & Paul Grefen)
• Process view reveals relevant properties of underlying private business process
• Balance between interest of owner and client
• How to construct a transactional process view from an internal transactional process?
No transactional
support
22-10-2014 PAGE 34
Example classical process view
Classic process views
R. Eshuis and P. Grefen. Constructing Customized Process Views. Data and Knowledge Engineering, 64(2):419-438 (2008).
Example internal transactional process
PAGE 37 22-10-2014
Approach
• Extend process view construction approach with transactional features − Aggregation − Customization
???
22-10-2014 PAGE 38
Final remarks
Contribution • Flexible construction of transactional process views • Specification of robust & reliable behaviour at the
external level • Approach helps to establish dynamic trustworthy
B2B collaborations in an efficient way Future topics: • More expressive process models • Execution of transactional process views
PAGE 39 22-10-2014
Rik Eshuis, Jochem Vonk, Paul Grefen. Transactional Process Views. Proc. OTM Conferences (1) 2011, pp.119-136 (2011)
Research topics
• Analysis of workflow data models • Synthesis of object-life cycles • Transactional process views • Splitting GSM schemas
PAGE 40 22-10-2014
Shared database Message
Object Variable Object Variable Intra-organizational
Analysis of workflow data models
Synthesis of object-life cycles
Inter-organizational Transactional process views
Splitting GSM schemas
22-10-2014 PAGE 40
Guard-Stage-Milestone (GSM) schemas
• Status of each stage,milestone ∈ { on, off} • Business rules specify when stage/milestone changes state
− Might refer to status of other stages/milestones • Rules need to be evaluated in right order to ensure that all
changes have maximal effect • Unit of change triggered by external event is called a B-step
22-10-2014
DealRefined
DealFailed
Refine Deal
Term DraftedDraft Term Credit
CheckedCheck CreditDetermine
PricePrice
Determined
ReDraftTermNeeded ReCheckCreditNeeded
Guard business rule when
to open stage
Stage cluster of work to achieve milestone
Milestone business objective
Splitting GSM subschema (Joint work R. Hull, Y. Sun, R. Vaculin from IBM Research)
22-10-2014 PAGE 42
Client artifact system
Provider artifact system
must be equivalent
Deal Refined
Deal Failed
Refine Deal
Term Drafted Draft Term Credit
Checked Check Credit Determine
Price Price
Determined
ReDraftTermNeeded ReCheckCreditNeeded
Draft Term Deal
Refined
Deal Failed
Refine Deal
Credit Checked Check Credit
Determine Price
Price Determined
ReCheckCreditNeeded ReDraftTermNeeded
IGF
LawOffice IGF
Term Drafted
Naïve splitting causes race conditions
22-10-2014 PAGE 43
Deal Refined
Deal Failed
Refine Deal
Credit Checked Check Credit Determine
Price Price
Determined
ReCheckCreditNeeded
Term Drafted
ReDraftTermNeeded
Draft Term achieve if credit_level > 100,000
open on +ReDraftTermNeeded
open if TermDrafted and CreditChecked status is on status is off
Task CheckCredit completes
credit_level= 200,000
IGF
LawOffice
Naïve splitting causes race conditions
22-10-2014 PAGE 44
Deal Refined
Deal Failed
Refine Deal
Credit Checked Check Credit Determine
Price Price
Determined
ReCheckCreditNeeded
Term Drafted
ReDraftTermNeeded
Draft Term achieve if credit_level > 100,000
open on +ReDraftTermNeeded
open if TermDrafted and CreditChecked status is on status is off
Task CheckCredit completes
credit_level= 200,000
IGF
LawOffice
Impossible in original GSM
schema
Possible solutions
1. Extend local GSM engines with complex synchronization logic
2. Better: restructure GSM schema to avoid complex synchronization
22-10-2014 PAGE 45
Event B-step 1
Event’ B-step 2
IGF
LawOffice
Solution approach
• Keep local cache of status of needed remote stages/milestone • determined per external event type
• Reallocate business rules to avoid complex synchronization − Sometimes: rule executes at different location than
the corresponding stage/milestone • Runtime simulation protocol based on distributed 2-
phase commit • Result (see paper): split GSM schema faithfully
simulates original GSM schema
22-10-2014 PAGE 46
Final remarks
• Comprehensive framework for supporting outsourcing of GSM schemas
• Covers both design-time and run-time • Future work:
• multi-party outsourcing • interacting artifact types • extend results to OMG’s Case Management Modeling
Notation
22-10-2014 PAGE 47
Rik Eshuis, Richard Hull, Yutian Sun, Roman Vaculín. Splitting GSM Schemas: A Framework for Outsourcing of Declarative Artifact Systems. Proc. BPM 2013, pp. 259-274 (2013)
Conclusion
Future work • Inter-organizational perspective • Case management
Shared database Message
Object Variable Object Variable Intra-organizational
Analysis of workflow data models
Synthesis of object-life cycles
Inter-organizational Transactional process views
Splitting GSM schemas
22-10-2014 PAGE 48
For more info …
Contact details • Email: [email protected] • Homepage: http://is.ieis.tue.nl/staff/heshuis
PAGE 49 22-10-2014
Thank you!