04 DasarPemodelanPB
04 DasarPemodelanPB
Pertemuan 4
Dasar Pemodelan Proses
• OMG standard
• Cocok untuk mendeskripsikan model untuk process discovery, analisis, dan
implementasi
• Bisa menggunakan banyak tools, contoh :
• Bizagi Process Modeler (free)
• Draw.io
• dll
BPMN Symbol
start end
activity event gateway sequence
flow
Let’s start modeling
Order-to-cash
An order-to-cash process is triggered by the receipt of a purchase order from a customer. Upon receipt,
the purchase order has to be checked against the stock to determine if the the requested item(s) are
available. Depending on stock availability the purchase order may be confirmed or rejected.
If the purchase order is confirmed, an invoice is emitted and the goods requested are shipped. The
process completes by archiving the order.
Proses order-to-cash dipicu oleh diterimanya pesanan pembelian dari pelanggan. Setelah diterima,
pesanan pembelian harus diperiksa ketersediaan stoknya untuk menentukan apakah barang yang
diminta tersedia. Tergantung pada ketersediaan stok, pesanan pembelian dapat dikonfirmasi atau
ditolak.
Jika pesanan pembelian dikonfirmasi, faktur dikeluarkan dan barang yang diminta dikirimkan.
Prosesnya selesai dengan mengarsipkan pesanan.
Let’s start modeling – break it down
Order-to-cash
Check stock
availability
Purchase
order
received
Let’s start modeling – break it down
Order-to-cash
• An order-to-cash process is triggered by the receipt of a purchase order from a customer.
• Upon receipt, the purchase order has to be checked against the stock to determine if the the requested item(s) are
available.
• Depending on stock availability the purchase order may be confirmed or rejected.
• If the purchase order is confirmed, an invoice is emitted and the goods requested are shipped. The process completes
by archiving the order.
end
activity
Reject order event
Items not in
Order
stock
rejected
Check stock split gateway end
availability
Purchase event
order Items in
received stock Confirm Emit Archive
Ship goods
start order invoice order
Order
event fulfilled
Naming conventions
end
An end event signals that a process instance has event
Reject order
Items not in
Order
stock
rejected
Check stock
availability
Purchase
order Items in
received stock Confirm Emit Archive
Ship goods
order invoice order
Order
fulfilled
First try
Order-to-cash
Reject order
Items not in
Order
stock
rejected
Check stock
availability split Emit invoice
Purchase
order Items in
received stock Confirm Emit Archive
Ship goods
order invoice order
Order
split join fulfilled
Ship goods
A little more on gateways: XOR Gateway
condition
5
A little more on gateways: AND Gateway
Reject order
Items not in
stock Order
rejected
Check stock
availability XOR-split Send invoice
Purchase
order Items in
received stock
Archive
Confirm order
order
Order
AND-split AND-join fulfilled
Ship goods
Between XOR and AND
Order distribution process
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. Afterwards, the order is registered and the process completes.
Solution 1
Order distribution process
XOR-split XOR-join
AND-split AND-join
Solution 2
Order distribution process
AND-split AND-join
XOR-split XOR-join
OR Gateway
cond1
• 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 XOR-split leads to two end events – different outcomes (cf. order
management example)
Rework and repetition
B B
A
= A
C C
How this process starts? How it ends?
Collect Sort
mail mail
New mail Document
arrived requisition
Not compiled
Check acceptable Compile
Register
mail for document
mail
compliance requisition
Document
New email Acceptable response
arrived
prepared
Prepare
Capture
document
matter details
response
Physical
file
printed
Capture party Print
Pay fee
details physical file
What’s wrong with this model? How to fix it?
X
Process Modelling Viewpoints
Organization
Who?
Lanes &
Pools
What?
Tasks When?
Events
Flows
Gateways
Which?
Data Objects,
Data / Materials Stores
Organizational Elements in BPMN – Pools & Lanes
Pool
Captures a resource class. Generally used to model a business party (e.g. a
whole company)
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)
Pool
Order-to-cash process with lanes
Message Flow
Pool 2
Pool 2
Receive
Pool 1
Pool 1
Send Receive
Send
36
Order-to-cash process with a black-box customer pool
Pools, Lanes and Flows: syntactic rules
1. A Sequence Flow cannot cross the boundaries of a Pool (message flows can)
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
One more guideline…
Which?
Data Objects,
Data / Materials Stores
BPMN Information Artifacts
Emit
• Can be physical or electronic
invoice
Send
invoice
Confirm Archive
Items in order order
stock Order
fulfilled
Check stock
Ship goods
availability
Purchase
order Items not in
received stock
Reject order
Order
rejected
Purchase Invoice
Order Purchase
Purchase Purchase Send Order
Order Order invoice
[checked]
Confirm Archive
Items in order order
stock Order
fulfilled
Check stock
Ship goods
availability
Purchase
order Items not in
received stock
Reject order
Order Orders DB
rejected Purchase Shipment
Order notice
Warehouse DB
Purchase Purchase
Order Order
[rejected] [approved]
Clear vendor
Ship goods
line items
BPMN Poster (link in “Readings” page)