महान आवश्यकताएं कैसे लिखें

महान आवश्यकताएं कैसे लिखें

विषय - सूची

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

आवश्यकताएँ विशिष्टता क्या है?

आवश्यकताएँ विनिर्देश एक ऐसी प्रक्रिया है जिसमें आवश्यकताओं को परिभाषित, प्रलेखित और विश्लेषण किया जाता है। यह सॉफ्टवेयर विकास का एक महत्वपूर्ण हिस्सा है क्योंकि यह सुनिश्चित करता है कि विकास शुरू होने से पहले सभी हितधारक सॉफ्टवेयर की कार्यक्षमता पर सहमत हों। ऐसा करने से गलतफहमी की संभावना कम हो जाती है और बाद में दोबारा काम किया जाता है।

आवश्यकता विनिर्देश, जिसे दस्तावेज़ीकरण के रूप में भी जाना जाता है, दस्तावेज़ के रूप में सभी सिस्टम और उपयोगकर्ता आवश्यकताओं को लिखने या लिखने की एक प्रक्रिया है। ये आवश्यकताएं स्पष्ट, पूर्ण, व्यापक और सुसंगत होनी चाहिए।

अच्छी आवश्यकताओं को लिखना क्यों महत्वपूर्ण है?

अच्छी आवश्यकताओं के विनिर्देशों के होने के कई लाभ हैं। उनमें से कुछ नीचे सूचीबद्ध हैं:

  • यह सुनिश्चित करने में मदद करता है कि सभी हितधारकों को उस प्रणाली की सामान्य समझ है जिसे विकसित किया जाना है। यह विकास के बाद के चरणों के दौरान किसी भी गलतफहमी से बचा जाता है।
  • विकास प्रक्रिया के दौरान सभी हितधारकों के लिए एक संदर्भ बिंदु के रूप में कार्य करता है।
  • प्रारंभिक चरण में आवश्यकताओं में किसी भी अंतराल की पहचान करने में मदद करता है।
  • विकास की समग्र लागत और समय को कम करता है क्योंकि यह आवश्यकताओं में परिवर्तन के कारण पुन: कार्य करने से बचता है।

महान आवश्यकताओं को लिखकर हम क्या प्राप्त करते हैं?

ऐसी कई चीजें हैं जिन्हें हासिल करने में महान आवश्यकताएं मदद करती हैं। उनमें से कुछ नीचे सूचीबद्ध हैं:

  • महान आवश्यकताएं यह सुनिश्चित करने में मदद करती हैं कि विकसित की जा रही प्रणाली उपयोगकर्ताओं की जरूरतों को पूरा करती है।
  • वे यह सुनिश्चित करने के लिए सिस्टम के परीक्षण के आधार के रूप में कार्य करते हैं कि यह अपेक्षा के अनुरूप काम करता है।
  • वे आवश्यकताओं में परिवर्तन के कारण पुन: कार्य से बचकर समग्र लागत और विकास के समय को कम करने में मदद करते हैं।
  • महान आवश्यकताएं विकास प्रक्रिया को अधिक कुशल और प्रभावी बनाने में मदद करती हैं।

आवश्यकताएँ लिखते समय चुनौतियाँ

आवश्यकताओं को लिखते समय लोगों को विभिन्न चुनौतियों का सामना करना पड़ता है।

खराब कागजी कार्रवाई - कुछ संगठनों में, प्रक्रियाओं का दस्तावेज़ीकरण या तो मौजूद नहीं है या बराबर नहीं है। इस मामले में, संग्रह की आवश्यकताएं दो चरणों वाली प्रक्रिया बन जाती हैं: पहले मौजूदा प्रक्रिया को रिवर्स इंजीनियरिंग, और फिर सुधार और अनुकूलन की आवश्यकता वाले क्षेत्रों की पहचान करना। यह पुष्टि करने के लिए कि आवश्यकताओं को पूरा किया गया है और सटीक हैं, प्रमुख हितधारकों और विषय वस्तु विशेषज्ञों की पहचान करना, उनके साथ सीधे जुड़ना महत्वपूर्ण है। व्यवसाय प्रक्रिया मानचित्र बनाना और कार्यप्रवाह की कल्पना करना ऐसा करने के दो उत्कृष्ट तरीके हैं। यह एक संपूर्ण चित्र प्रदान करते हुए गलत धारणाओं को समाप्त करने में सहायता करता है। प्रक्रिया मानचित्र बनाना और प्रक्रियाओं को प्रदर्शित करना इस उद्देश्य के लिए दो उपयोगी दृष्टिकोण हैं।

