Lewati ke konten

Memilih Gateway

Gateway bukan task yang melakukan pekerjaan. Ia mengendalikan divergensi (membuka jalur) atau konvergensi (menggabungkan jalur) sesuai tipe gateway.

Pembayaran belum diketahui dan proses menunggu callback sukses atau batas waktu. Apa jenis kontrol yang paling tepat?

XXOR: pilih satu+AND: aktifkan semua

Gambar 4.1 — XOR dan AND memperlihatkan perilaku divergensi yang berbeda.

Panduan memilih gateway berdasarkan perilaku alur

Diagram sedang dimuat…

/>

Panduan ini menyederhanakan pemilihan berdasarkan kebutuhan. Periksa juga apakah gateway dipakai untuk split atau join; khususnya, XOR join bukan barrier yang menunggu semua cabang.

GatewaySplitJoinKesalahan pemula
XORPilih satu outgoing flow yang kondisinya terpenuhi (atau default)Lanjutkan token yang tiba; bukan barrier sinkronisasiMenganggap XOR join menunggu semua jalur
ANDAktifkan seluruh jalurTunggu token pada semua jalur yang relevanMenghilangkan join lalu menjalankan pekerjaan hilir berkali-kali
ORAktifkan semua jalur dengan kondisi benarSinkronisasi mengikuti jalur yang diaktifkanMemakai OR tanpa memahami token aktif dan join
Event-BasedMenunggu salah satu event kandidatBukan gateway join untuk sinkronisasi umumMemakainya sebagai conditional data decision
ComplexKontrol kombinasi kondisi khususAturan aktivasi yang ditentukan modelMengganti pola biasa tanpa kebutuhan jelas

AND split vs AND join: bentuk gateway sama, fungsi ditentukan oleh koneksi masuk/keluar.
XOR vs conditional flow: kondisi jalur dapat menjadi bagian split; gateway membuat titik keputusan terlihat.
Event-Based vs XOR: yang pertama menunggu kejadian, yang kedua mengevaluasi kondisi/data.

[STANDARD] Semantik detail dan batasan kombinasi perlu dibaca pada OMG BPMN 2.0.2. [BEST PRACTICE] Namai gateway sebagai pertanyaan; labeli outgoing flow dengan jawaban.

Pembayaran sudah disimpan pada variabel ketika token sampai ke titik keputusan: valid atau tidak? Pilih XOR atau event-based dan jelaskan. Lalu ubah requirement: proses menunggu callback sukses atau timer 24 jam. Apa yang berubah?

Ingat: tentukan apakah alur bercabang karena data, semua cabang berjalan, atau event yang datang lebih dulu.