1 Static Analysis of Business Artifact- centric Operational Models Presented by Cagdas Gerede Cagdas Gerede 1 , Kamal Bhattacharya 2 , Jianwen Su 1 1: University of California Santa Barbara 2: IBM T.J. Watson Research Center
Dec 17, 2015
1
Static Analysis of Business
Artifact-centric Operational
Models
Presented by Cagdas Gerede
Cagdas Gerede1, Kamal Bhattacharya2, Jianwen Su1
1: University of California Santa Barbara2: IBM T.J. Watson Research Center
2
Typical Approaches for Business Process Modeling
Characteristics:[Leymann99, Aalst-JCSC98, Jackson97,Morrison94] Process-centric: Focus on control and coordination of tasks Ignore the informational perspective or treat it only
within the context of single activities Case-driven and cases are logically independent
Problems Lack of flexibility
[Wang,Kumar-BPM05], [Aalst et al-DKE05], …
Hard to deal with changes[Casati et al-ER96], [Aalst et al-CSSE00], [Weske et al-HICSS01], …
Integration efforts are hindered [Bhattacharya-07]
3
Artifact-centric Business Process Modeling Developed by IBM Research
[NigamCaswell-IBMSJ03], [Bhattacharya et al-BPM07], [Liu et al- CAiSE07]…
Centered on Business Artifacts: data objects that capture key information pertinent to business context
Focus on life-cycles of business artifacts
Similarities with data flow diagramming [DeMarco78], flow-based programming [Morrison94]
Applied in practice successfullyInsurance, Manufacturing, Pharmaceutical Industries
[Bhattacharya et al - IBMSJ05]
4
Example: High Tech Restaurant
Guest Check
Artifacts
Kitchen Order
Receipt
Cash BalancePending
Active
Payment Completed
Canceled
Guest CheckcustomerNametableNopaymentDate…
data
states
5
Example: High Tech Restaurant
Guest Check
Artifacts
Kitchen Order
Receipt
Cash Balance
OpenGCs
ArchivedKOs
ClosedGCs
ArchivedGCs
PendingReceipts
ArchivedReceipts
Cash Balance
PendingKOs
PaidReceipts
DisagreedReceipts
ReadyKOs
Add Item
Deliver
Prepare &Test Quality
Create Guest Check
6
PrepareReceipt
Example: High Tech Restaurant
Guest Check
Artifacts
Kitchen Order
Receipt
Cash Balance
OpenGCs
ArchivedKOs
ClosedGCs
ArchivedGCs
PendingReceipts
ArchivedReceipts
Cash Balance
PendingKOs
PaidReceipts
DisagreedReceipts
ReadyKOs
Add Item
Deliver
Prepare &Test Quality
Create Guest Check
GC KO
UpdateCash Balance
Payment
RecalculateReceipt
RC
CB
7
Example: High Tech Restaurant
OpenGCs
Add ItemGC
KO
KO
KO
KO
Deliver
GC
ArchivedKOs
PrepareReceipt
ClosedGCs
ArchivedGCs
PendingReceipts
GC
RCGC
UpdateCash Balance
Payment
RecalculateReceipt
RC
RC
ArchivedReceipts
Cash Balance
GC
CB
RC
RCGC
KO
Prepare &Test Quality
PendingKOs
Create Guest Check
PaidReceipts
RC
DisagreedReceipts
RC
RC
GC
ReadyKOs
KO
9
Location Uniqueness: An artifact should appear only in one location
Persistence: An artifact should never be lost
Arrival: Can an artifact arrive into a repository?
Revisit: life cycle properties
Paid Receipts
Disagreed Receipts
Receipt ReceiptPaid Receipts
Disagreed Receipts
or
Open GuestChecks
Archived Guest ChecksGuest Check
10
Related Work Emphasis on Data Design as well as Control Flow Design
Document Driven Workflow Systems [Wang,Kumar-BPM05] Case Handling [Aalst et al-DKE05] Vortex [Hull et al-WACC99], [Fu et al-TACAS01] INSYDE [King,McLeod-TOIS85], TAXIS[Mylopoulos et al-
TODS80], …
Constraints on Life-cycles of Objects Object Migration [Su-TCS97] Object Histories [Ginsburg,Tanaka-TODS86] Object Constraint Language …
11
Remainder of the TalkFormalization of Artifact-centric Business Process
ModelsArtifactsTasksOperational Models
Analysis of PropertiesLocation UniquenessPersistenceArrival
Conclusions
12
Artifact An artifact
attributes, methods, states
Similar to object-oriented classes augmented with states Typestate [StromYemini-TSE86] Method schemas
[Abiteboul et al–PODS90] Method structures
[Hull et al–FODO88] UML OCL, Alloy [Jackson-TOSEM02]
Pending
Active
Payment Completed
Canceled
Guest Check
addOrder
setCancelDa
te
receiptRequest
setPaymentDate
addOrder(…)setPaymentDate(…)
customerNametableNopaymentDate
ReceiptOrder
data
references
methods
states
OpenGCs
Create Guest Check
GC
13
Task A task describes the actions performed
on artifacts has a set of variables has a guarded state machine
Artifact creationArtifact check out / check in Read/Update artifact data via
artifact methodsRead from external environment
R1.checkOut(order)
read(approvedDate)
order.setApproved(approvedDate)
R2.checkIn(order)
reset
R1Pending Orders
R2Live Orders
LiveOrders
ApproveKO
KO
14
Operational Model
Operational Model O = (A, R, T)A: set of artifact typesR: set of repositoriesT: set of task types
Open
GCs
Add ItemGC
KO
KO
KO
KO
Deliver
GC
Archived
KOs
Prepare
Receipt
Closed
GCs
Archived
GCs
Pending
Receipts
GC
RCGC
Update
Cash Balance
Payment
Recalculate
Receipt
RC
RC
Archived
Receipts
Cash
Balance
GC
CB
RC
RCGC
KO
Prepare &
Test Quality
Pending
KOs
Create
Guest Check
Paid
Receipts
RC
Disagreed
Receipts
RC
RC
GC
Ready
KOs
KO
15
Semantics Configuration
A configuration is derivable from another configuration if …
Execution graph of an operational model and a root configuration is a Kripke structure
18
Location Uniqueness, PersistenceFormalism guarantees location uniqueness and
persistence
Location Uniqueness:Artifact cannot be
checked out by two taskschecked in two repositoriesduplicated
PersistenceAn artifact can not be
deletedoverwritten
19
Checking Arrival
Reachability on execution graph
Open GuestChecks
…
Archived GuestChecks
…
Ci
……
C1
C2 C3
C4…… …
Example: Does a guest check arrive at the archived guest checks repository?
20
Arrival is not decidable
Theorem: It is not decidable to check if an artifact can
arrive into a repository R for an operational model O and
a root configuration of O.
But …
21
without Artifact Creation?Observation
Size of execution graph: InfiniteDomains are infiniteTasks can read values from infinite domains
Finite abstraction of infinite spaceDefine an equivalence relation among configurations
(similar to region approach [Alur-99])
22
Abstraction Example:
- only constant appears in the specification is 10- two scalar variables: cost, amount
amount
cost
11
5
12
5
13
5
14
5…
cost < 10 < amount
4
5
Equivalence class:
11
5
4
5
Abstraction
23
Decidable Fragment
Theorem: It is decidable to check if an artifact can arrive into a
repository R for an operational model O without new artifact
creation, and a root configuration of O.
24
ConclusionsPreliminary results on life cycle properties of
business artifacts
Many interesting questions:More declarative model
Automatic Towards Formal Analysis of Artifact-Centric Business Process Models [Bhattacharya et. al. BPM 2007]
A language for specifying artifact life-cycle propertiesSpecification and Verification of Artifact Behaviors in Business
Process Models [Gerede-07]
Multi-artifact interactionsAutomated design and toolsEvolution of models (business rules)
25
Questions and Comments
Thanks