विरोधाभासी आवश्यकताएं - जब हितधारकों की अपने व्यावसायिक लक्ष्यों के लिए अलग-अलग प्राथमिकताएं होती हैं, तो इससे ऐसी आवश्यकताएं होती हैं जो एक-दूसरे के साथ संघर्ष करती हैं। ऐसे मामलों में, एक व्यापार विश्लेषक की जिम्मेदारी सभी आवश्यकताओं को विस्तार से दस्तावेज करना है, यह पहचानना है कि कौन से अनुरोध एक-दूसरे का विरोध करते हैं, और हितधारकों को यह तय करने का अवसर देते हैं कि प्राथमिकता क्या है।

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

उपयोगकर्ता इनपुट की अनुपलब्धता - कुछ कारण अंतिम उपयोगकर्ताओं की अनुपलब्धता में योगदान कर सकते हैं, और प्रत्येक को अपने स्वयं के समाधान की आवश्यकता होती है। उदाहरण के लिए, कभी-कभी अंतिम उपयोगकर्ता अपने दैनिक कार्य में इतने व्यस्त होते हैं कि वे आवश्यकता-संग्रह गतिविधियों में भाग लेने को तैयार नहीं होते हैं।

ऐसे मामलों में, एक व्यापार विश्लेषक जो सबसे अच्छा काम कर सकता है, वह है व्यस्तताओं की संख्या और लंबाई को सीमित करना। बैठक से पहले, जितना संभव हो उतना शोध करने से चर्चा को और अधिक व्यवस्थित और सूचनात्मक बनाने में मदद मिलेगी। यह लगभग आवश्यकताओं को सत्यापन सत्र में एकत्रित करने की आवश्यकताओं को बदलने जैसा है। फोकस समूहों को परिभाषित करना और प्रत्येक समूह के लिए सबसे उपयुक्त अंतिम उपयोगकर्ताओं की पहचान करना

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

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

हितधारक इनपुट - जब हितधारक या अंतिम-उपयोगकर्ता डिजाइनरों को यह बताने की कोशिश करते हैं कि सिस्टम को क्या करना चाहिए, इसके बजाय सिस्टम को कैसे काम करना चाहिए, यह उप-इष्टतम डिजाइन को जन्म दे सकता है। इसे समाप्त करने के लिए, 'क्यों?' पूछकर प्रत्येक संभावित 'झूठी आवश्यकता' की पुष्टि करें। जब तक आप उस वास्तविक समस्या पर नहीं पहुंच जाते जिसे हल करने की आवश्यकता है।

संचार समस्याएँ - जिन मुद्दों के कारण व्यापार विश्लेषक और अन्य पार्टियों के बीच गलत संचार हो सकता है, उनमें भाषा की बाधाएं, गलत धारणाएं, अपर्याप्त रूप से व्याख्या की गई शब्दावली और तकनीकी शब्दों का अति प्रयोग शामिल हैं।

इस समस्या से बचने का आदर्श तरीका बार-बार बातचीत करना और दो तरफा बातचीत विकसित करना है। आपके द्वारा खोजी गई आवश्यकताओं का दस्तावेजीकरण करें और उन्हें सहकर्मी समीक्षा और आलोचना के लिए विभिन्न विषय वस्तु विशेषज्ञों के पास जमा करें, शब्दजाल की शब्दावली बनाएं और परिसर की दोबारा जांच करें।

सही आवश्यकताओं के सेट के लिए नियम

कुछ नियम हैं जिन्हें "सही" कहे जाने के लिए आवश्यकताओं का पालन करना चाहिए।

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

बेहतर आवश्यकताएं लिखने के लिए 20 टिप्स

