Post on 03-Nov-2020
Advanced Process Modeling
Fundamental of Business Process [IS611083]
Lecturer : 1. Dwi Mustika K, S.Kom., M.Kom (DMK)
2. Yudha Saintika, S.T., M.T.I (YUS)
Sub Capaian Pembelajaran MK
“Mahasiswa mampu memahami konsep pemodelan proses yang penting maupun pemodelan proses lanjutan
menggunakan BPMN”
Sub Capaian Pembelajaran MK
We are still here !!
Review Tugas
• What is the difference between data objects and data stores?
• What is the difference between pools and lanes?
Quick recap from Week 4
• Process Decomposition
• Process Reuse
• Handling Event
Agenda
PROCESS DECOMPOSITION
Process decomposition
8
Process decomposition
An activity in a process can be decomposed into a “sub-process”
Use this feature to:1. Improve understanding by breaking down large models
2. Identify parts that should be:
• repeated
• executed multiple times in parallel
• interrupted, or
• compensated
Collapsed
Sub-process
Expanded Sub-process
TaskTask
Activities
Example: Sub-Process
Process
Invoice
Process Invoice
Check Invoice
Mismatches
Enter Invoice /
Credit Note
Details
mismatch
exists
no
mismatches
Block Invoice
Invoice
received
Process
Payment
10
Identify possible sub-processes
11
Acquire raw materials
Ship and invoice
Solution
The refactored model
Check Credit
Record
Receive and
Validate
Order...
Enter Order
Order
received
...Check Credit
Contact
customer
account rep.
Clear Order
Credit not
available
...
Level 3
Level 4
Level 5
Process
Inquiry and
Quote
Credit
available
Example: Modelling process hierarchies
Chain of (high-level) processes an organisation performs in order to achieve a business goal, e.g. deliver a product or service to the market.
Value chain modelling
“is predecessor
of”
Business
process
Linking value chains with process models
Process
model for
this process
is available
When should we use sub-processes?
Guidelines: modeling levels
Use sub-processes when the model becomes too large:• Hard to understand
• Increased error probability
Level 1 – start with value chain
Level 2 – add main decisions and handoffs (lanes)
Level 3+ – add procedural aspects:• Parallel gateways
• Data objects, data stores
• Exception handling
• And as much detail as is relevant
Decomposition drivers:• Logical: group elements meaningfully (e.g. common business object)
• Structural: up to 30 nodes (activities, events, gateways)
PROCESS REUSE
By default, a sub-process is “embedded” into its parent process (i.e. it is stored within the same file)
In order to maximize reuse, it is possible to “extract” the sub-process and store it as a separate file in the process model repository
Such a sub-process is called “global” model, and is invoked via a “call” activity
Call
activity
(normal)
activity
Process Reuse
Call activity is the
default choice to
maximize
reusability
Example: process reuse
Sub-processes: syntax
Sequence flows cannot cross sub-process boundaries• Use start/end events
Message flows can cross sub-process boundaries• To indicate messages emanating from/incoming into the
sub-process
Start with at least one start event
• If multiple, first occurring will trigger the sub-process
Finish with at least one end event• The sub-process will complete once all tokens have reached
an end event. May need an (X)OR-split after sub-process to understand what end event(s) have been reached
Example: sub-process with multiple end events
Quote-to-order
Handling Events
A Purchase Order (PO) handling process starts when a PO is received. The PO is first registered. If the current date is not aworking day, the process waits until the following working day before proceeding. Otherwise, an availability check is performed and a PO response is sent back to the customer.
How do we model this scenario?
PO handling
In BPMN, events model something instantaneous happening during the execution of a process
They affect the process flow:• Start
• Intermediate
• End
Events handling
BPMN event types
Untyped Event – Indicates that an instance of the
process is created (start) or completed (end),
without specifying the cause for creation/completion
Start Message Event – Indicates that an instance
of the process is created when a message is
received
End Message Event – Indicates that an instance of
the process is completed when a message is sent
Intermediate Message Event – Indicates that an
event is expected to occur during the process. The
event is triggered when a message is received or
sent
Catching
EndIntermediateStart
Listings
Judiciary
Check P&E Judge Availability
Check Court
Calendar
Request
Sittings ListCourt Calendar
Received
For all Judges
Resolve P&E
Judge
Availability
Change P&E
Schedules
P&E Court
Court
Administra-
tion
Court Calendar
Change Request
Yearly
Schedule
Sent
Sittings List
Received
Start event
(receive)
Intermediate
catching event
(receive)
End event
(send)
Example: message events
Comparison with sending/receiving tasks
Receive
invoice
Send invoice
Send invoice
Invoice
received
Invoice
sent
Invoice
sent
=
=
=
Receive
invoice
Invoice
received
≠
Use message events only when the corresponding activity would simply send or receive a message and do nothing else
So, when to use what?
Start Timer Event – Indicates that an instance of the
process is created at certain date(s)/time(s), e.g. start
process at 6pm every Friday
Intermediate Timer Event – Triggered at certain date(s)/
time(s), or after a time interval has elapsed since the
moment the event is enabled (delay)
EndIntermediateStart
Temporal events
Example: temporal events
Start
event
Intermediate
catching event
Prepare
callover list3 weeks prior
to callover
day
1 week prior
to callover
day
Contact
partiescallover day
Prepare
callover
material
Hold
callover
callover
held
Intermediate
catching event
In a small claims tribunal, callovers occur once a month to set down the matter for the upcoming trials. The process for setting up a callover starts three weeks prior to the callover day, with the preparation of the callover list containing information such as contact details of the involved parties and estimated hearing date. One week prior to the callover, the involved parties are notified of the callover date. Finally, on the callover day, the callover material is prepared and the callover is held.
Coming back to our scenario…
Register PO
PO
Received
Next working day
weekend/
holiday
Check
Availability
Send PO
Responseweekday
PO
fulfilled
A Purchase Order (PO) handling process starts when a PO is received. The PO is first registered. If the current date is not a working day, the process waits until the following working day before proceeding. Otherwise, an availability check is performed and a PO response is sent back to the customer.
PO handling
Multiple start events
The first start event that occurs will trigger an instance of the process
Notify
Purchasing
Officer
PO Response
Received
Error Message
Received
Friday
afternoon
Process PO
Response
A restaurant chain submits a purchase order (PO) to replenish its warehouses every Thursday. The restaurant chain’s procurement system expects to receive either a “PO Response” or an error message. However, it may also happen that no response is received at all due to system errors or due to delays in handling the PO on the supplier’s side. If no response is received by Friday afternoon or if an error message is received, a purchasing officer at the restaurant chain’s headquarters should be notified. Otherwise, the PO Response is processed normally.
Let’s consider this process at a restaurant chain
Stock replenishment
Solution: event-based decision
36
Stock replenishment
Recap: message and timer events
Untyped: indicate start point, state changes or final states.
Message: Receiving and
sending messages.
Timer: Cyclic timer events,
points in time, time spans or
timeouts.
Start EndIntermediate
Catching Throwing
Buatlah diagram dekomposisi untuk proses “mengevaluasi PO bermasalah” pada tugas
individu 1 kemarin!
Level 2 Proses Mengevaluasi PO Bermasalah:
Proses ini dimulai ketika terjadi PO bermasalah. Berdasarkan data status PO yang belum
selesai dari Gudang, maka divisi Logistik akan meminta data PO kepada bagian Purchasing. Data
ini kemudian dievaluasi dengan cara melakukan konfirmasi dengan Perusahaan Supplier. Evaluasi
yang dilakukan meliputi kasus:
1. Supplier belum menerima PO.
2. Barang belum dikirim tetapi PO sudah diterima oleh Supplier.
3. Barang baru dikirim sebagian.
4. Dari barang yang sudah dikirim ada sebagian yang dikembalikan ke supplier karena rusak
(return).
5. Supplier sedang tidak dapat menyediakan barang tersebut.
Untuk semua kemungkinan tersebut, dari point 2 sampai 4 maka divisi logistik akan meminta
konfirmasi dari supplier tentang kesanggupan penyelesaian PO tersebut. Sedangkan untuk point 1
dan 5 maka divisi Logistik akan meneruskan hasil evaluasi tersebut ke bagian Purchasing untuk
ditindaklanjuti.
Latihan di Rumah
Petunjuk Pengerjaan
1. Gunakan kelompok dalam Mata Kuliah SFB (Sistem Fungsional Bisnis)untuk mengerjakan tugas kelompok ini.
2. Tema/Topik akan diadakan secara pengundian. Tema yang tersediaadalah: E-Ticketing, Reservasi Hotel, Obyek Wisata, Kuliner, UKM,
3. Buatlah Value Chain dari organisasi yang kalian tentukan & buatlahdiagram proses bisnis dalam notasi BPMN untuk masing-masing prosesyang terdapat dalam value chain tersebut!. Gunakan semua notasi yangsudah diketahui hingga pertemuan minggu ini.
4. Presentasikan tugas tersebut dengan memuat konten: Latar Belakang,Struktur Organisasi, Value Chain, dan Diagram Proses Bisnis
TUGAS 1 Kelompok
PREPARE FOR QUIZ NEXT WEEK ,
KEEP SPIRIT GUYSSS!!!