
व्यावसायिक प्रक्रिया मॉडल और नोटेशन (BPMN) 2.0 प्रवाहों का वर्णन करने के लिए एक मानकीकृत भाषा प्रदान करता है। आंतरिक प्रक्रिया चरण स्पष्ट हैं, लेकिन संगठन के बाहर के संघों को शामिल करने के लिए विशिष्ट मॉडलिंग तकनीकों की आवश्यकता होती है। बाहरी सहभागी ग्राहकों, साझेदारों, तीसरे पक्ष के प्रणालियों या नियामक निकायों को शामिल करते हैं। इन बातचीत का सही ढंग से प्रतिनिधित्व करने से प्रक्रिया के सही कार्यान्वयन और स्पष्ट संचार सुनिश्चित होता है। यह गाइड BPMN 2.0 विनिर्माण में बाहरी सहभागियों को जोड़ने के तकनीकी पहलुओं को विस्तार से बताता है।
सीमाओं को समझना 🛑
बाहरी बातचीत के मॉडलिंग में मूल समस्या प्रक्रिया की सीमा को परिभाषित करने में है। BPMN में, एकपूलएक सहभागी का प्रतिनिधित्व करता है। एक प्रक्रिया में आमतौर पर एक ही पूल होता है जो कार्यप्रवाह को क्रियान्वित करने वाले संगठन का प्रतिनिधित्व करता है। इस पूल के बाहर कोई भी एकांतर बाहरी माना जाता है।
- आंतरिक पूल:संगठन द्वारा स्वामित्व वाली गतिविधियों को समावेश करते हैं।
- बाहरी पूल:उन सहभागियों का प्रतिनिधित्व करते हैं जो प्रक्रिया के साथ बातचीत करते हैं लेकिन इसके आंतरिक तर्क को नियंत्रित नहीं करते हैं।
जब आप बाहरी पक्षों वाली प्रक्रिया का मॉडल बनाते हैं, तो आपको संगठन के अंदर क्या होता है और बाहरी दुनिया में क्या होता है, इसके बीच अंतर करना होगा। यह अंतर गतिविधियों को जोड़ने के लिए उपयोग की जाने वाली प्रवाह प्रकृति को निर्धारित करता है।
संदेश प्रवाह बनाम क्रमिक प्रवाह 💬
BPMN में सबसे महत्वपूर्ण अंतरों में से एक क्रमिक प्रवाह और संदेश प्रवाह के बीच का अंतर है। इन दोनों को गलती से मिलाने से तकनीकी रूप से अमान्य या तार्किक रूप से अस्पष्ट मॉडल बन सकते हैं।
- क्रमिक प्रवाह: क्रियान्वयन के क्रम का प्रतिनिधित्व करते हैंके भीतरएक ही सहभागी (एक पूल के भीतर) के। इन्हें ठोस तीर द्वारा दर्शाया जाता है।
- संदेश प्रवाह: सूचना के आदान-प्रदान का प्रतिनिधित्व करते हैंके बीचदो सहभागियों के बीच (दो पूलों के बीच)। इन्हें बिंदीदार तीर द्वारा दर्शाया जाता है।
बाहरी सहभागियों को जोड़ते समय आपको संदेश प्रवाह का उपयोग करना चाहिए। दो पूलों के बीच क्रमिक प्रवाह का उपयोग करना एक मॉडलिंग त्रुटि है। क्रमिक प्रवाह नियंत्रण को संकेत देता है, जिसका अर्थ है कि उपरी गतिविधि सीधे नीचे की गतिविधि को ट्रिगर करती है। संदेश प्रवाह संचार को संकेत देता है, जहां एक पक्ष संदेश भेजता है और प्रतिक्रिया या स्वीकृति का इंतजार करता है।
दृश्य प्रतिनिधित्व
| प्रवाह प्रकृति | दिशा | रेखा शैली | उपयोग का संदर्भ |
|---|---|---|---|
| क्रमिक प्रवाह | आंतरिक | ठोस रेखा | एक जॉब में एकता से एकता तक |
| संदेश प्रवाह | बाहरी | डैश्ड लाइन | पूल से पूल (भागीदार से भागीदार) |
| संबंध | आंतरिक/बाहरी | डॉटेड लाइन | डेटा ऑब्जेक्ट्स या अनोटेशन्स को जोड़ना |
बाहरी संचार के लिए इवेंट प्रकार 📨
घटनाएँ बाहरी सहभागियों के साथ बातचीत शुरू करने या समाप्त करने के मुख्य तरीके हैं। आप इन बातचीत को समय और इरादे के आधार पर वर्गीकृत कर सकते हैं।
प्रारंभ घटनाएँ
एक प्रारंभ घटना प्रक्रिया की शुरुआत को चिह्नित करती है। जब एक बाहरी सहभागी एक प्रक्रिया को सक्रिय करता है, तो प्रारंभ घटना आमतौर पर एक होती हैसंदेश प्रारंभ घटना.
- यह घटना इंगित करती है कि प्रक्रिया आगे बढ़ने से पहले आने वाले संदेश का इंतजार करती है।
- इसे पूल के बहुत शुरुआत में रखा जाता है।
- आने वाला संदेश प्रवाह इस घटना से सीधे जुड़ता है।
उदाहरण के लिए, ग्राहक द्वारा भेजा गया आदेश पुष्टि एक पूर्ति प्रक्रिया को शुरू करता है। प्रक्रिया तब तक अस्तित्व में नहीं होती जब तक संदेश नहीं आ जाता।
मध्यवर्ती घटनाएँ
मध्यवर्ती घटनाएँ प्रक्रिया के जीवनचक्र के दौरान होती हैं। जब प्रक्रिया सक्रिय होती है, तो इनका उपयोग संदेशों को पकड़ने के लिए उपयोगी होता है।
- मध्यवर्ती ग्रहण करने वाली संदेश घटना: प्रक्रिया यहाँ रुक जाती है जब तक एक विशिष्ट संदेश प्राप्त नहीं हो जाता। यह असिंक्रोनस अपडेट के लिए सामान्य है, जैसे बैंकिंग प्रणाली से भुगतान पुष्टि।
- मध्यवर्ती फेंकने वाली संदेश घटना: प्रक्रिया इस बिंदु पर एक संदेश भेजती है। जब प्रक्रिया को किसी स्थिति परिवर्तन की सूचना बाहरी पक्ष को देने की आवश्यकता होती है, तो इसका उपयोग किया जाता है।
सीमा घटनाएँ
सीमा घटनाएँ एक गतिविधि की सीमा से जुड़ी होती हैं। इनके द्वारा आप अपवाद या समय सीमा समाप्त होने के बिना मुख्य प्रवाह को तुरंत रोके बिना संभाल सकते हैं।
- संदेश सीमा घटना: यदि प्रक्रिया चल रही है तब एक बाहरी पक्ष रद्दीकरण का अनुरोध भेजता है, तो यह घटना इसे पकड़ लेती है।
- इससे प्रक्रिया को वर्तमान गतिविधि छोड़े बिना बाहरी हस्तक्षेप के प्रति प्रतिक्रिया करने की अनुमति मिलती है।
गेटवेज और निर्णय लेना 🔀
बाहरी सहभागी अक्सर निर्णय बिंदुओं के माध्यम से जटिलता लाते हैं। एक प्रक्रिया को बाहरी स्रोत से प्राप्त प्रतिक्रिया के आधार पर शाखा में बँटने की आवश्यकता हो सकती है। गेटवेज इन मार्गों का प्रबंधन करते हैं।
XOR गेटवेज
एक एक्सक्लूसिव गेटवेज (XOR) कई विकल्पों में से एक मार्ग का चयन करता है। बाहरी अंतरक्रिया के संदर्भ में, इसका उपयोग अक्सर प्रतिक्रिया प्राप्त करने के बाद किया जाता है।
- यदि बाहरी प्रणाली “सफलता” संदेश लौटाती है, तो प्रक्रिया एक मार्ग का पालन करती है।
- यदि संदेश “त्रुटि” को इंगित करता है, तो प्रक्रिया एक अलग मार्ग का पालन करती है।
- आगमन संदेश प्रवाह को निर्णय से पहले आने वाले एक गेटवेज या इवेंट से जोड़ा जाना चाहिए।
AND गेटवेज
एक इनक्लूसिव गेटवेज तब अनेक मार्गों को एक साथ लेने की अनुमति देता है जब शर्तें पूरी होती हैं। हालांकि, संदेश प्रवाह के साथ, समन्वय महत्वपूर्ण है।
- एक जॉइनिंग गेटवेज सभी आगमन मार्गों के पूरा होने का इंतजार करता है।
- बाहरी पक्षों के साथ संचार करते समय देरी आम होती है। आपको सुनिश्चित करना होगा कि गेटवेज आगे बढ़ने से पहले आवश्यक संदेशों का इंतजार करे।
असमानांतरता का प्रबंधन ⏳
बाहरी अंतरक्रियाएं अक्सर तुरंत नहीं होती हैं। प्रणालियां ऑफलाइन हो सकती हैं, या प्रतिक्रिया में समय लग सकता है। BPMN 2.0 इसे असमानांतर व्यवहार के माध्यम से संभालता है।
- ब्लॉकिंग नहीं: जब कोई प्रक्रिया संदेश भेजती है, तो यह तुरंत प्रतिक्रिया का इंतजार नहीं करती, जब तक कि इसे विशेष रूप से ऐसा करने के लिए मॉडल नहीं किया गया है।
- संदेश रखरखाव: प्रक्रिया इंजन संदेश को तब तक स्टोर करता है जब तक कि उसे प्राप्त नहीं कर लिया जाता है।
- समय सीमा: यदि निर्धारित समय के भीतर कोई प्रतिक्रिया प्राप्त नहीं होती है, तो एक टाइमर इंटरमीडिएट इवेंट एक उत्थान को ट्रिगर कर सकता है।
यह लंबे समय तक चलने वाली प्रक्रियाओं के लिए महत्वपूर्ण है। यदि कोई प्रक्रिया प्रत्येक बाहरी कॉल के लिए सिंक्रोनस रूप से प्रतीक्षा करती, तो यह संसाधनों का अकुशल उपयोग करती। असमानांतर संदेश प्रवाह प्रक्रिया को प्रतीक्षा करते समय अन्य कार्यों को करने की अनुमति देता है।
डेटा आदान-प्रदान और पेलोड्स 📦
संदेश केवल संकेत नहीं होते हैं; वे डेटा ले जाते हैं। BPMN में, डेटा को द्वारा दर्शाया जाता हैडेटा ऑब्जेक्ट्स और डेटा इनपुट/आउटपुट.
- डेटा ऑब्जेक्ट्स: गतिविधियों द्वारा उपयोग किए जाने वाले या उत्पादित जानकारी का प्रतिनिधित्व करने वाले दृश्य प्रतीक।
- डेटा इनपुट: किसी गतिविधि को शुरू करने के लिए आवश्यक जानकारी।
- डेटा आउटपुट:एक गतिविधि द्वारा उत्पन्न सूचना।
बाहरी सहभागियों से जुड़ते समय, संदेश की सामग्री महत्वपूर्ण है। आपको संदेश विवरण में अपेक्षित डेटा पेलोड का विवरण देना चाहिए।
| घटक | कार्य | बाहरी प्रासंगिकता |
|---|---|---|
| संदेश | डेटा के लिए कंटेनर | इंटरफेस अनुबंध को परिभाषित करता है |
| डेटा वस्तु | विशिष्ट डेटा आइटम | दिखाता है कि क्या स्थानांतरित किया जा रहा है |
| संबंध | वस्तु को तत्व से जोड़ता है | डेटा प्रवाह दिशा को स्पष्ट करता है |
बचने के लिए सामान्य त्रुटियाँ ⚠️
बाहरी सहभागियों के मॉडलिंग में विशिष्ट जोखिम आते हैं। सामान्य त्रुटियाँ प्रक्रिया मॉडल को अमान्य या कार्यान्वयन में कठिन बना सकती हैं।
- पूल को अनुक्रम फ्लो के साथ जोड़ना: जैसा कि उल्लेख किया गया है, यह अमान्य है। पूल के बीच संचार के लिए हमेशा संदेश फ्लो का उपयोग करें।
- संदेश शुरुआत घटनाओं की अनुपस्थिति: यदि कोई प्रक्रिया बाहरी इनपुट के माध्यम से शुरू होती है, तो इसे संदेश शुरुआत घटना का उपयोग करना चाहिए। एक सामान्य शुरुआत घटना का अर्थ है कि प्रक्रिया आंतरिक रूप से शुरू होती है।
- पहुंच नहीं बनाने वाले मार्ग: सुनिश्चित करें कि प्रत्येक बाहरी इनपुट वाले मार्ग के लिए एक संगत प्रतिक्रिया हो। यदि कोई प्रक्रिया एक संदेश के लिए प्रतीक्षा करती है जो कभी नहीं आता है, तो डेडलॉक होता है।
- त्रुटि संभाल को नजरअंदाज करना: बाहरी प्रणालियाँ विफल हो जाती हैं। हमेशा सीमा घटनाओं या त्रुटि अंत घटनाओं का उपयोग करके त्रुटि मार्गों का मॉडल बनाएं।
- लेन को अत्यधिक जटिल बनाना: प्रत्येक बाहरी एजेंसी के लिए लेन न बनाएं। बाहरी एजेंसी के लिए पूल को बनाए रखें और आवश्यकता पड़ने पर ही उस एजेंसी के भीतर आंतरिक भूमिकाओं के लिए लेन का उपयोग करें।
स्पष्टता के लिए सर्वोत्तम व्यवहार ✅
तकनीकी टीमों और व्यावसायिक रुचि वाले पक्षों दोनों के लिए समझने योग्य मॉडल बनाए रखने के लिए इन दिशानिर्देशों का पालन करें।
- स्पष्ट रूप से लेबल करें: मैसेज फ्लो के नाम स्पष्ट रूप से दें (उदाहरण के लिए, “ऑर्डर पुष्टिकरण”, “स्थिति अपडेट”).
- सहयोग आरेखों का उपयोग करें: जटिल बहु-पक्षीय बातचीत के लिए, एक सहयोग आरेख एकल बड़े पूल की तुलना में अक्सर स्पष्ट होता है।
- चिंताओं को अलग करें: जहां संभव हो, आ inter लॉजिक के बाहरी इंटरफेस लॉजिक से अलग रूप से आंतरिक प्रक्रिया तर्क को मॉडल करें।
- इंटरफेस को दस्तावेज़ित करें: मैसेज में उपयोग किए गए डेटा स्कीमा के लिए अनोटेशन या अलग तकनीकी विवरण जोड़ें।
- संगत शैली: सभी मैसेज फ्लो के लिए एक ही लाइन शैली और रंग कोडिंग का उपयोग करें ताकि वे सीक्वेंस फ्लो से अलग दिखें।
बाहरी बातचीत का जीवनचक्र 🔁
जीवनचक्र को समझने में सही तत्वों को रखने में मदद मिलती है। एक सामान्य बातचीत इस क्रम का पालन करती है:
- प्रारंभ: एक बाहरी पक्ष एक संदेश भेजता है। इससे मैसेज स्टार्ट इवेंट ट्रिगर होता है।
- प्रसंस्करण: आंतरिक गतिविधियाँ डेटा को प्रसंस्करण करती हैं। यदि अधिक बाहरी डेटा की आवश्यकता हो, तो मध्यवर्ती घटनाएँ हो सकती हैं।
- प्रतिक्रिया: प्रक्रिया बाहरी पक्ष को एक संदेश वापस भेजती है।
- पूर्णता: एक एंड इवेंट प्रक्रिया के सफल समापन को चिह्नित करता है।
यदि प्रक्रिया समय सीमा पार कर जाती है या कोई त्रुटि प्राप्त करती है, तो जीवनचक्र अलग तरीके से समाप्त होता है, जिसमें अक्सर संपादन या रद्द करने की प्रक्रिया की आवश्यकता होती है।
बाहरी संबंधता पर निष्कर्ष 🎯
बाहरी भागीदारों के मॉडलिंग के लिए सटीकता की आवश्यकता होती है। आंतरिक नियंत्रण और बाहरी संचार के बीच अंतर वैध BPMN 2.0 आरेखों की नींव है। सही तरीके से मैसेज फ्लो, उपयुक्त इवेंट और स्पष्ट बाउंड्री परिभाषाओं के उपयोग से, आप एक ब्लूप्रिंट बनाते हैं जो व्यापार की वास्तविकता को सटीक रूप से प्रतिबिंबित करता है।
इन क्षेत्रों में विवरण पर ध्यान देने से निष्पादन त्रुटियों को रोका जा सकता है और यह सुनिश्चित करता है कि सभी हितधारक समझते हैं कि प्रणाली विश्व के साथ कैसे बातचीत करती है। लक्ष्य एक मॉडल बनाना है जो केवल दृश्य रूप से सही नहीं, बल्कि सामान्य रूप से मजबूत हो।