प्रत्येक संगठन के काम करने का एक अलग तरीका होता है, इसलिए आवश्यकताओं का एक अलग सेट होता है। इसलिए, आवश्यकता प्रबंधन की प्रक्रिया भी भिन्न हो सकती है। लेकिन एक चीज जो लगातार बनी रहती है वह है लेखन आवश्यकताओं की बुनियादी बातें। बेहतर आवश्यकताएं लिखने के लिए नीचे 20 सुझाव दिए गए हैं।

  1. एक बार में एक - प्रत्येक आवश्यकता को असतत परीक्षण मामले के रूप में माना जाना चाहिए। संयोजन जैसे और, या, और इसी तरह का उपयोग नहीं किया जाना चाहिए क्योंकि वे आवश्यकताओं को याद कर सकते हैं। यह विशेष रूप से महत्वपूर्ण है क्योंकि इस तरह के शब्द सॉफ़्टवेयर डेवलपर्स और परीक्षकों को आवश्यकताओं की अनदेखी करने का कारण बन सकते हैं। जटिल जरूरतों को छोटे भागों में विभाजित करना जब तक कि प्रत्येक का अलग-अलग परीक्षण न किया जा सके, ऐसा होने से रोकने का एक तरीका है।

  1. बात "क्या" नहीं "कैसे" - ध्यान इस बात पर होना चाहिए कि सिस्टम क्या करेगा, न कि यह कैसे करता है। इसके अतिरिक्त, डिज़ाइन विषयों जैसे फ़ील्ड नाम, प्रोग्रामिंग भाषा ऑब्जेक्ट और सॉफ़्टवेयर ऑब्जेक्ट में बहुत गहराई से जाने से बचें। यदि आप स्वयं को आवश्यकताएँ विशिष्टता दस्तावेज़ में इन विषयों पर चर्चा करते हुए पाते हैं, तो एक कदम पीछे हटें - इसका अर्थ है कि आप बहुत विशिष्ट हो रहे हैं।

  1. निरीक्षण - आवश्यकताओं को व्यवस्थित करते समय ध्यान में रखने वाली एक और बात यह है कि उन्हें हमेशा परीक्षण योग्य होना चाहिए। इसका मतलब यह है कि यह सत्यापित करना संभव होना चाहिए कि सिस्टम प्रश्न में आवश्यकता को पूरा करता है। यह हमारे अगले बिंदु - ट्रैसेबिलिटी से भी जुड़ा है। यदि कोई आवश्यकता अस्पष्ट शब्दों से भरी हुई है, तो यह विश्लेषण करना और सत्यापित करना कठिन हो जाता है कि क्या सिस्टम वास्तव में इन मानकों को प्रदर्शन-वार पूरा करता है। इसलिए, जितना संभव हो, अपनी भाषा में स्पष्टता और सटीकता का लक्ष्य रखें ताकि आवश्यकताएँ एकत्र करना एक अस्पष्ट प्रक्रिया न हो।

  1. सुराग लग सकना - परियोजना प्रबंधन में पता लगाने की क्षमता यह सुनिश्चित करने के लिए है कि परियोजना में अन्य घटकों से आवश्यकताएं जुड़ी हुई हैं। यह परियोजना प्रबंधकों, डेवलपर्स और हितधारकों को सभी दिशाओं के साथ-साथ सिस्टम के अन्य हिस्सों में शुरू से अंत तक एक आवश्यकता के पूरे जीवनचक्र का ट्रैक रखने की अनुमति देता है। यदि आप ट्रेसबिलिटी को ठीक से प्रबंधित करते हैं, तो आप उस कोड से बच सकते हैं जो किसी भी आवश्यकता ('स्ट्रे' कोड) के अनुरूप नहीं है, और सुनिश्चित करें कि प्रत्येक टेस्ट केस में कम से कम एक आवश्यकता शामिल हो। आप आवश्यकताओं को एक विशिष्ट पहचानकर्ता के साथ लेबल करके और टीम के सभी सदस्यों के लिए सुलभ केंद्रीय भंडार में उनके स्रोत के बारे में जानकारी प्रदान करके पता लगाने योग्य बना सकते हैं।

  1. संभव - सुनिश्चित करें कि उपलब्ध संसाधनों के साथ परियोजना बजट और समयरेखा व्यवहार्य है। यदि ये शर्तें आवश्यकता का समर्थन कर सकती हैं, तो योजना के साथ आगे बढ़ना संभव है।

  1. कंसिस्टेंसी (Consistency) - विस्तार का एक सुसंगत स्तर बनाए रखें। उदाहरण के लिए, उपयोगकर्ता की आवश्यकताओं के लिए, एक अंतिम-उपयोगकर्ता प्रत्येक वाक्य का विषय होना चाहिए। इसी तरह, सिस्टम आवश्यकताओं के लिए, सिस्टम प्रत्येक वाक्य का विषय होना चाहिए।

  1. अपवाद - एक आवश्यकता में एस्केप क्लॉज नहीं होना चाहिए। उदाहरण के लिए, "सिस्टम लॉगिन प्रयासों की संख्या निर्धारित करेगा, सिवाय इसके कि जब उपयोगकर्ता ने स्पष्ट रूप से गलत उपयोगकर्ता नाम दर्ज किया हो"।

  1. सक्रिय आवाज - हमेशा सक्रिय आवाज में लिखें, यह सुनिश्चित कर लें कि प्रत्येक वाक्य का विषय अभिनेताओं में से एक है।

  1. "लेट-आउट" क्लॉज को ना कहें - लेकिन, सिवाय, और केवल यदि आवश्यक हो, जैसे लेट-आउट वाक्यांशों से दूर रहने का प्रयास करें।

  1. कोई संक्षिप्ताक्षर नहीं - प्रत्येक आवश्यकता बिना किसी संक्षिप्त या शब्दजाल के एक पूर्ण वाक्य होनी चाहिए।

  1. विषय और विधेय - प्रत्येक आवश्यकता के लिए, एक विषय (उपयोगकर्ता / प्रणाली) और एक विधेय (इच्छित परिणाम, क्रिया या स्थिति) होना चाहिए। 

  1. स्पष्टता - जैसे शब्दों के प्रयोग से होने वाली अस्पष्टता से बचें, आदि, लगभग। और जैसे।

  1. राइट टर्म्स का इस्तेमाल करें - उपयोगकर्ता के अनुकूल, बहुमुखी और मजबूत जैसे अज्ञात शब्द परीक्षण मामलों को परिभाषित करने का प्रयास करते समय कठिनाइयां पैदा कर सकते हैं। ये शब्द अक्सर अलग-अलग लोगों के लिए अलग-अलग अर्थ रखते हैं।

  1. अटकलों से हो सकता है नुकसान - अनुमान मत लगाओ; उन सुविधाओं की सूची न बनाएं जो प्रश्न से बाहर हैं। यह कहना कि आप सभी अप्रत्याशित विफलताओं को संभालने के लिए एक प्रणाली चाहते हैं, शुद्ध कल्पना है क्योंकि कोई भी प्रणाली कभी भी 100 प्रतिशत नहीं होगी जो आप चाहते हैं। दोहराव और विरोधाभासी बयानों से बचें।

  1. विकल्प से बचें - विचारों या विकल्पों की पेशकश न करें। आप इन्हें किसी भी कथन में देख सकते हैं जिसमें वाक्यांश शामिल हो सकते हैं, हो सकता है, कर सकता है, या चाहिए।

  1. संगठित कागजी कार्रवाई चमत्कार करती है - अपने दस्तावेज़ की पठनीयता में सुधार के लिए आवश्यकताओं को एक ही स्थान पर व्यवस्थित रखें और कई स्रोतों को क्रॉस-रेफ़रिंग करने में समय बर्बाद करने से बचें।

  1. हमारे पास जो है उससे बात करें - अभी तक परिभाषित आवश्यकता का उल्लेख न करें। आपका लक्ष्य दस्तावेज़ को पढ़ने के लिए यथासंभव सुखद बनाना है।

  1. क्या इस्तेमाल किया जाना चाहिए और कहाँ? - "होगा" का उपयोग किया जाना चाहिए जहां आवश्यकताएं बताई जा रही हैं, "विल" का उपयोग तथ्यों के बयानों का प्रतिनिधित्व करने के लिए किया जाना चाहिए; और प्राप्त किए जाने वाले लक्ष्य का प्रतिनिधित्व करने के लिए "चाहिए"।

  1. सही बात - सुनिश्चित करें कि प्रत्येक वाक्य एक उचित विषय, क्रिया और विधेय के साथ पूर्ण और व्याकरणिक रूप से सही है।

  1. फोकस - पुराने कागजों के जुगाड़, लंबे वाक्यांशों और संदर्भों को समाप्त करके फोकस स्थापित करें।

