घटना विभाजन

घटना विभाजन एक आसानी से लागू किया जाने वाला सिस्टम विश्लेषण तकनीक है जो सिस्टम विश्लेषण को बड़े सिस्टम के लिए आवश्यकताओं को संग्रह के रूप में संगठित करने में सहायता करती है। इसके द्वारा संशोधित आवश्यकताएं छोटे, सरल, न्यूनतम संपर्कित, समझने में सरल "मिनी सिस्टम" / उपयोग स्थिति में व्यवस्थित की जाती हैं।

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

घटना विभाजन का प्रतिष्ठान यह है कि सिस्टम बाहरी घटनाओं का प्रतिक्रिया देने के लिए उपस्थित होते हैं: व्यावसायिक पर्यावरण में ऐसी क्या घटित होती है जिसके लिए योजनित प्रतिक्रियाएँ की आवश्यकता होती है, फिर व्यावसायिक नियमों के अनुसार प्रतिक्रियाओं को परिभाषित और निर्मित करें। विशेष रूप से, व्यावसायिक सिस्टम ग्राहकों की अनुरोधों की सेवा करने के लिए उपस्थित होता है। एकीकृत मॉडलिंग भाषा (यूएमएल) के शब्दजाल में ग्राहक, एक अभिनेता (यूएमएल) को कहा जाता है।

अभिनेता → घटना → पता लगाएँ → प्रतिक्रिया दें
इस विधि में निम्नलिखित चरण होते हैं।
 * 1. "अभिनेताओं" (बाहरी सिस्टम) की एक सूची पर विचार-मंथन करके बाहरी प्रणालियों की पहचान करें, जो बाहरी घटनाओं के स्रोत हैं। यदि आपको कोई ग्राफ़िक मददगार लगता है, तो अध्ययन के तहत सिस्टम के बाहर के अभिनेताओं और उनके बीच प्रवाह/संकेतों को दिखाते हुए एक संदर्भ आरेख बनाएं।
 * 2. अपने आप को एक "अभिनेता" (या अभिनेता प्रतिनिधियों के साथ काम करना) के स्थान पर रखकर, "बाहरी घटनाओं" / "ट्रिगर" की एक सूची पर विचार-मंथन करें, जो वे चाहते हैं कि सिस्टम को एक नियोजित प्रतिक्रिया मिले। (ध्यान दें कि सिस्टम बाहरी घटनाओं को उत्पन्न नहीं कर सकता है; केवल एक अभिनेता ही कर सकता है।)
 * 3. पहचानें कि बाहरी घटनाओं का पता लगाने के लिए सिस्टम को क्या सक्षम करेगा:
 * एक या अधिक डेटा के आगमन (संदेश के रूप में संभव)
 * एक या अधिक समय बिंदुओं के आगमन (म्‍यूएल द्वारा "कालिक" घटनाओं के रूप में कहा गया है, और इसे उन्होंने बाह्य घटनाओं से अलग तय किया है)।
 * 4. नियोजित प्रतिक्रिया (प्रतिक्रियाओं) की पहचान करें जो कि घटनाओं के होने पर सिस्टम कर सकता है। यह प्रतिक्रिया (ओं)/उपयोग के स्थितियों हैं जो सिस्टम को अपने लक्ष्यों को प्राप्त करने में सक्षम बनाती हैं।

इस तकनीक को पॉल टी. वार्ड और स्टीफन जे. मेलोर द्वारा स्ट्रक्चर्ड डेवलपमेंट फॉर रियल-टाइम सिस्टम्स: एसेंशियल मॉडलिंग टेक्निक्स में इस तकनीक में "गैर-घटना" घटनाओं के साथ विस्‍तार दिया गया था।

"चूंकि टर्मिनेटर (अभिनेता) सिद्धांत के अनुसार, मॉडल द्वारा प्रतिष्ठानित सिस्टम निर्माण प्रयास की सीमा के बाहर होते हैं, इसलिए क्रियान्वयकर्ताओं को टर्मिनेटर (अभिनेता) प्रौद्योगिकी को सुधारने के लिए आज्ञाकारी रूप से संशोधित नहीं कर सकते हैं। इसके अतिरिक्त, उन्हें सिस्टम के मूल मॉडल में टर्मिनेटर (अभिनेता) समस्याओं के लिए प्रतिक्रियाएँ बनानी होती हैं। टर्मिनेटर (अभिनेता) समस्याओं के प्रतिक्रियाओं के लिए मॉडलिंग करने के लिए एक उपयोगी दृष्टिकोण है 'साधारण' घटनाओं की एक सूची बनाना और फिर प्रत्येक घटना के लिए पूछना, 'क्या सिस्टम को इस घटना के साथ अपेक्षित रूप से असफल होने पर प्रतिक्रिया की आवश्यकता है?'" [मेरा जोरदारी जोड़ने के लिए]

डेटा डिक्शनरी नोटेशन
डेटा डिक्शनरी नोटेशन का वर्णन करने के लिए योर्डन/डीमार्को शैली का डेटा शब्दकोश नोटेशन उपयोग किया जा सकता है।

डेटा संरचना तत्व संरचित प्रोग्रामिंग की संरचित प्रोग्रामिंग नियंत्रण संरचनाओं को मैप कर सकते हैं: नोट: परिभाषित आइटम "सामग्री" (उदाहरण के लिए, कमरे की कुंजी) और "डेटा" (उदाहरण के लिए, आगमन तिथि-समय) हो सकते हैं।
 * + को कथनों की "क्रमबद्धता" के लिए मैप किया जा सकता है (चूंकि यह आवश्यक नहीं है)
 * [|] चयन के लिए मैप कर सकते हैं (सशर्त (कंप्यूटर प्रोग्रामिंग), स्विच स्टेटमेंट)
 * {}, को "पुनरावृत्ति" (गिनती लूप, पूर्व-परीक्षा लूप, मध्य-परीक्षा लूप, अंत-परीक्षा लूप और अनंत लूप) के लिए मैप किया जा सकता है

