Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3....

44
MTAT.03.231 Business Process Management Lecture 2 – Process Modeling I Marlon Dumas marlon.dumas ät ut . ee 1

Transcript of Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3....

Page 1: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

MTAT.03.231 Business Process Management

Lecture 2 – Process Modeling I

Marlon Dumas

marlon.dumas ät ut . ee

1

Page 2: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Business Process Lifecycle

Page 3: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

1.  Introduction 2.  Process Identification 3.  Essential Process Modeling 4.  Advanced Process Modeling 5.  Process Discovery 6.  Qualitative Process Analysis 7.  Quantitative Process Analysis 8.  Process Redesign 9.  Process Automation 10. Process Intelligence

Page 4: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Purposes  of  process  modeling  

Process  identification

Conformance  and  performance  insightsConformance  and  

performance  insights

Processmonitoring  and  controlling

Executable  processmodel

Executable  processmodel

Processimplementation To-­‐be  process  

modelTo-­‐be  process  

model

Processanalysis

As-­‐is  processmodel

As-­‐is  processmodel

Process  discovery

Process  architectureProcess  architecture

Processredesign

Insights  onweaknesses  and  their  impact

Insights  onweaknesses  and  their  impact

4

•  Communication •  Documentation •  Analysis (e.g. simulation)

•  Automation •  Testing

Conceptual

Conceptual

Executable

Page 5: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Business  Process  Model  and  Nota6on  (BPMN)  • OMG  standard  (nowadays  BPMN  2.0)  • Supported  by  numerous  tools:  bpmn.org  lists  over  70  tools  • Both  for  conceptual  and  executable  models  

Page 6: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

BPMN  from  10,000  miles…    

A  BPMN  process  model  is  a  graph  consis6ng  of  four  types  of  core  elements:  

activity gateway event sequence flow

Page 7: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

A  typical  order-­‐to-­‐cash  process  is  triggered  by  the  receipt  of  a  purchase  order  from  a  customer.  The  purchase  order  has  to  be  checked  against  the  stock  regarding  the  availability  of  the  item(s)  requested.  Depending  on  stock  availability  the  purchase  order  may  be  confirmed  or  rejected.    If  the  purchase  order  is  confirmed,  an  invoice  is  emiSed  and  the  goods  requested  are  shipped.  The  process  completes  by  archiving  the  order  or  if  the  order  is  rejected.  

Let’s  start  modeling  Order-­‐to-­‐cash  

Page 8: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

BPMN  Model  

start event

end event

activity

split gateway

8

Order-­‐to-­‐cash  

Purchaseorderreceived

end event

Ship goods

Orderrejected

Orderfulfilled

Archiveorder

Check stock

Reject order

Confirm order

Items instock

Items not in stock

Check stock availability

Emit invoice

•  Event:  noun  +  past-­‐par6ciple  verb  (e.g.  insurance  claim  lodged)  Naming  conven9ons  

•  Ac6vity:  verb  +  noun  (e.g.  assess  credit  risk)    

Page 9: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Check stock availability

Reject order

Confirm order

Emit invoice Ship goods

Purchaseorder

receivedItems in

stock

Items not in stock Order

rejected

Orderfulfilled

Archiveorder

Process  model  vs  process  instances  –    The  “token  game”  

9

Order  #1  Order  #2  Order  #3  

Page 10: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

A  start  event  triggers  a  new  process  instance  by  genera6ng  a  token  that  traverses  the    sequence  flow  (“tokens  source”)  

An  end  event  signals  that  a  process  instance  has  completed  with  a  given  outcome  by  consuming  a  token  (“tokens  sink”)  

A  liSle  bit  more  on  events…  

10

start event

end event

Page 11: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

[…]   If   the   purchase   order   is   confirmed,   an   invoice   is   emi:ed  and   the   goods   requested   are   shipped   (in   any   order).   The  process  completes  by  archiving  the  order.  […]    

Order-­‐to-­‐cash  example  revisited…  

11

Check stock availability

Reject order

Confirm order

Emit invoice Ship goods

Purchaseorder

receivedItems in

stock

Items not in stock Order

rejected

Orderfulfilled

Archiveorder

Page 12: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Check stock availability

Reject order

Confirm order

Emit invoice Ship goods

Purchaseorder

receivedItems in

stock

Items not in stock Order

rejected

Orderfulfilled

Archiveorder

Check stock availability

Reject order

Confirm order

Purchaseorder

receivedItems in

stock

Items not in stock Order

rejected

Orderfulfilled

Archiveorder

Emit invoice

Ship goods

First  try  

split

split join

12

Order-­‐to-­‐cash  

Page 13: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

XOR-­‐split  è  takes  one  outgoing  branch  

XOR-­‐join  è  proceeds  when  one  incoming  branch  has  completed  

A  liSle  more  on  gateways:  XOR  Gateway  

condition