Visure आवश्यकताएँ ALM प्लेटफ़ॉर्म

Visure आवश्यकताएँ ALM प्लेटफ़ॉर्म दुनिया भर में सभी आकारों के संगठनों के लिए आवश्यकताओं के प्रबंधन में विशेषज्ञता वाले सबसे भरोसेमंद एप्लिकेशन जीवनचक्र प्रबंधन प्लेटफार्मों में से एक है। Visure के प्रमुख साझेदारों में व्यावसायिक-महत्वपूर्ण और सुरक्षा-महत्वपूर्ण कंपनियाँ शामिल हैं। कंपनी जोखिम प्रबंधन, समस्या और दोष ट्रैकिंग, पता लगाने की क्षमता प्रबंधन, परिवर्तन प्रबंधन, और गुणवत्ता विश्लेषण, आवश्यकता संस्करण, और शक्तिशाली रिपोर्टिंग जैसे विभिन्न अन्य क्षेत्रों सहित संपूर्ण अनुप्रयोग जीवनचक्र प्रबंधन प्रक्रियाओं के माध्यम से एकीकृत करती है।

यदि आप एक आवश्यकता प्रबंधन उपकरण की तलाश कर रहे हैं जो कार्यात्मक और गैर-कार्यात्मक दोनों आवश्यकताओं के साथ आपकी सहायता करेगा, तो Visure आवश्यकताएँ देखें। इस प्लेटफ़ॉर्म के साथ, आप आसानी से एक ही स्थान पर अपने प्रोजेक्ट की सभी आवश्यकताओं को बना सकते हैं, प्रबंधित कर सकते हैं और ट्रैक कर सकते हैं।