आवश्यकताओं की पहचान करना और उनके कारण
घटना-प्रतिक्रिया सूचना तालिका में आकलित की जा सकती है। घटना प्रतिक्रिया के लिए "कारण" है, जो प्रतिक्रिया को पर्यावरण से "ट्रेसेबिलिटी" देता है।

आवश्यकताओं को परिभाषित करना
यह तकनीक विश्लेषक को योजनित प्रतिक्रिया की आवश्यकता रखने वाली घटनाओं का उपयोग करके सिस्टम को "मानसिक रूप से बाइट-साइज्ड" मिनी-सिस्टम में विभाजित करने में सहायता करती है। प्रत्येक प्लान की गई प्रतिक्रिया का विस्तार "प्राथमिक उपयोग स्थिति" के स्तर पर होता है। प्रत्येक योजनित प्रतिक्रिया को DFD नोटेशन का उपयोग करके मॉडल किया जा सकता है या उपयोग स्थिति डायग्राम नोटेशन का उपयोग करके एकल उपयोग स्थिति के रूप में मॉडल किया जा सकता है।

प्रक्रिया या उपयोग स्थिति के भीतर मूल धारा को सामान्यतः कुछ ही स्टेप्स में वर्णित किया जा सकता है, अधिकांशतः बीस या तीस के कम संभवतः संरचित अंग्रेजी का उपयोग करके। आदर्श रूप से, सभी स्टेप्स एक साथ दिखाई देने चाहिए (अधिकांशतः एक पेज या इससे कम)। इसका उद्देश्य, छोटी स्मृति संबंधी एक रिस्क को कम करना है, अर्थात वह भूल जाना जो तुरंत दृश्यमान नहीं होता है ("आँखों से बाहर, मन से बाहर")।

वैकल्पिक रूप से, संरचित तकनीकों के अंकन का उपयोग करके, एक विश्लेषक नासी-श्नीडरमैन आरेख बना सकता है। यूएमएल में, उपयोग के स्थितियों को गतिविधि आरेख, अनुक्रम आरेख या संचार आरेख का उपयोग करके प्रतिरूपित किया जा सकता है। यदि उपयोग के स्थितियों में कई जटिल परिदृश्य (कंप्यूटिंग) हैं तो यह समस्यापूर्ण हो सकता है; विश्लेषक को सभी या अधिकांश स्केनेरियों को मॉडल करने की इच्छा हो सकती है।

जटिलता बनाम विखंडन
यदि प्रतिक्रिया लंबी या जटिल है (अर्थात, पाठ के एक पृष्ठ से अधिक), तो एक विश्लेषक मूल प्राथमिक उपयोग के स्थितियों को छोटा और सरल रखने के लिए अपघटन प्रतिमान (फैक्टर आउट या विक्ट:विशेष:खोज/डुप्लीकेशन) छोटे माध्यमिक उपयोग स्थितियों में कर सकता है। ये द्वितीयक उपयोग के स्थितियों पुन: प्रयोज्य भी सिद्ध हो सकते हैं। (यूएमएल उपयोग स्थिति डायग्राम में, उन्हें उपयोग स्थिति डायग्राम एक्सटेंड या उपयोग स्थिति डायग्राम सम्मलित उपयोग स्थिति के रूप में खींचा जाएगा, जो एक या अधिक प्राथमिक उपयोग के स्थितियों से संबंधित हैं।)

उपयोग के स्थितियों का वर्णन करते समय, एक विश्लेषक व्यावसायिक नियमों को भी प्रकट कर सकता है। कुछ विश्लेषक वस्तु बाधा भाषा या कुछ अन्य व्यावसायिक नियम # औपचारिक विनिर्देश का उपयोग करके एक अलग दस्तावेज़ में व्यावसायिक नियमों को कैप्चर करने का सुझाव देते हैं। फिर जब उपयोग के स्थितियों में व्यापार नियम का पालन किया जाना चाहिए, तो विश्लेषक इसका संदर्भ देता है। यह पुनरावृत्ति को कम करता है एक विनिर्देश के भीतर, किन्तु एक विनिर्देश के विखंडन का जोखिम। इस तनाव को कम करने के लिए एक तकनीक हैपरलिंक का उपयोग करना हो सकता है जो सूचना प्रावधान दस्तावेज़ में किया जा सकता है।

यह न्यूनीकरणवाद दृष्टिकोण प्रणालियों की सोच  दृष्टिकोण के विपरीत कुछ हद तक निहित है जैसा कि पीटर चेकलैंड की सॉफ्ट सिस्टम पद्धति द्वारा दर्शाया गया है।

उपयोग के स्थितियों के विवरण में कैप्चर की गई कार्यात्मक आवश्यकताओं के अतिरिक्त, एक विश्लेषक प्रतिक्रिया समय, सीखने की क्षमता आदि जैसी गैर-कार्यात्मक आवश्यकताओं को सम्मलित कर सकता है।

यह भी देखें

 * व्यापारिक मामला
 * एसआईपीओसी
 * उदाहरण
 * स्थिति चित्र का उपयोग
 * प्रयोक्ता कहानी

बाहरी संबंध

 * Event partitioning Structured Analysis Wiki