Dalam BPMN ada tiga jenis Event yaitu start events, intermediate events dan end events. Ketiga jenis event ini dapat menangkap (catching event) atau mentrigger proses (throwing event). Catching event dapat digunakan saat:
Throwing events adalah event yang dapat:
Secara teknis, Blank/None start event digunakan saat trigger untuk memulai sebuah process instance belum ditentukan secara spesifik. Sebagai contoh, None start event digunakan saat process instances dimulai dengan melakukan pemanggilan API melalui method startProcessInstanceBy.
Subproses selalu dimulai oleh None/Blank Event.
Start event dengan tipe Timer digunakan untuk memulai sebuah proses pada waktu yang telah ditentukan. Notasi ini digunakan untuk proses yang bisa dimulai hanya sekali saja dan proses yang harus dimulai pada interval waktu yang spesifik.
Sebuah subproses tidak bisa memiliki sebuah start event bertipe Timer
Start event dengan tipe message dapat digunakan untuk memulai sebuah proses. Berbeda dengan tipe signal, Message event selalu diarahkan ke satu orang penerima. Sebuah process dapat dimulai dengan menggunakan salah satu dari dua pesan yang berbeda. Sebagai contoh, dapat dilihat pada diagram di bawah ini. Order fulfillment dapat dimulai berdasarkan Message adanya order dari web atau dari fax.
Hal-hal yang harus dipenuhi saat sebuah definisi proses dimulai dengan Message event adalah:
Start event bertipe Signal dapat digunakan untuk memulai sebuah process instance. Hal-hal yang harus dipenuhi saat sebuah definisi proses dimulai dengan Signal event adalah:
Start event bertipe conditional dapat digunakan untuk memulai sebuah proses dengan mengevaluasi sejumlah kondisi. Sebuah proses dapat memiliki satu atau lebih start event bertipe conditional. Hal-hal yang harus diperhatikan saat sebuah definisi proses dimulai dengan Conditional event:
Intermediate Event atau acara perantara dalam Business Process Model and Notation (BPMN) adalah jenis event atau acara yang terjadi di tengah-tengah jalur alur suatu proses bisnis. Intermediate event digunakan untuk menunjukkan kejadian atau kondisi yang mempengaruhi jalannya suatu proses bisnis, tetapi tidak memulai atau mengakhiri proses.
Intermediate event dapat terjadi dalam bentuk sinyal (signal), pesan (message), waktu (timer), kesalahan (error), penanganan (compensation), atau kondisi (conditional). Setiap jenis intermediate event memiliki arti dan fungsi yang berbeda-beda dalam proses bisnis.
Contoh intermediate event dalam BPMN adalah ketika suatu tugas harus menunggu persetujuan dari pihak lain sebelum dapat dilanjutkan. Event ini dapat direpresentasikan sebagai intermediate event tipe "Sinyal" atau "Pesan" yang menunjukkan bahwa tugas tersebut berhenti dan menunggu pemberitahuan atau sinyal dari pihak yang berwenang. Setelah menerima sinyal atau pesan, tugas tersebut dapat dilanjutkan.
Terminate event berfungsi untuk mengakhiri sebuah scope dan semua yang terkandung di dalamnya. Terminate event ini berguna jika kita memiliki aliran paralel dalam suatu proses dan ingin segera menggunakan semua token yang tersedia dalam scope yang sama. Terminate event pada tingkat instance proses akan mengakhiri seluruh instance, dan seluruh sub prosesnya.
Sumber: Buku Tanya Jawab BPMN & Camunda (2023), Ditulis oleh Wisnu Manupraba & Novi Setiani