¬ condition

13

An XOR Gateway captures decision points (XOR-split) and points where alternative flows are merged

(XOR-join)

Page 14: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Example:  XOR  Gateway  

5

Invoice  checking  process  

Page 15: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

A  liSle  more  on  gateways:  AND  Gateway  

15

An AND Gateway provides a mechanism to create and synchronize “parallel” flows.

AND-­‐split  è  takes  all  outgoing  branches  

AND-­‐join  è  proceeds  when  all  incoming  branches  have  completed  

Page 16: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

16

Example:  AND  Gateway  Airport  security  check  

Page 17: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Check stock availability

Reject order

Confirm order

Send invoice

Ship goods

Purchaseorder

receivedItems in

stock

Items not in stock Order

rejected

Orderfulfilled

Archiveorder

Revised  order-­‐to-­‐cash  process  model  

XOR-split

AND-split AND-join

17

Page 18: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

A  company  has  two  warehouses  that  store  different  products:  Amsterdam  and  Hamburg.  When  an  order  is  received,  it  is  distributed  across  these  warehouses:  if  some  of  the  relevant  products  are  maintained  in  Amsterdam,  a  sub-­‐order  is  sent  there;  likewise,  if  some  relevant  products  are  maintained  in  Hamburg,  a  sub-­‐order  is  sent  there.  Agerwards,  the  order  is  registered  and  the  process  completes.  

Between  XOR  and  AND  

18

Order  distribu9on  process  

Page 19: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Solu6on  1  

XOR-split XOR-join

AND-split AND-join

19

Order  distribu9on  process  

Page 20: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Solu6on  2  

20

Order  distribu9on  process  

XOR-split XOR-join

AND-split AND-join

Page 21: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

OR  Gateway  

21

An OR Gateway provides a mechanism to create and synchronize n out of m parallel flows.

OR-­‐split  è  takes  one  or  more  branches  depending  on  condi6ons      OR-­‐join  è  proceeds  when  all  ac9ve  incoming  branches  have  completed  

cond1

condn

Page 22: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Solu6on  using  OR  Gateway  

22

Order  distribu9on  process  

Page 23: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

What  join  type  do  we  need  here?  

23

Page 24: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Beware: Beginner’s Mistake…

Page 25: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Guidelines: Naming Conventions

1.  Give a name to every event and task 2.  For tasks: verb followed by business object name and

possibly complement •  Issue Driver Licence, Renew Licence via Agency

3.  For message events: object + past participle •  Invoice received, Claim settled

4.  Avoid generic verbs such as Handle, Record… 5.  Label each XOR-split with a condition

•  Policy is invalid, Claim is inadmissible

Page 26: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Poll: Which model do you prefer? !"#$%&"'&($)

*+,"&-)

,+*$'

./0#%"1#)

2"%&"/&'&#3

45$1&63)

&-#$7%"#$*)

08/030#$,

9$-$%"#$)

0&7-&6&1"-#)

5"#:0

9$-$%"#$)

+5#&,"')5"#:)

1+,/&-"#&+-

4$'$1#)6&%0#)

08/030#$,

;&<)+5#&,"')

5"#:)

5"%",$#$%0

=:++0$)

-$<#)

08/030#$,

9$-$%"#$)

%$5+%#

!"#$%&'$"()*$&+'

,$"-.

/",

'+

!"#$%&"'&($)

*+,"&-)

,+*$'

./0#%"1#)

2"%&"/&'&#3

45$1&63)

&-#$7%"#$*)

08/030#$,

9$-$%"#$)

0&7-&6&1"-#)

5"#:0

9$-$%"#$)

+5#&,"')5"#:)

1+,/&-"#&+-

4$'$1#)6&%0#)

08/030#$,

;&<)+5#&,"')

5"#:)

5"%",$#$%0

=:++0$)

-$<#)

08/030#$,

9$-$%"#$)

%$5+%#

!"#$%&'$"()*$&+'

,$"-.

/",

'+

./0#%"1#)

2"%&"/&'&#3

45$1&63)

&-#$7%"#$*)

08/030#$,

Page 27: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

One more guideline…

• Model in blocks •  Pair up each AND-split with an AND-join and each XOR-split with a XOR-

join, whenever possible •  Exception: sometimes a XOS-split leads to two end events – different

outcomes (cf. order management example)

Page 28: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Rework  and  repe66on  Address ministerial correspondence In  the  minister’s  office,  when  a  ministerial  inquiry  has  been  received,  it  is  registered  into  the  system.  Then  the  inquiry  is  inves6gated  so  that  a  ministerial  response  can  be  prepared.    The  finaliza6on  of  a  response  includes  the  prepara6on  of  the  response  itself  by  the  cabinet  officer  and  the  review  of  the  response  by  the  principal  registrar.  If  the  registrar  does  not  approve  the  response,  the  laSer  needs  to  be  prepared  again  by  the  cabinet  officer  for  review.  The  process  finishes  only  once  the  response  has  been  approved.    

