सिस्टम प्रलेखन ( System Documentation ) एक निर्मित समाधान के बारे में जानकारी है और भविष्य के रखरखाव या अद्यतन प्रयासों के लिए एक संदर्भ के रूप में कार्य करता है। यह सिस्टम की कार्यक्षमता के आधार पर आयोजित किया जाता है, न कि जब सिस्टम में बदलाव किए गए थे, जिससे उन लोगों के लिए यह आसान हो जाता है जो समाधान ( Solution ) को बनाए रखने के लिए आवश्यक जानकारी को जल्दी से ढूंढते हैं।
जबकि समाधान स्वयं ( और इसके खिलाफ लिखे गए परीक्षण ) बहुत सारी जानकारी प्रदान कर सकता है, सूचना के अतिरिक्त स्रोतों की हमेशा आवश्यकता होगी, खासकर उन पहलुओं के लिए जो आसानी से स्पष्ट नहीं होते हैं। यह जानकारी कई रूप ले सकती है, लेकिन मैं आमतौर पर निम्नलिखित में से कुछ संयोजन किया जा सकता हैं;
Glossary ( शब्दावली ):- उस डोमेन में आमतौर पर उपयोग किए जाने वाले शब्दों की परिभाषा जिसमें सिस्टम संचालित होता है।
Business Rule Catalog ( व्यापार नियम कैटलॉग ):- नियमों का विवरण, हालांकि यह बताए बिना कि उन नियमों को कैसे लागू किया जाता है ( यह जानकारी आम तौर पर अन्य कलाकृतियों में से एक में नोट की जाती है या परीक्षणों द्वारा दर्शायी जाती है )।
Metadata ( मेटाडेटा ):- उस डेटा के बारे में डेटा जो सिस्टम एकत्र करता है, संग्रहीत करता है और प्रदान करता है ।
Process flows ( प्रोसेस फ़्लो ):- सिस्टम द्वारा समर्थित व्यावसायिक प्रक्रियाओं का विवरण ।
User interfaces ( यूजर इंटरफेस ):- प्रवर्तन ( Enforcement ) के पीछे के संचालन का विवरण या यूजर इंटरफेस से संबंधित व्यावसायिक नियमों को लागू करना।
Permissions ( अनुमतियाँ ):- यह वर्णन कि कौन सी भूमिकाएँ सिस्टम में कौन से कार्य कर सकती हैं।
An Example ( एक उदाहरण )
कॉन्फ़्रेंस सबमिशन सिस्टम ( CSS - Conference Submission System ) के लिए हम स्रोत नियंत्रण के लिए गिटहब ( GitHub ) का उपयोग करते हैं और किसी भी दस्तावेज़ीकरण के लिए हमें हमारे द्वारा किए जा रहे परिवर्तनों के दौरान संवाद करने की आवश्यकता होती है। प्रत्येक परिवर्तन को एक समस्या के रूप में सूचीबद्ध किया जाता है, और किसी भी विवरण को टिप्पणियों के आगे-पीछे में वर्णित किया जाता है, जिसका उपयोग हम अपेक्षाओं को स्पष्ट करने के लिए करते हैं।
हम प्रत्येक आइटम के लिए लिखे गए उदाहरण भी रखते हैं। इन उदाहरणों को सिस्टम सुविधाओं के आधार पर व्यवस्थित किया जाता है और जब हम किसी ऐसे मामले की जांच कर रहे होते हैं, जहां सबमिशन सिस्टम ठीक से काम नहीं कर रहा होता है, तो यह मेरे संदर्भ के पहले बिंदु के रूप में काम करता है। दस में से नौ बार, दोष एक ऐसा परिदृश्य बन जाता है जिसे हमने अपने विकास कार्य के दौरान ध्यान में नहीं रखा, इसका सबूत एक उदाहरण की कमी से है।
उदाहरणों और मेरी खराब याददाश्त के पूरक के लिए, मैंने स्प्रैडशीट भी बनाई हैं जो अनुमतियों को दर्शाती हैं, साथ ही कुछ परिस्थितियों में बाहर जाने वाले विशिष्ट अधिसूचना संदेशों के बारे में नोट्स भी बनाती हैं। ये जानकारी के मुख्य अंश होते हैं जो GitHub या सिस्टम के अलावा किसी अन्य संदर्भ बिंदु पर संग्रहीत करने के लिए उपयोगी होते हैं।
When To Use System Documentation? ( सिस्टम दस्तावेज़ीकरण का उपयोग कब करें? )
जब भी आपके पास कोई समाधान होता है तो सिस्टम दस्तावेज़ीकरण सहायक होता है, जिसे उसके जीवनकाल में बनाए रखा जा सकता हैं और अद्यतन किया जा सकता हैं । व्यापक अर्थों में, यह IT संगठन द्वारा निर्मित या कार्यान्वित अधिकांश प्रणालियों पर लागू होता है। सिस्टम प्रलेखन विशेष रूप से तब सहायक होता है जब सिस्टम को मूल रूप से, इसे बनाने वाली टीम से अलग टीम द्वारा बनाए रखा या अद्यतन किया जाता है और यहां तक कि उन समाधानों के लिए भी उपयोगी हो सकता है जो एक ही टीम द्वारा बनाया और बनाए रखा जाता है, खासकर अगर समाधान के लंबे समय तक जीवन होने की उम्मीद हो ( कहते हैं, एक वर्ष से अधिक)।
Why Use System Documentation? ( सिस्टम दस्तावेज़ीकरण का उपयोग क्यों करें? )
सिस्टम का वर्णन करने वाले दस्तावेज़ बनाना अभी मूल्य ( Value ) प्रदान करने के लिए आवश्यक नहीं है। हालांकि, यह उन लोगों के लिए लंबे समय में बेहद मददगार है, जो सिस्टम को बनाए रखने और अपडेट करने की कोशिश कर रहे हैं - इतना मददगार है कि आपको इसे करना चाहिए, लेकिन इतना मूल्यवान नहीं है कि आपको इस पर अत्यधिक समय, प्रयास या खर्च करना चाहिए। वही एक परियोजना ( Project ) के दौरान किए गए दस्तावेज़ीकरण के लिए जाता है। उस मामले में, मुख्य उद्देश्य साझा समझ के निर्माण में सहायता करना है।
दोनों ही मामलों में आप एक उद्देश्य के साथ प्रलेखन ( Documentation ) बनाते हैं, और एक बार जब आप उस उद्देश्य को जान लेते हैं, तो आमतौर पर इसके उद्देश्य के आधार पर दस्तावेज़ीकरण की संरचना करना एक अच्छा विचार है। सिस्टम दस्तावेज़ीकरण के मामले में, आप चाहते हैं कि यह निर्मित समाधान की वर्तमान स्थिति को प्रतिबिंबित करे, और आप इसे सहज तरीके से व्यवस्थित करना चाहते हैं - सबसे अधिक संभावना इस पर आधारित है कि समाधान स्वयं कैसे व्यवस्थित होता है।
🌼Thank you very much for giving your valuable time!🙏
Comments