Software engineering process, components of software process and predictability in hindi सॉफ्टवेयर इंजीनियरिंग प्रक्रिया, सॉफ्टवेयर प्रक्रिया के घटक और पूर्वानुमानशीलता हिंदी में
सॉफ्टवेयर प्रक्रिया( software)
सॉफ्टवेयर विकास के तकनीकी और प्रबंधन मुद्दों से निपटने वाली प्रक्रिया को सॉफ्टवेयर प्रक्रिया कहा जाता है। स्पष्ट रूप से, सॉफ्टवेयर विकसित करने के लिए कई अलग-अलग प्रकार की गतिविधियों को निष्पादित करने की आवश्यकता होती है। ये सभी गतिविधियाँ मिलकर सॉफ्टवेयर प्रक्रिया बनाती हैं।
चूँकि विभिन्न प्रकार की गतिविधियाँ की जा रही हैं, जिन्हें अक्सर अलग-अलग लोगों द्वारा किया जाता है, इसलिए सॉफ्टवेयर प्रक्रिया को कई घटक प्रक्रियाओं से मिलकर देखना बेहतर है, जिनमें से प्रत्येक में एक निश्चित प्रकार की गतिविधि होती है। इनमें से प्रत्येक घटक प्रक्रिया का आमतौर पर एक अलग उद्देश्य होता है, हालाँकि वे समग्र सॉफ्टवेयर इंजीनियरिंग उद्देश्य पूरा करने के लिए एक-दूसरे के साथ सहयोग करते हैं।
प्रक्रियाएँ और प्रक्रिया मॉडल:-एक सफल परियोजना वह है जो लागत, समय-सारिणी और गुणवत्ता के तीनों लक्ष्यों पर अपेक्षाओं को पूरा करती है। नतीजतन, जब किसी सॉफ्टवेयर परियोजना की योजना और निष्पादन किया जाता है, तो निर्णय ज्यादातर लागत या चक्र समय को कम करने या गुणवत्ता में सुधार करने के उद्देश्य से लिए जाते हैं। सॉफ्टवेयर परियोजनाएँ लागत, समय-सारिणी और गुणवत्ता के मोर्चों पर लक्ष्यों को प्राप्त करने के लिए कार्यों के निष्पादन को व्यवस्थित करने के लिए एक प्रक्रिया का उपयोग करती हैं।
एक परियोजना की प्रक्रिया विनिर्देश परियोजना द्वारा किए जाने वाले कार्यों और उन्हें किस क्रम में किया जाना चाहिए, को परिभाषित करता है। वास्तविक प्रक्रिया तब मौजूद होती है जब परियोजना वास्तव में निष्पादित होती है। यद्यपि प्रक्रिया विनिर्देश वास्तविक प्रक्रिया से अलग है, हम परियोजना के लिए प्रक्रिया विनिर्देश और परियोजना की वास्तविक प्रक्रिया को एक ही मानेंगे, और उन दोनों को संदर्भित करने के लिए प्रक्रिया शब्द का उपयोग करेंगे। हालाँकि, यह उल्लेख किया जाना चाहिए कि यद्यपि हम मान रहे हैं कि किसी निर्दिष्ट प्रक्रिया का पालन करने वाली परियोजना में कोई कठिनाई नहीं है, वास्तव में यह उतना सरल नहीं है। अक्सर परियोजना में अपनाई जा रही वास्तविक प्रक्रिया परियोजना की प्रक्रिया विनिर्देश से बहुत भिन्न हो सकती है। इस विचलन के कारण आलस्य से लेकर प्रक्रिया के महत्व की सराहना की कमी से लेकर "पुरानी आदतें मुश्किल से मरती हैं" तक भिन्न होते हैं। यह सुनिश्चित करना कि परियोजना उस प्रक्रिया का पालन कर रही है जिसके लिए उसने योजना बनाई थी, परियोजनाओं को निष्पादित करने के व्यवसाय में संगठनों के लिए एक महत्वपूर्ण मुद्दा है, और इससे निपटने के विभिन्न तरीके हैं।
एक प्रक्रिया मॉडल एक सामान्य प्रक्रिया को निर्दिष्ट करता है, आमतौर पर चरणों के एक सेट के रूप में जिसमें एक परियोजना को विभाजित किया जाना चाहिए, जिस क्रम में चरणों को निष्पादित किया जाना चाहिए, और चरणों के निष्पादन पर कोई अन्य बाधाएँ और शर्तें। प्रक्रिया मॉडल के पीछे मूल आधार यह है कि, जिन स्थितियों के लिए मॉडल लागू होता है, उनमें प्रक्रिया मॉडल को परियोजना की प्रक्रिया के रूप में उपयोग करने से कम लागत, उच्च गुणवत्ता या कम चक्र समय प्राप्त होगा। दूसरे शब्दों में, एक प्रक्रिया उच्च गुणवत्ता, कम लागत और कम चक्र समय के लक्ष्यों तक पहुँचने का एक साधन है, और एक प्रक्रिया मॉडल किसी परियोजना के लिए उपयुक्त प्रक्रिया विकसित करने के लिए सामान्य दिशानिर्देश प्रदान करता है।Software engineering team management and objectives in hindi सॉफ्टवेयर इंजीनियरिंग टीम प्रबंधन और उद्देश्य हिंदी में।
किसी परियोजना की प्रक्रिया कुछ प्रक्रिया मॉडल का उपयोग कर सकती है। अर्थात, परियोजना की प्रक्रिया में प्रक्रिया मॉडल के साथ सामान्य समानता होती है, जिसमें वास्तविक कार्य परियोजना के लिए विशिष्ट होते हैं। हालाँकि, प्रक्रिया मॉडल का उपयोग करना केवल प्रक्रिया मॉडल में कार्यों को परियोजना में कार्यों में अनुवाद करना नहीं है। आम तौर पर, परियोजना के उद्देश्यों को प्राप्त करने के लिए, एक परियोजना को एक ऐसी प्रक्रिया की आवश्यकता होगी जो प्रक्रिया मॉडल से कुछ अलग हो। अर्थात, परियोजना की प्रक्रिया आम तौर पर एक सामान्य प्रक्रिया मॉडल का एक अनुकूलित संस्करण होती है। किसी विशेष परियोजना के लिए प्रक्रिया मॉडल को कैसे अनुकूलित किया जाना है, यह निश्चित रूप से परियोजना की विशेषताओं पर निर्भर करता है। हमें यह समझने की आवश्यकता है कि किसी परियोजना की प्रक्रिया को प्रक्रिया मॉडल से प्राप्त किया जा सकता है, तथा परियोजना की आवश्यकताओं के अनुरूप प्रक्रिया मॉडल को तैयार किया जा सकता है।
सॉफ्टवेयर प्रक्रिया के घटक ( software development)
विकास प्रक्रिया एक केंद्रीय प्रक्रिया है जो किसी परियोजना में किए जाने वाले कार्यों को निर्दिष्ट करती है। कार्यों की योजना बनाना और शेड्यूल करना तथा उनके निष्पादन की निगरानी करना परियोजना प्रबंधन प्रक्रिया के क्षेत्र में आता है। इसलिए, सॉफ़्टवेयर प्रक्रिया में स्पष्ट रूप से दो प्रमुख घटक होते हैं- एक विकास प्रक्रिया और एक परियोजना प्रबंधन प्रक्रिया जो दो अक्षों के अनुरूप होती है। विकास प्रक्रिया विकास और गुणवत्ता आश्वासन गतिविधियों को निर्दिष्ट करती है जिन्हें निष्पादित करने की आवश्यकता होती है, जबकि प्रबंधन प्रक्रिया निर्दिष्ट करती है कि इन गतिविधियों की योजना कैसे बनाई जाए और उन्हें कैसे नियंत्रित किया जाए ताकि लागत, शेड्यूल, गुणवत्ता और अन्य उद्देश्य पूरे हों।Software development cycle, project management and categories in hindi सॉफ्टवेयर विकास चक्र के तथ्य।
परियोजना के दौरान कई उत्पाद तैयार किए जाते हैं जो आम तौर पर कई मदों से बने होते हैं, उदाहरण के लिए, अंतिम स्रोत कोड कई स्रोत फ़ाइलों से बना हो सकता है। परियोजना के आगे बढ़ने के साथ ये आइटम विकसित होते रहते हैं, जिससे रास्ते में कई संस्करण बनते हैं। यह सुनिश्चित करने के लिए कि उत्पादित किया जा रहा सॉफ़्टवेयर इन मदों के सही संस्करणों का उपयोग करता है, इन मदों के विकास को नियंत्रित करने के लिए उपयुक्त प्रक्रियाओं की आवश्यकता होती है। चूंकि विकास प्रक्रियाएँ आम तौर पर विकास और परिवर्तनों पर ध्यान केंद्रित नहीं करती हैं, इसलिए उन्हें संभालने के लिए अक्सर सॉफ़्टवेयर कॉन्फ़िगरेशन नियंत्रण प्रक्रिया नामक एक अन्य प्रक्रिया का उपयोग किया जाता है। इस घटक प्रक्रिया का उद्देश्य मुख्य रूप से परिवर्तन का प्रबंधन करना है, ताकि परिवर्तनों के बावजूद उत्पादों की अखंडता का उल्लंघन न हो। कभी-कभी, आवश्यकताओं में परिवर्तन को आवश्यकता परिवर्तन प्रबंधन प्रक्रिया द्वारा अलग से संभाला जा सकता है।
Software process
Product engineering process
Process management process
Product engineering process
Development process
Project management process
Software configuration management process
घटक प्रक्रियाएँ परियोजनाओं और उत्पादों पर ध्यान केंद्रित करती हैं और इन्हें उत्पाद इंजीनियरिंग प्रक्रियाओं के रूप में माना जा सकता है, क्योंकि इनका मुख्य उद्देश्य वांछित उत्पाद का उत्पादन करना है। यदि सॉफ़्टवेयर प्रक्रिया को एक स्थिर इकाई के रूप में देखा जा सकता है, तो ये तीन घटक प्रक्रियाएँ पर्याप्त होंगी। हालाँकि, एक सॉफ़्टवेयर प्रक्रिया अपने आप में एक गतिशील इकाई है, क्योंकि इसे सॉफ़्टवेयर विकास और नई तकनीकों और उपकरणों की उपलब्धता के बारे में हमारी बढ़ती समझ के अनुकूल होने के लिए बदलना होगा। इसके कारण, सॉफ़्टवेयर प्रक्रिया को प्रबंधित करने के लिए एक प्रक्रिया की आवश्यकता है। प्रक्रिया प्रबंधन प्रक्रिया का मूल उद्देश्य सॉफ़्टवेयर प्रक्रिया में सुधार करना है। सुधार से हमारा मतलब है कि कम लागत पर गुणवत्तापूर्ण सामान बनाने की प्रक्रिया की क्षमता में सुधार होता है। इसके लिए, वर्तमान सॉफ़्टवेयर प्रक्रिया का अध्ययन किया जाता है, अक्सर प्रक्रिया का उपयोग करके की गई परियोजनाओं का अध्ययन करके। वर्तमान प्रक्रिया को समझने, इसके गुणों का विश्लेषण करने, यह निर्धारित करने की पूरी प्रक्रिया कि कैसे सुधार किया जाए, और फिर सुधार को प्रभावित करने की प्रक्रिया प्रक्रिया प्रबंधन प्रक्रिया द्वारा निपटाई जाती है। ये घटक प्रक्रियाएँ न केवल उनमें की जाने वाली गतिविधियों के प्रकार में भिन्न होती हैं, बल्कि आमतौर पर उन लोगों में भी भिन्न होती हैं जो प्रक्रिया द्वारा निर्दिष्ट गतिविधियों को करते हैं। एक विशिष्ट परियोजना में, विकास गतिविधियां प्रोग्रामर, डिजाइनर, परीक्षक आदि द्वारा निष्पादित की जाती हैं; परियोजना प्रबंधन प्रक्रिया गतिविधियां परियोजना प्रबंधन द्वारा निष्पादित की जाती हैं; कॉन्फ़िगरेशन नियंत्रण प्रक्रिया गतिविधियां एक समूह द्वारा निष्पादित की जाती हैं, जिसे आम तौर पर कॉन्फ़िगरेशन नियंत्रक कहा जाता है; और प्रक्रिया प्रबंधन प्रक्रिया गतिविधियां सॉफ्टवेयर इंजीनियरिंग प्रक्रिया समूह (SEPG) द्वारा निष्पादित की जाती हैं।
पूर्वानुमान
किसी प्रक्रिया की पूर्वानुमानशीलता यह निर्धारित करती है कि परियोजना के पूरा होने से पहले किसी परियोजना में उस प्रक्रिया का अनुसरण करने के परिणाम का कितना सटीक पूर्वानुमान लगाया जा सकता है। पूर्वानुमानशीलता को किसी भी प्रक्रिया का मूलभूत गुण माना जा सकता है। वास्तव में, यदि कोई प्रक्रिया पूर्वानुमान योग्य नहीं है, तो इसका उपयोग सीमित है।
लागत का अनुमान लगाने का एक तरीका यह हो सकता है कि, "यह परियोजना A, परियोजना B के समान है जिसे हमने 2 वर्ष पहले किया था, इसलिए A की लागत B की लागत के बहुत करीब होगी।" हालाँकि, इस सरल विधि का भी तात्पर्य यह है कि परियोजना A को विकसित करने के लिए जिस प्रक्रिया का उपयोग किया जाएगा, वह परियोजना B के लिए उपयोग की जाने वाली प्रक्रिया के समान होगी, और दूसरी बार प्रक्रिया का अनुसरण करने पर पहली बार के समान परिणाम प्राप्त होंगे। यानी, यह मान लिया जाता है कि प्रक्रिया पूर्वानुमान योग्य है। यदि यह पूर्वानुमान योग्य नहीं थी, तो इस बात की कोई गारंटी नहीं है कि प्रक्रिया का उपयोग करके समान परियोजना करने पर समान लागत आएगी। गुणवत्ता के साथ स्थिति समान है। गुणवत्ता पूर्वानुमान का मूल आधार यह है कि उत्पाद की गुणवत्ता काफी हद तक इसे विकसित करने के लिए उपयोग की जाने वाली प्रक्रिया द्वारा निर्धारित की जाती है। इस आधार का उपयोग करके, वर्तमान परियोजना में उपयोग की जा रही प्रक्रिया द्वारा अतीत में उत्पादित उत्पादों की गुणवत्ता को देखकर किसी परियोजना के उत्पाद की गुणवत्ता का अनुमान या पूर्वानुमान लगाया जा सकता है।
वास्तव में, गुणवत्ता नियंत्रण गतिविधियों का प्रभावी प्रबंधन काफी हद तक प्रक्रिया की पूर्वानुमेयता पर निर्भर करता है। उदाहरण के लिए, प्रभावी गुणवत्ता नियंत्रण के लिए, एक विधि यह अनुमान लगाना है कि विकास के किस चरण में किस प्रकार और मात्रा में त्रुटियों का पता लगाया जाएगा, और फिर उनका उपयोग यह निर्धारित करने के लिए करें कि गुणवत्ता आश्वासन गतिविधियाँ ठीक से की जा रही हैं या नहीं। यह तभी किया जा सकता है जब प्रक्रिया पूर्वानुमेय हो; ऐसी प्रक्रिया के पिछले अनुभव के आधार पर कोई वर्तमान परियोजना के लिए त्रुटियों के वितरण का अनुमान लगा सकता है।
पूर्वानुमेय प्रक्रिया को सांख्यिकीय नियंत्रण के तहत भी कहा जाता है। एक प्रक्रिया सांख्यिकीय नियंत्रण के तहत होती है यदि उसी प्रक्रिया का पालन करने से समान परिणाम मिलते हैं - परिणामों में कुछ भिन्नता होगी, लेकिन भिन्नता ज्यादातर यादृच्छिक कारणों के कारण होती है न कि प्रक्रिया के मुद्दों के कारण
आकृति में गहरी रेखा इस प्रक्रिया के लिए संपत्ति का अपेक्षित मूल्य है। सांख्यिकीय नियंत्रण का तात्पर्य है कि अधिकांश समय रुचि की संपत्ति अपेक्षित मूल्य के आसपास एक सीमा के भीतर होगी।
यह स्पष्ट होना चाहिए कि यदि कोई व्यक्ति लगातार कम लागत पर उच्च गुणवत्ता वाला सॉफ़्टवेयर विकसित करना चाहता है, तो उसके लिए एक ऐसी प्रक्रिया का होना आवश्यक है जो सांख्यिकीय नियंत्रण में हो। अच्छी गुणवत्ता और कम लागत सुनिश्चित करने के लिए एक पूर्वानुमानित प्रक्रिया एक आवश्यक आवश्यकता है। ध्यान दें कि इसका मतलब यह नहीं है कि कोई व्यक्ति ऐसी प्रक्रिया का पालन किए बिना कभी भी कम लागत पर उच्च गुणवत्ता वाला सॉफ़्टवेयर नहीं बना सकता है। यह हमेशा संभव है कि कुछ प्रतिभाशाली लोग ऐसा कर सकें। हालाँकि, इसका मतलब यह है कि ऐसी प्रक्रिया के बिना, ऐसी चीज़ें दोहराई नहीं जा सकतीं। इसलिए, यदि कोई व्यक्ति कई परियोजनाओं में लगातार गुणवत्ता चाहता है, तो एक पूर्वानुमानित प्रक्रिया का होना आवश्यक है।
Faq
Question -1 सॉफ्टवेयर इंजीनियर विकास की क्या प्रक्रिया है?
Answer -सॉफ्टवेयर विकास के तकनीकी और प्रबंधन कार्यों में भूमिका निभाने वाली प्रक्रिया को सॉफ्टवेयर प्रक्रिया कहा जाता है। मुख्य रूप से, सॉफ्टवेयर विकसित करने के लिए कई भिन्न भिन्न प्रकार की गतिविधियों को निष्पादित करने की आवश्यकता होती है। ये सभी गतिविधियाँ मिलकर सॉफ्टवेयर प्रक्रिया बनाती हैं।
Question-2 सॉफ्टवेयर प्रक्रिया के घटक कौन से है?
Answer - सॉफ्टवेयर प्रक्रिया
उत्पाद इंजीनियरिंग प्रक्रिया
प्रक्रिया प्रबंधन प्रक्रिया
उत्पाद इंजीनियरिंग प्रक्रिया
विकास प्रक्रिया
परियोजना प्रबंधन प्रक्रिया
सॉफ्टवेयर कॉन्फ़िगरेशन प्रबंधन प्रक्रिया
Post a Comment