सॉफ्टवेयर प्रक्रियाएँ और कार्यप्रणालियाँ
सॉफ्टवेयर प्रक्रियाएँ और कार्यप्रणालियाँ गतिविधियों, मील के पत्थरों और प्रथाओं के संरचित ढाँचे हैं जो यह व्यवस्थित करते हैं कि सॉफ्टवेयर को उसके जीवनकाल में कैसे निर्दिष्ट किया जाता है, डिज़ाइन किया जाता है, बनाया जाता है, मान्य किया जाता है और विकसित किया जाता है।
Definition
एक सॉफ्टवेयर प्रक्रिया संबंधित गतिविधियों का एक समूह और उनका क्रम है जो एक सॉफ्टवेयर उत्पाद के उत्पादन की ओर ले जाता है, और एक सॉफ्टवेयर कार्यप्रणाली एक प्रलेखित दृष्टिकोण है जो परियोजनाओं के एक वर्ग के लिए उन गतिविधियों, भूमिकाओं, कलाकृतियों और प्रथाओं को निर्धारित करती है।
Scope
यह क्षेत्र वाटरफॉल, वृद्धिशील और सर्पिल मॉडल जैसे निर्देशात्मक प्रक्रिया मॉडल को शामिल करता है; पुनरावृत्त और विकासवादी दृष्टिकोण; एजाइल कार्यप्रणालियाँ और उनके मूल्य और समारोह; निरंतर एकीकरण और वितरण के लिए लीन और DevOps प्रथाएँ; और CMMI और ISO/IEC 12207 जैसे प्रक्रिया सुधार ढाँचे। यह प्रक्रियाओं की अमूर्त संरचना और उनके अपनाने को नियंत्रित करने वाले मानवीय और संगठनात्मक कारकों दोनों पर विचार करता है।
Sub-topics
Core questions
- विनिर्देशन, डिज़ाइन, कार्यान्वयन और सत्यापन की गतिविधियों को कैसे व्यवस्थित और पुनरावृत्त किया जाना चाहिए?
- योजना-संचालित (भविष्य कहनेवाला) प्रक्रियाएँ एजाइल (अनुकूली) प्रक्रियाओं से कब बेहतर होती हैं?
- एक प्रक्रिया को कैसे मापा, मूल्यांकित और वृद्धिशील रूप से सुधारा जा सकता है?
- टीम संरचना, संचार और उपकरण एक प्रक्रिया की प्रभावशीलता को कैसे आकार देते हैं?
Key theories
- वाटरफॉल (योजना-संचालित) मॉडल
- एक अनुक्रमिक मॉडल जिसमें आवश्यकताएँ, डिज़ाइन, कार्यान्वयन, सत्यापन और रखरखाव औपचारिक साइन-ऑफ के साथ अलग-अलग चरणों के रूप में होते हैं, जो स्थिर, अच्छी तरह से समझी गई आवश्यकताओं के लिए उपयुक्त है, लेकिन परिवर्तन के खराब समायोजन के लिए इसकी आलोचना की जाती है।
- सर्पिल और जोखिम-संचालित मॉडल
- बोहम का सर्पिल मॉडल विकास को दोहराए जाने वाले चक्रों के रूप में व्यवस्थित करता है, प्रत्येक उच्चतम परियोजना जोखिमों की पहचान और समाधान द्वारा संचालित होता है, जो स्पष्ट जोखिम प्रबंधन के साथ पुनरावृत्त विकास को एकीकृत करता है।
- एजाइल और पुनरावृत्त-वृद्धिशील विकास
- एजाइल तरीके कम पुनरावृत्तियों में काम करने वाले सॉफ्टवेयर वितरित करते हैं, जो ग्राहक सहयोग, परिवर्तन का जवाब देने और भारी अग्रिम योजना और प्रलेखन पर लगातार प्रतिक्रिया का पक्ष लेते हैं।
Clinical relevance
प्रक्रिया का चुनाव सीधे वितरण की पूर्वानुमेयता, दोष दरों, बदलती आवश्यकताओं को अवशोषित करने की क्षमता और टीम की उत्पादकता को प्रभावित करता है; आधुनिक अभ्यास गुणवत्ता और अनुपालन को बनाए रखते हुए फीडबैक लूप को छोटा करने के लिए एजाइल पुनरावृत्ति को DevOps स्वचालन के साथ मिश्रित करता है।
Evidence & guidelines
ISO/IEC/IEEE 12207 सॉफ्टवेयर जीवन-चक्र प्रक्रियाओं को मानकीकृत करता है, और SWEBOK सॉफ्टवेयर इंजीनियरिंग प्रक्रिया ज्ञान क्षेत्र और CMMI प्रक्रिया परिभाषा और सुधार के लिए व्यापक रूप से उपयोग किए जाने वाले संदर्भ ढाँचे प्रदान करते हैं।
History
प्रारंभिक बड़े-सिस्टम विकास ने 1970 के दशक में चरणबद्ध, दस्तावेज़-संचालित मॉडल को लोकप्रिय बनाया। बोहम ने 1988 में स्पष्ट जोखिम-संचालित पुनरावृत्ति की शुरुआत की, रैशनल यूनिफाइड प्रोसेस ने 1990 के दशक में पुनरावृत्त विकास को औपचारिक रूप दिया, और 2001 के एजाइल मैनिफेस्टो ने हल्के, परिवर्तन-सहिष्णु तरीकों को क्रिस्टलीकृत किया, जो 2010 के दशक में DevOps के साथ मुख्यधारा बन गए।
Debates
- योजना-संचालित बनाम एजाइल प्रक्रियाएँ
- एक लंबे समय से चली आ रही बहस इस बात पर है कि कब भविष्य कहनेवाला, दस्तावेज़-भारी प्रक्रियाएँ अनुकूली एजाइल प्रक्रियाओं से बेहतर प्रदर्शन करती हैं; आम सहमति यह है कि सही संतुलन आवश्यकता स्थिरता, नियामक बाधाओं, टीम के आकार और देर से परिवर्तन की लागत पर निर्भर करता है।
Key figures
- Winston W. Royce
- Barry Boehm
- Kent Beck
- Watts Humphrey
Related topics
Seminal works
- royce1970
- boehm1988
- sommerville2015
Frequently asked questions
- क्या वाटरफॉल मॉडल अप्रचलित है?
- शुद्ध अनुक्रमिक वाटरफॉल विकसित हो रही आवश्यकताओं वाली परियोजनाओं के लिए शायद ही कभी आदर्श होता है, लेकिन इसकी चरणबद्ध संरचना अभी भी विनियमित और सुरक्षा-महत्वपूर्ण डोमेन को सूचित करती है और हाइब्रिड मॉडल को रेखांकित करती है; अधिकांश आधुनिक परियोजनाएँ अनुशासित विनिर्देशन और सत्यापन को बनाए रखने वाले पुनरावृत्त या एजाइल वेरिएंट का उपयोग करती हैं।
- एक प्रक्रिया और एक कार्यप्रणाली के बीच क्या अंतर है?
- एक प्रक्रिया गतिविधियों और उनके क्रम का वर्णन करती है, जबकि एक कार्यप्रणाली एक अधिक पूर्ण, नामित नुस्खा है जो भूमिकाओं, कलाकृतियों, समारोहों और प्रथाओं को भी ठीक करती है; स्क्रम और रैशनल यूनिफाइड प्रोसेस ऐसी कार्यप्रणालियाँ हैं जो पुनरावृत्त या एजाइल प्रक्रियाओं को उदाहरणित करती हैं।