Integra(ngProcessandData Management:Finally? Marlon Dumas - - PowerPoint PPT Presentation

integra ng process and data management finally
SMART_READER_LITE
LIVE PREVIEW

Integra(ngProcessandData Management:Finally? Marlon Dumas - - PowerPoint PPT Presentation

Integra(ngProcessandData Management:Finally? Marlon Dumas Universityof Tartu ,Estonia JointworkwithRickHull&theACSIProjectTeam 1 KiBP2012, Rome, 15 June 2012 M.C. Escher


slide-1
SLIDE 1

Integra(ng
Process
and
Data
 Management:
Finally?


Marlon
Dumas


University
of
Tartu,
Estonia
 Joint
work
with
Rick
Hull
&
the
ACSI
Project
Team


KiBP’2012, Rome, 15 June 2012

M.C. Escher 1

slide-2
SLIDE 2

Build‐to‐Order
Process


  • Customer
PO
may
be


cancelled
at
any
(me


  • Material
PO
may
be


“rejected”
at
any
(me



Customer Supplier 1 Supplier n […] Customer PO Material PO n Material PO 1 Delivered!

  • Delivered!

Assembled Good

  • 1. Customer produces “Customer PO”
  • 3. Work orders partitioned into “Material POs”
  • 4. Suppliers deliver the materials
  • 5. Products are assembled

Assembler

  • 6. Products are shipped

Research each line item to find a supplier

  • 2. Research on each line item (work order)

2

slide-3
SLIDE 3

Tradi(onal
Process
Decomposi(on


Decompose
 customer
 PO
 Manage
 Material
 POs
 Assemble
 Ship


Manage
supplier
 cancella(on


3

slide-4
SLIDE 4

High‐Level
BPMN
Model


4

slide-5
SLIDE 5

Data
Model
&
Distribu(on


5

slide-6
SLIDE 6

Great,
now
let’s
glue
it
together…


Customer PO’s Work Orders Materials PO’s Customers + Execution status tracked by assembler’s BPMS + Execution status of processes at each supplier Suppliers’ Catalogues

Decompose
 customer
 PO
 Manage
 Material
 POs
 Assemble
 Ship


Manage
supplier
 cancella(on


6 Acks to Lior Limonad

slide-7
SLIDE 7

Cancella(on
penalty


for each work order W for each material order M in W if M has been shipped add returnCost(M) to penalty

7

slide-8
SLIDE 8

Tradeoff


8

Data-driven analysis Process-driven analysis How do we get here?

Acks to Lior Limonad

slide-9
SLIDE 9

SOA
to
the
rescue
(Erl
2005)


Process‐ Centric
 Service
 Task
Service
 En(ty
Service
 En(ty
Service
 Task
Service
 En(ty
Service


So many of them? + public services + logic-centric services + utility services

9

slide-10
SLIDE 10

ESB
to
the
rescue…


10

Process‐ centric
Service
 Task
Service
 Task
Service
 Enterprise
Service
Bus
(ESB)

 En(ty
Service
 En(ty
Service
 En(ty
Service
 Logic‐centric
 Service
 U(lity
Service
 Task
Service


slide-11
SLIDE 11

Where’s
the
catch?


ESB

Jim Webber 2009, Guerrilla SOA, QCon

ESB: Erroneous Spaghetti Box?

11

slide-12
SLIDE 12

Slide by Rick Hull et al.

What
went
wrong?


12

Data Modeling

Process Modeling

If high priority customer and paying by AMEX permit ship before payment

Core BP model is based on activity flows Data is often modeled separately, not related to

  • ther conceptual models

Another conceptual model for analytics and dashboards

Lack of coherence adds substantial complexity to already complex systems

One conceptual model for rules and policies

slide-13
SLIDE 13

Didn’t
we
think
about
this
before?


  • C.J.
Rosenquist.
“En(ty
Life
Cycle
Models
and
their


Applicability
to
Informa(on
Systems
Development
 Life
Cycles”.
The
Computer
Journal
25(3),
1982.


  • M.
Jackson.
System
Development.
Pren(ce‐Hall,


1983


13

Link from high-levels models to executable models was not developed

Acks to Jorge Sanz (IBM)

slide-14
SLIDE 14

Object‐centric
BPM


  • FlowConnect’s
Business
Object
Model

  • SAP’s
“Business
by
Design”
Status‐and‐Ac(on
Management

  • IBM’s
Object
Lifecycle
Explorer

  • Case
management
(e.g.
FLOWer)


Document
workflows
and
“ac(ve”
documents


  • PDF
workflows,
document
rou(ng

  • Ac(veXML


Collabora(on
hubs


  • EasyChair,
ConfHub


14

Pieces
of
the
puzzle


slide-15
SLIDE 15

15

FlowConnect
Business
Object
Model


Redding et al. 2008

slide-16
SLIDE 16

Ac(veXML



<newspaper
xmlns=hjp://lemonde.fr

…>



<(tle>Le
Monde</(tle>

 <date>…</date>

 <edi(on>Paris</edi(on>



<weather>



%
service
call

 <
axml:call
service=”forecast@weather.com”
>

 <city>Paris</city>

 <unit>Celsius</unit>

 <
/axml:call>



</weather>


16

Abiteboul et al. 2008

slide-17
SLIDE 17

Slide by Rick Hull et al.

Collabora(on
hubs
(EasyChair)


17

PC members Authors Track chairs PC members Authors

BPM 2012 KiBP 2012

PC Chairs PC chairs “Supportive” rather than “Controlling” Can this become an alternative model to traditional service orchestration?

slide-18
SLIDE 18

Assembling
the
puzzle


Ar8fact‐Centric
 Service
 Interopera8on
 Hub
 
(ACSI
Hub)


Ar8facts


  • Business‐meaningful

  • Encapsulate
data
&

  • pera(ons

  • Non‐trivial
lifecycles


Data
Virtualiza8on


  • intensional
data


linked
to
services


Service
Interopera8on
Hub


  • Manages
service
collabora,ons

  • Observes
messages
from


par(cipa(ng
services


  • Maps
messages
to
data
&
events


18

slide-19
SLIDE 19

Slide by Rick Hull et al.

  • Insight: Gives business managers a unified, end-to-end

view of their business operations

  • Communication: Numerous stakeholders have a

common basis for understanding

  • Actionable: Natural mapping to organization & IT levels

Default
 info
 Customer
 info
 Asset
info
 Drao,
Final
 proposals 
 Acquisi(on
 info 
 Credit
ra(ng,
 etc.
 Payment
 history 


.
.
.
 .
.
.
 .
.
.
 Info model (Nested data model)

Created Draft Signed Active Early End Completed Failed Expired Offered Lost

Lifecycle model (FSM)

Ar(facts


19

slide-20
SLIDE 20

Build-to-Order Artifacts 


C u s t

  • m

e r P O Work Order Material PO Assembly

Handles a Customer PO, from creation to delivery Manages work

  • rder spawned

for a customer PO line item Manages a Material PO, from launch to delivery (or “rejected”) Manages sub- assemblies and final assemby

20

slide-21
SLIDE 21

Build to Order ASC Performers, teams

Human Task mgmt

Human Interaction Handler Supported (incoming) service call handler Handler for queries against public artifacts/ attributes Consumed (outbound) service call handler Clock handler

Material PO Customer PO Work Order

Artifact Types Internal Service Calls Handler Automated Handler Task

Ar(fact
Service
Container
(ASC)


ASC insulates the artifacts from their environment & maintains intensional artifact data

21

slide-22
SLIDE 22

ACSI
Hub
 P1
 P2
 Pn
 … participants …

ACSI
Hub


service binding Ar(fact
 Containers


22

slide-23
SLIDE 23

ESB
Solu(on
(SOA
Hub)


Customer Supplier Manufacturer Orchestration Hub

Send Customer PO Receive CPO ship date Receive CPO shipment

  • Cust. Cancel CPO

Send Materials PO Receive MPO ship date Receive MPO shipment Send Cancel MPO Receive Supplier abort MPO Receive Customer PO Send CPO ship date Send CPO shipment Receive Cancel CPO Receive Materials PO Send MPO ship date Send MPO shipment Receive Cancel MPO Send Supplier abort MPO

  • SOA hub (e.g. BPEL-based) aggregates data and

forwards messages to appropriate services

23

slide-24
SLIDE 24

ACSI
Hub


Customer Supplier Manufacturer ACSI Hub

Create Customer PO Subscribe to CPO ship date Subscribe to CPO shipment

  • Cust. Cancel CPO

Create/initialize Materials PO Subscribe to MPO ship date Subscribe to MPO shipment Write Cancel MPO Subscribe to Supplier abort MPO Subscribe to new Customer PO Write CPO ship date Update CPO because shipped Subscribe to Cust. Cancel CPO Subscribe to new Materials PO Update MPO ship date Update MPO shipment Subscribe to Cancel MPO Write Supplier abort MPO

Customer PO Line Item Material PO Artifact schema holds data models and lifecycle models Artifact instances hold data about process status Participating services: Manipulate artifact instances, and Subscribe to changes in artifact instances

24

slide-25
SLIDE 25

Scenario:
Adding
cancella(on


Customer Supplier Manufacturer SOA Orchestration Hub

Send Customer PO Receive CPO ship date Receive CPO shipment

  • Cust. Cancel CPO

Send Materials PO Receive MPO ship date Receive MPO shipment Send Cancel MPO Receive Supplier abort MPO Receive Customer PO Send CPO ship date Send CPO shipment Receive Cancel CPO Receive Materials PO Send MPO ship date Send MPO shipment Receive Cancel MPO Send Supplier abort MPO

Request CPO cancel penalty Return cancel CPO penalty Request MPO cancel penalty Return cancel MPO penalty

Supplier needs to support penalty method We have to explicityly loop through all relevant Supplier penalties

25

slide-26
SLIDE 26

Scenario:
Adding
cancella(on


Customer Supplier Manufacturer ACSI Hub

CreateCustomer PO Subscribe to CPO ship date Subscribe to CPO shipment

  • Cust. Cancel CPO

Create/initialize Materials PO Subscribe to MPO ship date Subscribe to MPO shipment Write MPO shipment received Write Cancel MPO Subscribe to Supplier abort MPO Subscribe to new Customer PO Write CPO ship date Update CPO because shipped Subscribe to Cust. Cancel CPO Subscribe to new Materials PO Update MPO ship date Update MPO shipment Subscribe to Cancel MPO Send Supplier abort MPO

Customer PO Work Order Material PO Consider “Request CPO cancel penalty” from Customer Answer is computable as query against artifacts, involving extensional and intensional data

Request CPO cancel penalty

26

slide-27
SLIDE 27

Is
that
it?

 Or
can
we
converge
further?


FSM
model
is
 “control‐centric”,
 procedural
 Data
is
 subordinated
to
 transi(ons
in
the
 FSM


27

slide-28
SLIDE 28

In
search
of
a
unifying
model


Transformation Executives Enterprise Process Owners Business Architects Business Analysts Subject Matter Experts Solution Designers

Business vocabulary Business milestones Business goals Business rules

? ? ?

Executable Models Business performance measures

Guard-Stage-Milestone (GSM) Model

Data
 Process


28

slide-29
SLIDE 29

Customer
PO
Lifecycle
(top
level)


Creating Material PO’s All Line Items

  • rdered

Material PO Rejected & affected Line Items researched

Initiate Customer PO Assembling Request to begin assembling & enough Line Items to start Generating Report Report requested Top of each hour Assembly completed Report generate d Assembly cancelled

Data Attributes

Customer PO cancelled Stage Body: Clusters activities intended to attain one (of perhaps multiple) milestones Milestone:

  • Business-relevant
  • perational objective
  • Closes stage
  • Controlled by events

and/or conditions

Guard:

Has the effect of

  • pening the stage

Expressed as event and/or condition Info Model: Holds business-relevant data, incl. artifact status

29 Slide by Rick Hull et al.

slide-30
SLIDE 30

Opera(onal
Seman(cs
in
a
Nutshell


Creating Material PO’s Material POs sent

Assembling Generating Report Report requested Every hour Report generated Assembly abandoned

Data Attributes

Request for assembly & enough materials to start

… Status attributes … Stage (active

  • r

inactive) Milestones (true or false)

Customer PO cancelled Material PO Rejected & affected Line Items researched Initiate Customer PO

Stylized ECA Guard: Event/Cond  open stage Milestone: Event/Cond  close stage and set milestone status attribute to “true”

Assembly finished

30 Slide by Rick Hull et al.

slide-31
SLIDE 31

Initiate Customer PO

Customer PO cancelled … Data Attributes

Substages
and
Atomic
stages


Creating Material PO’s Material POs sent

Planning Material PO’s Launching & Sending Material PO’s

Assembling Generating Report

… Status attributes milestones … Stage (active

  • r

inactive) Atomic stage; has a “task” inside

  • Atomic stage = task
  • 3 kinds of task:
  • Two-way service call that

“environment” fulfils (includes assignments)

  • One-way message to

environment or other artifact

  • Request creation of new

artifact instance

  • Tasks may read and/or write

data attributes

Launching Work Orders

Material PO Rejected & affected Line Items researched

31 Slide by Rick Hull et al.

slide-32
SLIDE 32

Customer PO cancelled

… Data Attributes

Back
to
the
working
scenario


Creating Material PO’s Material POs sent

Planning Material PO’s Launching Work Orders Launching & Sending Material PO’s

Assembling Generating Report

… Status attributes milestones … Stage (active

  • r

inactive)

Material PO Rejected & affected Line Items researched Initiate Customer PO

32 Slide by Rick Hull et al.

slide-33
SLIDE 33

Slide by Rick Hull et al.

Customer PO cancelled Creating Material PO’s

Planning Material PO’s Launch Work Item Artifact Instances Launching & Sending Material PO’s

This milestone becomes true once all planned Material PO’s have been sent Becomes true when all Work Items not in a Material PO have been Researched

Material PO’s planned Material PO’s sent

This guard becomes true once Material POs are planned if c.`Material POs planned’ ∨ c.‘Material POs’ -> exists(m: m.Rejected)

  • n c.‘Material POs

sent’.onAchieved() if c.’Work Items’ -> forall(w: ‘Potential Suppliers Identified’ ∨ c.’Material POs’ -> exists(m: w in m.Items ∧ ¬m.Rejected) ) Material POs sent Material PO Rejected & affected Line Items researched Initiate Customer PO

33

slide-34
SLIDE 34

Interac(ons
within
&
across
ar(fact
types


Creating Material PO’s Material POs sent

Planning Material PO’s Launching Work Orders Launching & Sending Material PO’s

Initiate Customer PO Assembling Generating Report

Customer PO Work Item Material PO

Researching

  • wning

Customer PO rejected Initialized Potential suppliers identified

. . .

Initializing Work Item created Initialized Req. Order created Sent to Manu. Received by Manu. Building Initializing

All Built

Delivering All Built Rejected Customer PO cancelled Material PO Rejected & affected Line Items researched

34 Slide by Rick Hull et al.

slide-35
SLIDE 35

Where
does
all
this
takes
us?


ACSI Hub

Adapted from Jim Webber 2009

Ar(fact
1
 Ar(fact
2
 Ar(fact
2
 Ar(fact
4
 Ar(fact
5


35

ESB / Orchestation Hub

slide-36
SLIDE 36

What’s
in
there
for
KiBP? 


  • In
tradi(onal
BPM,
data
is
fragmented:

  • Ergo,
business
rules
are
fragmented


– Control‐flow
dependencies
 – Branching
condi(ons,
transforma(ons
and
 calcula(ons
executed
by
the
BPMS
 – Business
rules
in
the
applica(on
layer
 – Triggers


  • In
ar(fact‐centric
processes,
all
data
is


conceptually
in
the
ar(facts



– Richer
possibili(es
for
KR
techniques


36

slide-37
SLIDE 37

Challenges


Verifica(on
&
 consistency
checking


  • Challenge:
infinite
state


spaces


Reverse‐engineering


  • Challenge:
Discovering


business
ar(facts,
stages,
 milestones,
interac(ons
 from
execu(on
logs


Scalability


  • Challenge:
Op(mizing


materializa(on/access
to
 intensional
data


37

http://acsi-project.eu