सॉफ्टवेयर इंजीनियरिंग में वैकल्पिक आवश्यकता के लिए बेहतर शब्द क्या है? वाक्यांश विरोधाभासी है। मैंने पिछले प्रोजेक्ट्स में "नॉन-कोर रिक्वायरमेंट्स" का उपयोग किया है।
सॉफ्टवेयर इंजीनियरिंग में वैकल्पिक आवश्यकता के लिए बेहतर शब्द क्या है? वाक्यांश विरोधाभासी है। मैंने पिछले प्रोजेक्ट्स में "नॉन-कोर रिक्वायरमेंट्स" का उपयोग किया है।
जवाबों:
शब्द "स्कोप आवश्यकता से बाहर" संभवतः उपयोग किया जा सकता है। इसका अर्थ है कि आपकी प्रक्रिया के भीतर आवश्यकता पर कब्जा कर लिया गया है और यह ट्रैक करने योग्य है, लेकिन यह निर्धारित किया गया है कि आवश्यकता कुछ ऐसी है जो सिस्टम के वर्तमान दायरे से परे है, कई कारणों से, जैसे कि बजट, अनुसूची, समय, या व्यवहार्यता।
हालांकि, वाक्यांश "वैकल्पिक आवश्यकता" का उपयोग आमतौर पर किसी ऐसी चीज को दर्शाने के लिए किया जाता है जो दायरे में है, लेकिन सिस्टम द्वारा आवश्यक नहीं है। यह आवश्यकता की प्राथमिकता का माप है। मेरे अनुभवों में, आवश्यकताओं को अक्सर अनिवार्य, वांछनीय या वैकल्पिक के रूप में प्राथमिकता दी जाती है (हालांकि अन्य योजनाएं भी हैं)। एक परियोजना को पूर्ण और पूर्ण रूप से कार्यात्मक माना जाने के लिए, सभी अनिवार्य आवश्यकताओं को पूरा करना चाहिए। पर्याप्त संसाधनों को देखते हुए, वांछनीय आवश्यकताओं को अगले लागू किया जाएगा। अंत में, वैकल्पिक माना जाने वाला कुछ भी शामिल किया जाएगा।
मेरा मानना है कि भ्रम "आवश्यकता" शब्द से आया है। अंग्रेजी भाषा में, एक आवश्यकता "एक ऐसी चीज है जिसकी आवश्यकता है" या "एक अनिवार्य, अनिवार्य या आवश्यक शर्त"। हालांकि, सॉफ्टवेयर इंजीनियरिंग में, शब्द की आवश्यकता केवल एक सॉफ्टवेयर सिस्टम की एक प्रलेखित विशेषता है। वैकल्पिक और अनिवार्य की अवधारणा सॉफ्टवेयर सिस्टम की प्रलेखित विशेषता की प्राथमिकता का वर्णन करती है।
हम उन्हें आवश्यकताओं के विपरीत "अच्छा है" सुविधाओं के रूप में संदर्भित करते हैं।
सॉफ़्टवेयर आवश्यकताओं के दस्तावेज़ीकरण के लिए, वैकल्पिक आवश्यकताएं पूरी करना ठीक है, जब तक कि आप इस शब्द का उपयोग RFC 2119 के अनुरूप शब्दों के लिए करें। आवश्यकताएं इंगित करने के लिए मुख्य शब्द - यानी आइटम को इंगित करना जो वास्तव में वैकल्पिक हैं।
जब आपके विनिर्देशन पाठ का अर्थ विशेषण के बजाय क्रिया है, तो "वैकल्पिक" के बजाय "MAY" का उपयोग करें।
चूंकि यह छोटा और पढ़ने में आसान है, RFC पाठ पूरी तरह से नीचे उद्धृत किया गया है:
नेटवर्क वर्किंग ग्रुप एस। ब्रैडनर टिप्पणियाँ के लिए अनुरोध: 2119 हार्वर्ड विश्वविद्यालय BCP: 14 मार्च 1997 श्रेणी: सर्वश्रेष्ठ वर्तमान अभ्यास आरएफसी में उपयोग के लिए मुख्य शब्द आवश्यकता स्तर को इंगित करने के लिए इस मेमो की स्थिति यह दस्तावेज़ इंटरनेट के लिए इंटरनेट बेस्ट करंट प्रैक्टिस को निर्दिष्ट करता है इंटरनेट समुदाय, और चर्चा और सुझावों के लिए अनुरोध करता है सुधार। इस मेमो का वितरण असीमित है। सार कई मानकों में दस्तावेजों को ट्रैक करने के लिए कई शब्दों का इस्तेमाल किया जाता है विनिर्देशन में आवश्यकताएँ। ये शब्द अक्सर होते हैं पूंजीकृत। यह दस्तावेज़ इन शब्दों को परिभाषित करता है जैसा कि उन्हें होना चाहिए IETF दस्तावेजों में व्याख्या की गई। लेखक जो इन दिशानिर्देशों का पालन करते हैं इस वाक्यांश को उनके दस्तावेज की शुरुआत के पास शामिल करना चाहिए: मुख्य शब्द "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL नहीं "," जूते "," जूते नहीं "," सुसज्जित "," मई ", और इस दस्तावेज़ में "वैकल्पिक" की व्याख्या की जानी है आरएफसी 2119। ध्यान दें कि इन शब्दों के बल को आवश्यकता द्वारा संशोधित किया गया है दस्तावेज़ का स्तर जिसमें उनका उपयोग किया जाता है। 1. इस शब्द, या शब्द "आवश्यक" या "हिला" का मतलब है कि परिभाषा विनिर्देश की एक परम आवश्यकता है। 2. यह वाक्यांश नहीं होना चाहिए, या वाक्यांश "SHALL NOT", का अर्थ है कि परिभाषा विनिर्देशन का पूर्ण निषेध है। 3. शब्द इस शब्द, या विशेषण "अनुशंसित", का मतलब है कि वहाँ किसी विशेष परिस्थिति में अनदेखी करने के लिए मान्य कारण मौजूद हो सकते हैं विशेष आइटम, लेकिन पूर्ण निहितार्थ को समझना चाहिए और एक अलग पाठ्यक्रम चुनने से पहले सावधानी से तौला गया। 4. यह वाक्यांश नहीं होना चाहिए, या वाक्यांश "कम नहीं" का मतलब है कि जब विशेष परिस्थितियों में वैध कारण मौजूद हो सकते हैं विशेष व्यवहार स्वीकार्य या उपयोगी भी है, लेकिन पूर्ण निहितार्थ को समझा जाना चाहिए और मामले को सावधानीपूर्वक तौला जाना चाहिए इस लेबल के साथ वर्णित किसी भी व्यवहार को लागू करने से पहले। 5. यह शब्द, या विशेषण "वैकल्पिक", का अर्थ है कि एक आइटम है वास्तव में वैकल्पिक। एक विक्रेता आइटम शामिल करना चुन सकता है क्योंकि ए विशेष बाज़ार को इसकी आवश्यकता होती है या क्योंकि विक्रेता को लगता है कि यह उत्पाद को बढ़ाता है जबकि एक अन्य विक्रेता उसी वस्तु को छोड़ सकता है। एक कार्यान्वयन जिसमें एक विशेष विकल्प शामिल नहीं होना चाहिए एक और कार्यान्वयन के साथ हस्तक्षेप करने के लिए तैयार है जो करता है विकल्प को शामिल करें, हालांकि शायद कम कार्यक्षमता के साथ। में एक ही कार्यान्वयन को लागू करता है जिसमें एक विशेष विकल्प शामिल होता है एक और कार्यान्वयन के साथ हस्तक्षेप करने के लिए तैयार रहना चाहिए विकल्प को शामिल नहीं करता है (सिवाय, निश्चित रूप से, सुविधा के लिए विकल्प प्रदान करता है।) 6. इन इंपीरियल के उपयोग में मार्गदर्शन इस मेमो में परिभाषित प्रकार के अभिलक्षणों का उपयोग सावधानी से किया जाना चाहिए और संयम से। विशेष रूप से, उन्हें केवल उसी जगह उपयोग किया जाना चाहिए जहां वह है वास्तव में अंतर्विरोध या व्यवहार को सीमित करने के लिए जो आवश्यक है नुकसान पहुंचाने की क्षमता (जैसे, रिट्रेंसमीशन को सीमित करना) के लिए उदाहरण के लिए, उनका उपयोग किसी विशेष विधि को लागू करने के लिए नहीं किया जाना चाहिए इंप्लॉयर्स पर जहां इंटरऑपरेबिलिटी के लिए विधि की आवश्यकता नहीं है। 7. सुरक्षा संबंधी बातें सुरक्षा के साथ व्यवहार को निर्दिष्ट करने के लिए इन शर्तों का अक्सर उपयोग किया जाता है निहितार्थ। एमयूएसटी लागू नहीं करने की सुरक्षा पर प्रभाव या विकल्प, या कुछ करना चाहिए विनिर्देशन कहता है कि नहीं होना चाहिए या नहीं होना चाहिए नहीं किया जा सकता है बहुत सूक्ष्म हो सकता है। दस्तावेज़ लेखकों को समय लेना चाहिए निम्नलिखित का सुरक्षा निहितार्थ विस्तृत करने के लिए सिफारिशों या आवश्यकताओं के रूप में ज्यादातर कार्यान्वयनकर्ताओं के पास नहीं होगा उस अनुभव और चर्चा का लाभ मिला जिसने उत्पादन किया विनिर्देश। 8. आभार इन शर्तों की परिभाषाएँ ली गई परिभाषाओं का एक समूह हैं कई RFC से। इसके अतिरिक्त, सुझाव दिए गए हैं रॉबर्ट Ullmann, थॉमस सहित कई लोगों से शामिल Narten, Neal McBurnett, और Robert Elz।
यदि आपका दस्तावेज़ RFC को परिभाषाओं के स्रोत के रूप में संदर्भित करता है, तो यह दुख नहीं होगा:
यह दस्तावेज़ RFC 2119 में निर्दिष्ट लोगों के आधार पर परिभाषाओं का उपयोग करता है ।
मैं सराहना करता हूं कि यह आपके प्रश्न का उत्तर नहीं है, लेकिन मेरी दुनिया में, यह अभी भी एक आवश्यकता है, भले ही आप इसे पूरा करने के लिए नहीं जा रहे हों।
मुझे उपयोगकर्ताओं के साथ आवश्यकताओं को वर्गीकृत करने के लिए MoSCoW दृष्टिकोण (होना चाहिए, होना चाहिए, होना चाहिए था, इस समय नहीं है) के साथ-साथ अन्य कारकों के साथ (मेरी विनियमित दुनिया में, आवश्यकताएं महत्वपूर्ण या गैर-महत्वपूर्ण हो सकती हैं, और कई तर्क वैकल्पिक लेकिन महत्वपूर्ण आवश्यकताओं पर भड़कता है।)
वैकल्पिक आवश्यकता के लिए एक बेहतर शब्द है " अनुशंसा "
एक वैकल्पिक सुविधा या वैकल्पिक कार्यों के रूप में इसकी पहचान कैसे करें। यह केवल तभी किया जाएगा जब परियोजना में एक निश्चित बिंदु पर यह निर्धारित किया गया है कि इन सुविधाओं को पूरा करने के लिए समय और धन उपलब्ध है।
यदि कोई बाहरी घटना होती है तो उन्हें ट्रिगर भी किया जा सकता है। यदि ग्राहक विंडोज 8 पर स्विच करते हैं, तो निम्न कार्यों को करने की आवश्यकता होगी ...
फीचर के विवरण में यह निर्धारित करने के लिए एक समय सीमा शामिल होनी चाहिए कि क्या वे किया जाएगा।
सॉफ्टवेयर इंजीनियरिंग में आवश्यकताओं को 4 क्षेत्र में वर्गीकृत किया गया है:
अब आवश्यकताएं वैकल्पिक या अनिवार्य हो सकती हैं , उपरोक्त 4 श्रेणियों के आधार पर, मैंने ऊपर उल्लिखित किया है। वैकल्पिक आवश्यकताएं विचाराधीन प्रणाली के दायरे में भी आ सकती हैं या इसके दायरे से बाहर भी हो सकती हैं। स्कोप रेंगना से बचने और सटीक शब्दों में अपने दायरे को परिभाषित करने के लिए वैकल्पिक आवश्यकताएं अच्छे साधन हैं।
वैकल्पिक आवश्यकताएँ हमेशा सॉफ़्टवेयर इंजीनियरिंग का एक हिस्सा होंगी क्योंकि वे गुंजाइश की पहचान करने में हमारी मदद करते हैं और स्कोप रेंगना से बचने के लिए एक अच्छा साधन हैं। आप कभी नहीं कह सकते कि वे एसडीएलसी के इंजीनियरिंग प्रथाओं का खंडन करते हैं। हालाँकि, आवश्यकताओं को प्राथमिकता और अच्छी तरह से परिभाषित किया गया है।
में Volere टेम्पलेट शब्द "प्रतीक्षालय" प्रयोग किया जाता है।
... यह टेम्पलेट आपकी आवश्यकताओं के विनिर्देशों के आधार के रूप में उपयोग के लिए अभिप्रेत है। टेम्पलेट आज के व्यापार, वैज्ञानिक और सॉफ्टवेयर सिस्टम के लिए उपयुक्त प्रत्येक प्रकार की आवश्यकताओं के लिए प्रदान करता है। यह आपकी आवश्यकताओं के लिए एक चेकलिस्ट, संरचना और ट्रैसेबिलिटी प्रदान करता है ... टेम्प्लेट स्वतंत्र रूप से उपकरण है, और योनिक्स, आवश्यक, दरवाजे, कैलिबर आरएम, आईआरकेए और अन्य लोकप्रिय उपकरणों के साथ सफलतापूर्वक उपयोग किया गया है ...
वोलेरे तकनीक का वर्णन सुजैन द रिक्वायरिंग प्रोसेस द्वारा सुजैन रॉबर्टसन और जेम्स रॉबर्टसन की पुस्तक में किया गया है ...
मेरे व्यवसाय (अंतरिक्ष यान) में, उन्हें या तो "लक्ष्य" कहा जाता है, यह दर्शाता है कि वे प्रलेखित हैं और उनसे मिलने के लिए प्रयास किया जाएगा, लेकिन सिस्टम अभी भी सफल माना जाएगा यदि वे नहीं मिले हैं; "इच्छाएँ" (एक वास्तविक शब्द नहीं है, लेकिन आप वहाँ हैं), यह दर्शाता है कि कोई उन्हें चाहता है और वे लक्ष्यों की स्थिति प्राप्त करने की कोशिश कर रहे हैं लेकिन अभी तक स्वीकार या प्रलेखित नहीं हैं; या "रेंगने वाली आवश्यकताएं" जो कि उन चीज़ों को दर्शाने वाली इच्छाओं का एक अधिक अपमानजनक संस्करण है जो संसाधनों को लेने की कोशिश कर रही हैं, लेकिन "अच्छा पर्याप्त" प्राप्त करने की कोशिश कर रहे प्रोजेक्ट में इसके लायक नहीं हैं, जहां वे वास्तविक आवश्यकताओं को प्राप्त करने के लिए समझौता या धमकी देंगे।
यदि आपकी आवश्यकताओं को प्राथमिकता दी जाती है , तो आप उन्हें कम प्राथमिकता वाली आवश्यकताएँ मान सकते हैं ।
मैं काफी हैरान हूं कि किसी ने भी यह उल्लेख नहीं किया कि उन्हें "उद्देश्य" कहा जाता है। मैंने जिस भी कंपनी के लिए काम किया है, उन्हें बुलाया है। उन्हें "करेगा" के बजाय "इच्छा" या "चाहिए" शब्दों के उपयोग द्वारा निरूपित किया जाता है। कभी-कभी वे संख्याओं के बारे में बात करते समय ब्रेसिज़ में शामिल होते हैं। उदाहरण के लिए सिस्टम 100 {250} घंटों के लिए ऑपरेटर के ध्यान की आवश्यकता के बिना लगातार काम करेगा। मतलब यह है कि जो आवश्यकता पूरी की जानी चाहिए वह 100 घंटे की है, लेकिन उद्देश्य 250 घंटे का है।
एक साइड नोट के रूप में, बहुत ही कम लोग वास्तव में कभी भी वस्तुनिष्ठ आवश्यकता को पूरा करने के लिए डिजाइन करते हैं, जब तक कि किसी प्रकार का प्रोत्साहन शामिल न हो।
शब्द "इच्छा" कभी-कभी वैकल्पिक आवश्यकताओं के लिए उपयोग किया जाता है। हालांकि, यह एक औपचारिक दस्तावेज के लिए उपयुक्त नहीं हो सकता है।
मुझे आश्चर्य है कि सभी प्रतिक्रियाएं परियोजना के विकास में ट्रैकिंग आवश्यकताओं से संबंधित हैं। एक डेवलपर होने के बावजूद मैंने इस संदर्भ में इस शब्दावली के बारे में कभी चिंता नहीं की। जब मैंने पहली बार प्रश्न को पढ़ा तो मैंने इसे उपयोगकर्ता उत्पाद विनिर्देश से संबंधित माना, न कि उत्पाद विकास। उदाहरण के लिए, एक विश्वकोश एक वैकल्पिक आवश्यकता के रूप में एक रंगीन प्रिंटर सूचीबद्ध कर सकता है। यदि आप एप का पूर्ण लाभ चाहते हैं लेकिन स्क्रीन देखना चाहते हैं तो वैकल्पिक है। लेकिन क्या होगा अगर आपके पास उदाहरण के लिए एक मोनोक्रोम प्रिंटर था? यह स्पष्ट कैसे करें कि क्या आपका ऐप आपत्तिजनक प्रतिबंध के साथ काम करता है कि कुछ तस्वीरें इतनी अच्छी नहीं लग सकती हैं? या एक और उदाहरण के रूप में प्रिंट नहीं; मुझे प्रिंटर की समीक्षा कैसे जांचनी चाहिए कि स्याही एक बहु-फ़ंक्शन प्रिंटर में आवश्यकता है या वैकल्पिक आवश्यकता है? दूसरे शब्दों में क्या मैं अभी भी स्कैन कर सकता हूं? शब्दावली पर कुछ संकेत और खोज करने के लिए उत्पाद डेवलपर / विक्रेता और एक उपभोक्ता के रूप में दोनों का स्वागत किया जाएगा।