بوابات BPMN
بوابات BPMN
كل عملية تجارية حقيقية تتفرع في مرحلة ما. طلب ما إما يُوافق عليه أو يُرفض. عملية شحن تنتظر تأكيد الدفع وتجهيز المخزن معًا قبل المضي قدمًا. طلب قرض قد يسلك مسارًا سريعًا أو معياريًا أو كليهما في آنٍ واحد، بحسب درجة المتقدم. يُمثَّل هذا كله في BPMN بعنصر واحد متعدد الاستخدامات: البوابة (Gateway)، ورمزها معين (◇).
تتحكم البوابات في كيفية انقسام تدفق التسلسل واندماجه. بوابة الانقسام (Split) لها مدخل واحد وعدة مخارج. بوابة الاندماج (Join) لها عدة مداخل ومخرج واحد. معرفة أي نوع تستخدم هي من أهم مهارات المحلل.
الأنواع الثلاثة الأساسية للبوابات
يُعرِّف BPMN 2.0 ثلاثة أنواع من البوابات تغطي الغالبية العظمى من حالات المنطق التجاري:
- البوابة الحصرية (XOR) — يُؤخذ مسار خروج واحد فقط. تُميَّز بعلامة
Xداخل المعين. - البوابة المتوازية (AND) — تُفعَّل جميع مسارات الخروج في آنٍ واحد. تُميَّز بعلامة
+داخل المعين. - البوابة الشاملة (OR) — يُفعَّل مسار واحد أو أكثر بحسب الشروط. تُميَّز بدائرة
Oداخل المعين.
البوابة الحصرية (XOR)
تمثل البوابة الحصرية قرارًا: يُتَّبع فرع واحد فقط. تُحدد الشروط الموضوعة على الأسهم الصادرة أيَّ الفروع نشط. من أفضل الممارسات تحديد فرع افتراضي (بشرطة مائلة على السهم) لتفادي توقف العملية حين لا يتحقق أي شرط.
سيناريو تجاري — حجز موعد في عيادة: بعد تقديم المريض طلب حجز، يتحقق النظام من توفر موعد. إن كان هناك موعد، يُؤكَّد الحجز؛ وإلا يُضاف المريض إلى قائمة الانتظار. لا يمكن حدوث النتيجتين معًا — هذه بوابة حصرية.
البوابة المتوازية (AND)
تُنشِّط البوابة المتوازية جميع الفروع الصادرة في وقت واحد. وعند الاندماج تنتظر اكتمال جميع الفروع الواردة قبل مواصلة العملية. هذا هو العنصر الصحيح للمهام التي يجب تشغيلها بصورة متزامنة.
سيناريو تجاري — تنفيذ طلبات المتجر الإلكتروني: عند إتمام طلب شراء، يُخطر المتجر المستودع بتجهيز البضاعة وفي الوقت ذاته يُرسل رابط الدفع للعميل. فقط بعد اكتمال كلتا المهمتين (التجهيز والدفع) تبدأ مرحلة إرسال الطرد.
البوابة الشاملة (OR)
البوابة الشاملة هي الأكثر قدرةً والأكثر إساءةً في الاستخدام. تُطلق جميع الفروع التي تتحقق شروطها، أي قد يُفعَّل فرع واحد أو اثنان أو جميعها. وبوابة الاندماج المقابلة تنتظر فقط الفروع التي انطلقت فعليًا.
سيناريو تجاري — معالجة الشحنات في شركة لوجستيات: حين يُصنَّف شحن على أنه عالي القيمة، قد تُفعِّل الشركة تأمينًا خاصًا، وتوجيهًا ذا أولوية، و/أو تغليفًا للمواد الهشة، وفق الخيارات التي حددها العميل. أي تركيبة من هذه الخدمات ممكنة، ولا شيء منها إلزامي. تستمر العملية حالما تكتمل جميع المسارات المُفعَّلة.
مرجع مقارن: الانقسام مقابل الاندماج
اختيار البوابة المناسبة
اختبار ذهني مفيد قبل وضع أي بوابة:
- "هل هذا قرار؟" — إذا كانت نتيجة واحدة فقط ممكنة، استخدم
XOR. - "هل يجب أن يحدث كل شيء؟" — إذا كان لا بد من تشغيل جميع المسارات بالتوازي، استخدم
AND. - "هل قد تتحقق عدة نتائج معًا؟" — إذا كانت مسارات شرطية متعددة قد تنشط في آنٍ واحد، استخدم
OR.
في الواقع العملي، تستخدم معظم العمليات التجارية البوابتين الحصرية والمتوازية. أما الشاملة فهي الأكثر شيوعًا في العمليات التي تدفع خيارات المستخدم (مثل اشتراك يُفعِّل وحدات مختلفة) أو أنظمة تسجيل النقاط (مثل طلب قرض يُطلق خطوات مراجعة متعددة بحسب نطاقات الدرجات).
X الصريحة على البوابات الحصرية، لا سيما في النماذج المعقدة.
أخطاء شائعة يجب تجنبها
- بوابة اندماج مفقودة: الانقسام بدون اندماج ينتج عدة مسارات مفتوحة تصل إلى حدث النهاية باستقلالية — صحيح في BPMN لكنه نادرًا ما يُعبِّر عن المنطق المقصود.
- اندماج AND بعد انقسام XOR: تنتظر البوابة رموزًا (tokens) لن تصل أبدًا، مما يُسبب توقفًا في التنفيذ.
- غياب الفرع الافتراضي في XOR: إذا لم يتحقق أي شرط، يتوقف الرمز. حدد دائمًا تدفقًا افتراضيًا للخروج.
- الإفراط في استخدام OR: إذا كانت الشروط متبادلة الاستبعاد، فالبوابة الشاملة تعقيد غير ضروري — استخدم الحصرية بدلًا منها.
البوابات هي موطن المنطق التجاري في نموذج BPMN. إتقان الأنواع الثلاثة الأساسية يُمكِّنك من تمثيل أي قرار أو تسلسل متوازٍ أو شرط تجاري، من قرارات الموافقة البسيطة إلى عمليات تنسيق الخدمات المتعددة المعقدة. في الدرس القادم ستتعلم كيفية نمذجة التعاون عبر الحدود التنظيمية باستخدام المسابح والممرات.