निष्कर्ष

महान सॉफ्टवेयर का उत्पादन करने के लिए, एक अच्छी तरह से लिखित आवश्यकता विनिर्देश होना जरूरी है। यह दस्तावेज़ ग्राहक की ज़रूरतों को रेखांकित करता है और सिस्टम को उनकी अपेक्षाओं को पूरा करने के लिए क्या करना चाहिए। हालाँकि, अच्छी आवश्यकताओं को लिखना चुनौतीपूर्ण हो सकता है। ऐसे कई मानक और दिशानिर्देश हैं जिनका पालन किया जाना चाहिए, और आपके द्वारा उपयोग की जाने वाली भाषा और उपकरणों के आधार पर उन्हें लिखने के कई अलग-अलग तरीके हैं। Visure आवश्यकताएँ ALM प्लेटफ़ॉर्म एक ऐसा पाठ्यक्रम प्रदान करता है जो आपको सर्वोत्तम प्रथाओं और उद्योग मानकों का उपयोग करके प्रभावी आवश्यकताओं के विनिर्देशों को लिखना सिखाता है। पाठ्यक्रम में एक आवश्यकता दस्तावेज़ के सभी आवश्यक घटक शामिल हैं, संरचना से स्वरूपण तक, साथ ही लेखन आवश्यकताओं के लिए विभिन्न भाषाओं का उपयोग कैसे करें। यह महान आवश्यकताओं की विशेषताओं पर भी प्रकाश डालता है ताकि आप ऐसे दस्तावेज़ बना सकें जिनके साथ आपकी टीम काम करना पसंद करेगी। यदि आप प्रभावी आवश्यकताओं को लिखने के बारे में अधिक जानना चाहते हैं, तो कोशिश करें आवश्यकताएँ विशिष्टता पाठ्यक्रम Visure आवश्यकताएँ ALM प्लेटफ़ॉर्म द्वारा आज!

इस पोस्ट को शेयर करना न भूलें!

चोटी