XOR-join: entry point XOR-split: exit point

28

Page 29: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Quick  Note:  Implicit  vs.  explicit  gateways  

A

B

C

B

C

A=

A

B

C

A

B

C=

29

Page 30: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

What’s  this  process  doing?  

Collectmail

New mailarrived

Sortmail

Registermail

Checkmail for

compliance

Compile documentrequisition

Capture matter details

Acceptable

Not acceptable

Pay fee Capture party details

Printphysical file

Prepare document response

Documentrequisitioncompiled

Documentresponseprepared

Physicalfile

printed

New emailarrived

30

Page 31: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

What’s wrong with this model? How to fix it?

X

Page 32: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Informa6on  Ar6facts  

32

Page 33: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

When? Flows

Gateways

Which?

Data / Materials

What? Tasks Events

Who? Organization

Process Modelling Viewpoints

Lanes & Pools

Data Objects, Stores

Page 34: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Organiza6onal  Elements  in  BPMN  –  Pools  &  Lanes  

34

Pool  Captures  a  resource  class.  Generally  used  to  model  a  business  party  (e.g.  a  whole  company)  

       

Pool

Pool

Lane

Lane

LaneLane

Lane A resource sub-class within a pool. Generally used to model departments (e.g. shipping, finance), internal roles (e.g. Manager, Associate), software systems (e.g. ERP, CRM)

Page 35: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Order-­‐to-­‐cash  process  with  lanes  

Page 36: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

A Message Flow represents a flow of information between two process parties (Pools)

Message

Message  Flow  

36

Pool 2

Poo

l 1

Poo

l 2P

ool 1

Send

Receive

Send Receive

A Message Flow can connect: •  directly to the boundary of a Pool è captures an informative message

to/from that party •  to a specific activity or event within that Pool è captures a message

that triggers a specific activity/event within that party

Page 37: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Order-­‐to-­‐cash  process  with  a  black-­‐box  customer  pool  

37

Page 38: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

1.  The  Sequence  Flow  cannot  cross  the  boundaries  of  a  Pool  2.  Both  Sequence  Flow  and  Message  Flow  can  cross  the  

boundaries  of  Lanes  3.  A  Message  Flow  cannot  connect  two  flow  elements  within  

the  same  pool    

Pools,  Lanes  and  Flows:  syntac6c  rules  

Page 39: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

Which?

Data / Materials

Process Modelling Viewpoints

Data Objects, Stores

Page 40: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

             The  purchase  order  document  serves  as  an  input  to  the  stock  availability  check.  Based  on  the  outcome  of  this  check,  the  status  of  the  document  is  updated,  either  to  “approved”  or  “rejected”.  If  the  order  is  approved,  an  invoice  and  a  shipment  no6ce  are  produced.  

Order-­‐to-­‐cash  process,  again  

40

Check stock availability

Confirm order

Reject order

Send invoice

Ship goodsPurchase

orderreceived

Items not in stock

Items instock

Orderrejected

Orderfulfilled

Archiveorder

Page 41: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

PurchaseOrder

Invoice

Check stock availability

Confirm order

Reject order

Send invoice

Ship goodsPurchase

orderreceived

Items not in stock

Items instock

Orderrejected

Orderfulfilled

Archiveorder

Model  with  informa6on  ar6facts  

PurchaseOrder

41

PurchaseOrder

[checked]

PurchaseOrder

[rejected]

PurchaseOrder

[approved]

PurchaseOrder

Shipmentnotice

Warehouse  DB

Orders  DB

PurchaseOrder

Page 42: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

A  Data  Object  captures  an  ar6fact  required  (input)  or  produced  (output)  by  an  ac6vity.  

•  Can  be  physical  or  electronic  

BPMN  Informa6on  Ar6facts  

42

Emitinvoice

Purchaseorder

Invoice

Retrieve client information

Oracle CRM Client info

A  Data  Store  is  a  place  containing  data  objects  that  must  be  persisted  beyond  the  dura6on  of  a  process  instance.    It  is  used  by  an  ac6vity  to  store  (as  output)  or  retrieve  (as  input)  data  objects.  

Page 43: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

A  Text  Annota;on  is  a  mechanism  to  provide  addi6onal  text  informa6on  to  the  model  reader  

•  Doesn’t  affect  the  flow  of  tokens  through  the  process  

Quick  Note:  BPMN  Text  Annota6ons  

43

Clear vendor line items

For blocked invoices

Ship goods

Includes packaging

Page 44: Lecture 2 – Process Modeling I ·  · 2015-02-161. Introduction 2. Process Identification 3. Essential Process Modeling 4. Advanced Process Modeling 5. Process Discovery 6. Qualitative

BPMN  Poster  (link  in  “Readings”  page)  

44