Start Event
Start Event menandai titik di mana sebuah proses dimulai. Setiap proses BPMN harus memiliki minimal satu Start Event, dan sebuah proses bisa memiliki lebih dari satu Start Event jika ada beberapa cara yang berbeda untuk memulai proses tersebut.
Bentuk: Lingkaran dengan garis tipis tunggal
Aturan: Hanya boleh memiliki Sequence Flow keluar, tidak boleh ada Sequence Flow masuk
None Start Event
Simbol: Lingkaran kosong (tanpa simbol di dalamnya)
Artinya: Proses dimulai tanpa trigger yang spesifik. Biasanya berarti proses dimulai secara manual atau pemicunya tidak perlu dimodelkan.
Kapan digunakan:
- Saat trigger proses tidak relevan untuk ditampilkan
- Untuk sub-process yang dipanggil dari proses induk
- Saat membuat proses sederhana untuk tujuan komunikasi
Contoh:
"Proses Pengajuan Cuti" — ketika seorang karyawan memutuskan untuk mengajukan cuti, proses dimulai. Kita tidak perlu memodelkan apa yang memicunya (bisa karena karyawan ingin liburan, sakit mendadak, atau urusan keluarga).
Kesalahan umum:
Menggunakan None Start Event padahal sebenarnya ada trigger spesifik yang penting untuk diketahui (misalnya "dimulai setiap tanggal 1 bulan" — seharusnya Timer Start Event).
Message Start Event
Simbol: Amplop di dalam lingkaran
Artinya: Proses dimulai ketika sebuah pesan (message) diterima dari peserta lain — bisa dari pelanggan, sistem eksternal, organisasi lain, atau Pool lain dalam diagram yang sama.
Kapan digunakan:
- Proses dimulai karena ada permintaan masuk (misalnya: email, formulir, API call, dokumen dikirim)
- Proses yang hanya berjalan jika ada pihak yang berinisiatif menghubungi
Contoh:
- "Proses Pembukaan Rekening" — dimulai ketika calon nasabah mengirimkan formulir permohonan
- "Proses Penanganan Komplain" — dimulai ketika pelanggan mengirimkan email komplain
- "Proses Pemrosesan Pesanan" — dimulai ketika sistem e-commerce mengirim order baru
Hubungan dengan Message Flow:
Message Start Event biasanya memiliki Message Flow yang masuk dari Pool pengirim. Pesan ini harus memiliki nama yang sama di pengirim dan penerima.
Kesalahan umum:
- Menggunakan Message Start Event untuk proses internal yang tidak melibatkan peserta lain
- Tidak memberi nama pada pesan yang dikirim/diterima
Timer Start Event
Simbol: Ikon jam di dalam lingkaran
Artinya: Proses dimulai secara otomatis pada waktu atau jadwal tertentu — bisa pada tanggal/waktu spesifik, secara berulang, atau setelah durasi tertentu.
Tiga jenis timer:
| Tipe | Keterangan | Contoh |
|---|---|---|
| Date | Pada tanggal dan waktu tertentu | "Proses dimulai 1 Januari 2025 pukul 00:00" |
| Cycle | Berulang dengan pola tertentu | "Setiap hari Senin pukul 08:00" atau "Setiap awal bulan" |
| Duration | Setelah jangka waktu tertentu dari suatu titik | Jarang digunakan di Start Event |
Kapan digunakan:
- Laporan bulanan/mingguan yang dibuat secara otomatis
- Proses pembayaran gaji setiap tanggal 25
- Proses backup data harian
- Rekonsiliasi yang dijadwalkan setiap akhir hari kerja
Contoh:
"Proses Penerbitan Laporan Keuangan Bulanan" — dimulai otomatis setiap tanggal 1 bulan berikutnya pukul 07:00.
Kesalahan umum:
Menggunakan None Start Event untuk proses yang sebenarnya berjalan terjadwal. Ini penting karena mempengaruhi cara sistem mengeksekusi proses.
Conditional Start Event
Simbol: Dokumen bergaris di dalam lingkaran
Artinya: Proses dimulai ketika sebuah kondisi bisnis tertentu menjadi benar (true). Berbeda dengan Timer, kondisi ini tidak terikat pada waktu — kondisi bisa menjadi benar kapan saja.
Kapan digunakan:
- Proses yang dipicu oleh perubahan state data atau kondisi bisnis
- Sering digunakan dalam konteks event-driven architecture
Contoh:
- "Proses Penagihan" — dimulai ketika saldo piutang pelanggan melebihi batas kredit
- "Proses Restocking" — dimulai ketika stok gudang turun di bawah batas minimum
- "Proses Review Kinerja" — dimulai ketika skor KPI karyawan di bawah target selama 3 bulan berturut-turut
Kesalahan umum:
Mengacukan Conditional Start Event dengan Exclusive Gateway. Gateway digunakan untuk memilih jalur setelah sebuah aktivitas; Conditional Start Event digunakan untuk memulai proses berdasarkan kondisi.
Signal Start Event
Simbol: Segitiga di dalam lingkaran
Artinya: Proses dimulai ketika sebuah sinyal tertentu diterima. Sinyal berbeda dari pesan (message) — sinyal disiarkan ke semua penerima yang mendengarkan, tanpa harus ditujukan ke penerima spesifik.
Perbedaan Signal vs Message:
| Aspek | Message | Signal |
|---|---|---|
| Penerima | Spesifik (satu penerima) | Siaran (semua yang mendengarkan) |
| Pengirim | Harus diketahui | Tidak harus diketahui |
| Analoginya | Telepon (1-ke-1) | Siaran radio (1-ke-banyak) |
Contoh:
- "Proses Notifikasi Karyawan" — dimulai ketika sinyal "Kebijakan Baru Dirilis" diterima. Banyak proses berbeda bisa dimulai oleh sinyal yang sama.
- "Proses Update Harga" — dimulai ketika sinyal "Kurs Dolar Berubah Signifikan" diterima oleh berbagai departemen sekaligus.
Multiple Start Event
Simbol: Bintang segi lima di dalam lingkaran
Artinya: Proses bisa dimulai oleh salah satu dari beberapa trigger berbeda. Cukup satu trigger yang terpenuhi untuk memulai proses.
Kapan digunakan:
- Proses yang sama bisa dipicu oleh beberapa sumber berbeda
- Alternatif dari membuat banyak Start Event terpisah
Contoh:
"Proses Penanganan Klaim Asuransi" bisa dimulai oleh: pesan dari nasabah, formulir online, atau telepon ke call center. Daripada tiga Start Event terpisah, gunakan satu Multiple Start Event.
Parallel Multiple Start Event
Simbol: Tanda + di dalam lingkaran
Artinya: Proses dimulai hanya ketika semua trigger yang didefinisikan terpenuhi secara bersamaan.
Kapan digunakan:
Jarang digunakan dalam praktik. Biasanya untuk proses yang benar-benar membutuhkan beberapa kondisi sekaligus untuk mulai.
Contoh:
"Proses Akuisisi" — dimulai hanya ketika: (1) persetujuan direksi diterima, DAN (2) due diligence selesai, DAN (3) perjanjian NDA ditandatangani.
Escalation Start Event
Simbol: Tanda seru di dalam lingkaran
Artinya: Memulai sebuah sub-process ketika ada eskalasi dari proses yang lebih rendah. Hanya valid sebagai Start Event di dalam Event Sub-Process.
Contoh:
"Sub-Process Penanganan Eskalasi Komplain" — dimulai ketika komplain di proses utama dieskalaasi karena tidak selesai dalam 24 jam.
Error Start Event
Simbol: Petir di dalam lingkaran
Artinya: Memulai sebuah Event Sub-Process ketika terjadi error di proses induk. Hanya valid sebagai Start Event di dalam Event Sub-Process.
Contoh:
"Sub-Process Penanganan Error Sistem" — dimulai ketika terjadi kegagalan koneksi database di proses utama. Sub-process ini kemudian mencatat log, mengirim notifikasi, dan melakukan rollback.
Ringkasan Perbandingan
| Start Event | Dipicu Oleh | Frekuensi Penggunaan |
|---|---|---|
| None | Manual / tidak didefinisikan | ⭐⭐⭐⭐⭐ Sangat umum |
| Message | Pesan dari peserta lain | ⭐⭐⭐⭐⭐ Sangat umum |
| Timer | Jadwal / waktu tertentu | ⭐⭐⭐⭐ Umum |
| Signal | Siaran sinyal | ⭐⭐⭐ Cukup umum |
| Conditional | Kondisi bisnis menjadi benar | ⭐⭐ Jarang |
| Multiple | Salah satu dari beberapa trigger | ⭐⭐ Jarang |
| Escalation | Eskalasi (hanya di Event Sub-Process) | ⭐⭐ Jarang |
| Error | Error (hanya di Event Sub-Process) | ⭐⭐ Jarang |
| Parallel Multiple | Semua trigger terpenuhi | ⭐ Sangat jarang |
Selanjutnya: End Event →