डेटा फ्लो आरेख (DFD) प्रणाली विश्लेषण और डिज़ाइन में मूलभूत उपकरण हैं। वे जानकारी के एक प्रणाली में गति के तरीके का दृश्य प्रतिनिधित्व प्रदान करते हैं। DFD की गहराई को समझना आवश्यक है ताकि आवश्यकताओं को सही तरीके से ध्यान में रखा जा सके। यह मार्गदर्शिका उच्च स्तर के संदर्भ आरेख से विस्तृत स्तर 1 आरेख तक जाने की प्रक्रिया का अध्ययन करती है। हम विभाजन, डेटा संरक्षण और संरचनात्मक अखंडता के सिद्धांतों का अध्ययन करेंगे, जिसमें किसी विशिष्ट सॉफ्टवेयर उपकरण पर निर्भर नहीं करना है।

DFD समतल दस्तावेज़ नहीं हैं; वे एक हायरार्की में मौजूद हैं। इस संरचना के कारण विश्लेषक एक प्रणाली को विभिन्न स्तरों की विस्तृत जानकारी के साथ देख सकते हैं। प्रत्येक स्तर प्रक्रियाओं और डेटा प्रवाहों को अधिक विशिष्टता प्रदान करता है।
संदर्भ से स्तर 1 तक संक्रमण आमतौर पर नए विश्लेषकों के लिए सबसे चुनौतीपूर्ण चरण होता है। इसमें स्पष्टता की आवश्यकता और विस्तार की आवश्यकता के बीच संतुलन बनाए रखने की आवश्यकता होती है। यदि आरेख बहुत ऊपर है, तो इसमें कार्यान्वयन योग्य जानकारी की कमी होती है। यदि यह बहुत नीचे है, तो यह भारी और बड़ी छवि खो देता है।
संदर्भ आरेख पूरे DFD सूट के लिए आधार के रूप में कार्य करता है। यह अध्ययनाधीन प्रणाली की सीमा को परिभाषित करता है। वृत्त के अंदर की सभी चीजें प्रणाली का हिस्सा हैं; बाहर की सभी चीजें बाहरी हैं।
सीमा निर्धारित करना आवश्यक है। एक एकाधिकार बाहरी होता है यदि वह वर्तमान परियोजना के दायरे के बाहर है। उदाहरण के लिए, एक वेतन वितरण प्रणाली में, कर अधिकारी एक बाहरी एकाधिकार हो सकता है, लेकिन वित्त विभाग आंतरिक हो सकता है। सीमाओं को गलत तरीके से पहचानने से दायरे का विस्तार और भ्रम होता है।
विभाजन एक जटिल प्रक्रिया को छोटे, अधिक प्रबंधनीय उप-प्रक्रियाओं में तोड़ने की प्रक्रिया है। यह लेवल 1 आरेख बनाने की मुख्य तकनीक है। यह केवल कार्यों को विभाजित करने के बारे में नहीं है; यह प्रणाली की आंतरिक तर्क को उजागर करने के बारे में है।
लेवल 0 से लेवल 1 में जाते समय, तार्किक सुसंगतता बनाए रखने के लिए कई नियमों का पालन करना आवश्यक है।
सबसे महत्वपूर्ण तकनीकी आवश्यकताओं में से एक डेटा प्रवाह का संतुलन है। लेवल 0 प्रक्रिया में प्रवेश करने वाले डेटा को लेवल 1 प्रक्रियाओं में प्रवेश करने वाले डेटा के बराबर होना चाहिए। इसी तरह, लेवल 0 प्रक्रिया से निकलने वाले डेटा को लेवल 1 प्रक्रियाओं से निकलने वाले डेटा के बराबर होना चाहिए।
यदि संदर्भ आरेख में एक “ऑर्डर फॉर्म” प्रणाली में प्रवेश करता दिखाया गया है, तो लेवल 1 आरेख में उसी “ऑर्डर फॉर्म” को उप-प्रक्रियाओं में से एक में प्रवेश करते हुए दिखाया जाना चाहिए। यदि लेवल 1 आरेख में “ग्राहक आईडी” को आंतरिक रूप से पारित किया जा रहा है, तो लेवल 0 आरेख में इसे बाहरी इनपुट या आउटपुट नहीं हो सकता, जब तक कि यह वहां मौजूद न हो।
जब विभाजन योजना तैयार हो जाती है, तो वास्तविक निर्माण शुरू होता है। इसमें प्रणाली के प्रमुख कार्यात्मक क्षेत्रों की पहचान करना शामिल है।
संदर्भ आरेख से एकल प्रक्रिया को देखें। पूछें: प्रणाली के उद्देश्य को पूरा करने के लिए कौन-सी मुख्य गतिविधियां आवश्यक हैं? इन्हें लेवल 1 आरेख में बबल या गोलों के रूप में बनाया जाता है।
प्रक्रियाओं को तीरों से जोड़ें। इन तीरों का अर्थ है आंतरिक प्रक्रियाओं के बीच डेटा के आवागमन। आप बाहरी एकाधिकारों को इन नए उप-प्रक्रियाओं से जोड़ने वाले तीर भी बना सकते हैं।
जबकि संदर्भ आरेख इन्हें शामिल नहीं करते, स्तर 1 आरेख अक्सर डेटा स्टोर को शामिल करते हैं। डेटा स्टोर वह स्थान है जहां डेटा विश्राम की स्थिति में रखा जाता है। यह एक डेटाबेस, फाइल या भौतिक फाइल बॉक्स हो सकता है।
जब डेटा स्टोर को बनाते हैं:
यहां तक कि अनुभवी विश्लेषक डीएफडी बनाते समय त्रुटियों का सामना करते हैं। इन पैटर्नों को जल्दी पहचानने से सत्यापन के दौरान समय बचता है।
एक काला छेद वह प्रक्रिया है जिसके इनपुट होते हैं लेकिन आउटपुट नहीं होते। इसका अर्थ है कि डेटा को कोई परिणाम नहीं दिए बिना उपभोग किया जा रहा है। एक कार्यात्मक प्रणाली में, प्रत्येक इनपुट का किसी रूप में आउटपुट या डेटा संग्रहण के रूप में परिणाम होना चाहिए।
एक चमत्कार वह प्रक्रिया है जिसके आउटपुट होते हैं लेकिन इनपुट नहीं होते। इसका अर्थ है कि डेटा को किसी भी आधार के बिना उत्पन्न किया जा रहा है। प्रत्येक आउटपुट को किसी इनपुट डेटा से व्युत्पन्न होना चाहिए।
डीएफडी डेटा प्रवाह का अनुसरण करते हैं, नियंत्रण प्रवाह का नहीं। एक नियंत्रण प्रवाह एक प्रक्रिया शुरू या बंद करने के लिए संकेत का प्रतिनिधित्व करता है (उदाहरण के लिए, “स्टार्ट बटन दबाया गया”)। यदि आपको एक प्रवाह दिखाई दे जो नियंत्रण संकेत की तरह लगता है, तो यह संभवतः वास्तव में डेटा है (उदाहरण के लिए, “स्टार्ट अनुरोध”)। डीएफडी समय या तार्किक नियंत्रण को स्पष्ट रूप से संभालते नहीं हैं।
यह तब होता है जब स्तर 1 आरेख के इनपुट संदर्भ आरेख के इनपुट के मेल नहीं खाते। स्तर 1 आरेख बनाने के बाद हमेशा डेटा के संरक्षण की जांच करें।
निम्नलिखित तालिका स्तरों के बीच अंतरों का सारांश प्रस्तुत करती है ताकि यह समझने में मदद मिले कि किस स्तर का उपयोग कब करना चाहिए।
| विशेषता | संदर्भ आरेख (स्तर 0) | स्तर 1 आरेख |
|---|---|---|
| केंद्रीय प्रक्रिया | एक एकल प्रक्रिया | बहुत सारी उप-प्रक्रियाएं |
| डेटा स्टोर | कोई नहीं | हां, शामिल |
| विवरण स्तर | उच्च स्तर का सारांश | कार्यात्मक विभाजन |
| बाहरी संस्थाएँ | सभी प्राथमिक संस्थाएँ | उपसमुच्चय या समान संस्थाएँ |
| प्राथमिक उद्देश्य | प्रणाली की सीमा निर्धारित करें | आंतरिक तर्क निर्धारित करें |
प्रारंभिक ड्राफ्ट के बाद, आरेख के प्रमाणीकरण की आवश्यकता होती है। यह एक बार की जांच नहीं है, बल्कि समीक्षा और सुधार का चक्र है।
जैसे आप DFD संरचना में गहराई तक जाते हैं, आप विस्तार के बारे में निर्णय लेने के सामने आते हैं। आपको कितनी गहराई तक जाना चाहिए?
कोई सार्वभौमिक नियम नहीं है, लेकिन सामान्य दिशानिर्देश मौजूद हैं:
डेटा स्टोर दृश्यात्मक प्रवाह को जटिल बना सकते हैं। सुनिश्चित करें कि उन्हें तार्किक रूप से रखा गया है। एक प्रक्रिया के माध्यम से लाइन न खींचें। यदि लाइन किसी प्रक्रिया के माध्यम से जानी ही है, तो इसे गुजर रहा है, बल्कि बातचीत नहीं कर रहा है, इसका संकेत देने के लिए कनेक्टर बिंदु या जंक्शन संकेत का उपयोग करें।
प्रणाली के अंदर के कार्यकर्ताओं और बाहर के कार्यकर्ताओं के बीच अंतर स्पष्ट करें। यदि मानव संचालक प्रणाली के कार्यप्रणाली का हिस्सा है (उदाहरण के लिए, डेटा दर्ज करने वाला क्लर्क), तो वे आंतरिक कार्यकर्ता हो सकते हैं, लेकिन अक्सर उन्हें बाहरी एकता के रूप में दर्शाया जाता है क्योंकि वे सॉफ्टवेयर सीमा के बाहर होते हैं। इस परिभाषा में सामंजस्यता महत्वपूर्ण है।
आरेख केवल कहानी का एक हिस्सा है। तर्क को समझाने के लिए पाठात्मक विवरण आवश्यक हैं।
संदर्भ से स्तर 1 तक सफलतापूर्वक बढ़ने के लिए एक अनुशासित दृष्टिकोण की आवश्यकता होती है। यह अधिक बॉक्स बनाने के बारे में नहीं है; यह प्रणाली की सच्चाई को उजागर करने के बारे में है।
इन संरचित चरणों का पालन करने से आप प्रणाली डिज़ाइन के लिए एक मजबूत आधार बनाते हैं। स्तर 1 आरेख विकासकर्ताओं के लिए नक्शा बन जाता है और व्यावसायिक स्टेकहोल्डर्स के लिए संचार उपकरण बन जाता है। यह अमूर्त आवश्यकताओं और वास्तविक कार्यान्वयन के बीच के अंतर को पार करता है।