Scrum और Agile Development में क्या अंतर है? क्या स्प्रिंट और Iterations समान हैं?
Scrum और Agile Development में क्या अंतर है? क्या स्प्रिंट और Iterations समान हैं?
जवाबों:
Scrum कई पुनरावृत्त और वृद्धिशील चुस्त सॉफ्टवेयर विकास विधियों में से एक है। आप यहां इस प्रक्रिया का बहुत विस्तृत विवरण पा सकते हैं ।
SCRUM पद्धति में, एक स्प्रिंट विकास की मूल इकाई है। प्रत्येक स्प्रिंट एक योजना बैठक के साथ शुरू होता है, जहां स्प्रिंट के कार्यों की पहचान की जाती है और स्प्रिंट लक्ष्य के लिए अनुमानित प्रतिबद्धता बनाई जाती है। स्प्रिंट एक समीक्षा या पूर्वव्यापी बैठक के साथ समाप्त होता है जहां प्रगति की समीक्षा की जाती है और अगले स्प्रिंट के लिए सबक की पहचान की जाती है। प्रत्येक स्प्रिंट के दौरान, टीम एक उत्पाद के तैयार हिस्से बनाती है।
चुस्त तरीकों में प्रत्येक पुनरावृत्ति में एक पूर्ण सॉफ्टवेयर विकास चक्र के माध्यम से काम करने वाली एक टीम शामिल होती है, जिसमें नियोजन, आवश्यकताओं का विश्लेषण, डिजाइन, कोडिंग, इकाई परीक्षण और स्वीकृति परीक्षण शामिल होता है जब एक कार्यशील उत्पाद को हितधारकों के लिए प्रदर्शित किया जाता है।
इसलिए यदि किसी SCRUM स्प्रिंट में आप सभी सॉफ़्टवेयर डेवलपमेंट फ़ेज़ (आवश्यकता विश्लेषण से लेकर स्वीकृति परीक्षण तक) करते हैं, और मेरी राय में, तो आप कह सकते हैं कि SCRUM स्प्रिंट, AGile Iterations के अनुरूप हैं।
जैसा कि ऊपर दूसरों ने उल्लेख किया है,
सॉफ्टवेयर प्रोजेक्ट्स और प्रोडक्ट या एप्लिकेशन डेवलपमेंट के प्रबंधन के लिए स्क्रम एक पुनरावृत्त और वृद्धिशील चुस्त सॉफ्टवेयर डेवलपमेंट विधि है। तो स्क्रम वास्तव में एक प्रकार का फुर्तीला दृष्टिकोण है जो सॉफ्टवेयर विकास में व्यापक रूप से उपयोग किया जाता है।
तो, स्क्रैम एजाइल का एक विशिष्ट स्वाद है, विशेष रूप से इसे फुर्तीली परियोजना प्रबंधन ढांचे के रूप में जाना जाता है।
इसके अलावा स्क्रम की मुख्य रूप से दो भूमिकाएँ हैं, जो हैं: 1. मुख्य / मुख्य भूमिका 2. सहायक भूमिका
मुख्य / मुख्य भूमिका: इसमें मुख्य रूप से तीन भूमिकाएँ होती हैं: ए)। स्क्रम मास्टर, बी)। उत्पाद स्वामी, सी)। विकास दल।
अनुषंगी भूमिका: स्क्रम टीमों में सहायक भूमिकाएं वे हैं जिनकी कोई औपचारिक भूमिका नहीं है और स्क्रम जुलूस में अनौपचारिक भागीदारी है लेकिन फिर भी, उन्हें ध्यान में रखा जाना चाहिए। अर्थात। हितधारकों, प्रबंधकों।
स्क्रम मास्टर: - स्क्रम में 6 प्रकार की बैठकें होती हैं:
मुझे बताएं कि क्या किसी को इस पर अधिक इनपुट की आवश्यकता है।
SCRUM:
SCRUM एक प्रकार का फुर्तीला दृष्टिकोण है। यह एक कार्यप्रणाली नहीं बल्कि एक फ्रेमवर्क है।
यह विस्तृत निर्देश प्रदान नहीं करता है कि क्या करने की आवश्यकता है, बल्कि इसमें से अधिकांश सॉफ्टवेयर विकसित करने वाली टीम पर निर्भर है। क्योंकि विकासशील परियोजना को पता है कि समस्या को कैसे हल किया जा सकता है यही कारण है कि उन पर बहुत कुछ छोड़ दिया गया है
क्रॉस-फंक्शनल और सेल्फ-ऑर्गेनाइजिंग टीमें स्क्रैम के मामले में आवश्यक हैं। इस मामले में कोई टीम लीडर नहीं है जो टीम के सदस्यों को कार्य सौंपेगा, बल्कि पूरी टीम मुद्दों या समस्याओं को संबोधित करेगी। यह एक तरह से क्रॉस-फंक्शनल है, जो प्रोजेक्ट से लेकर प्रोजेक्ट के कार्यान्वयन तक सभी में शामिल है।
स्क्रैम का लाभ यह है कि एक परियोजना की दिशा को पूर्ण कार्य के आधार पर समायोजित किया जाना चाहिए, न कि अटकलों या पूर्वानुमानों पर।
भूमिकाएं शामिल हैं: उत्पाद स्वामी, स्क्रैम मास्टर, टीम के सदस्य
चंचल कार्यप्रणाली:
ऐसे सॉफ़्टवेयर एप्लिकेशन बनाएँ जो प्रकृति में अप्रत्याशित हों
इस पद्धति में स्प्रिट नामक इटरेटिव और वृद्धिशील कार्य तालिकाओं का उपयोग किया जाता है।
चंचल और SCRUM दोनों प्रणाली का अनुसरण करते हैं - कुछ विशेषताएं स्प्रिंट के एक भाग के रूप में और प्रत्येक स्प्रिंट के अंत में विकसित की जाती हैं; सुविधाओं को कोडिंग, परीक्षण और उत्पाद में उनके एकीकरण से पूरा किया जाता है। प्रत्येक स्प्रिंट के अंत में मालिक को कार्यक्षमता का प्रदर्शन प्रदान किया जाता है ताकि फीडबैक लिया जा सके जो अगले स्प्रिंट के लिए सहायक हो सकता है।
चंचल विकास के लिए घोषणापत्र:
यही है, जबकि दाईं ओर की वस्तुओं में मूल्य है, हम बाईं ओर की वस्तुओं को अधिक महत्व देते हैं।
कैसे चुस्त विकास में फिट बैठता है?
जबकि फुर्तीली कार्यप्रणाली उत्पाद विकास के लिए न केवल सॉफ्टवेयर उद्योग में बल्कि अन्य उद्योगों में भी लागू की जा सकती है, जबकि स्क्रैम सॉफ्टवेयर विकास के लिए विशिष्ट है।
Scrum एक कार्यप्रणाली नहीं है। यह बस संरचना, अनुशासन और चुस्त विकास के लिए एक रूपरेखा प्रदान करता है। पूरी परियोजना स्प्रिंट या स्प्रिंट चक्र (1 से n) की एक श्रृंखला से बनी है, जहां प्रत्येक स्प्रिंट एक ही अवधि का है। यदि 'समय' को T से दर्शाया जाता है, तो T1 = T2 = T3 = ... Tn। स्प्रिंट 2 से 4 सप्ताह के बीच कहीं भी हो सकते हैं। 2 सप्ताह से छोटे स्प्रिंट आदर्श नहीं होते हैं और कम बार उपयोग किए जाते हैं। प्रत्येक स्प्रिंट के अंत में, एक कार्यात्मक / कार्यशील सॉफ़्टवेयर का उत्पादन किया जाता है जो उपयोगकर्ता वास्तव में परीक्षण कर सकते हैं।
मूल लेख यहाँ है ...
फुर्तीली और स्क्रम परियोजना प्रबंधन में प्रयुक्त शब्द हैं। चंचल कार्यप्रणाली वृद्धिशील और पुनरावृत्त काम बीट्स को नियुक्त करती है जिन्हें स्प्रिंट भी कहा जाता है। दूसरी ओर, स्क्रैम, चुस्त दृष्टिकोण का प्रकार है जो सॉफ्टवेयर विकास में उपयोग किया जाता है।
चंचल अभ्यास है और स्क्रम इस अभ्यास का अनुसरण करने की प्रक्रिया है, जैसे कि ईएक्सट्रीम प्रोग्रामिंग (एक्सपी) और कानबन, फुर्तीली विकास अभ्यास का अनुसरण करने की वैकल्पिक प्रक्रिया है।
झरना पद्धति एक अनुक्रमिक डिजाइन प्रक्रिया है। इसका मतलब है कि आठ चरणों (गर्भाधान, दीक्षा, विश्लेषण, डिजाइन, निर्माण, परीक्षण, कार्यान्वयन और रखरखाव) में से प्रत्येक के पूरा होने पर, डेवलपर्स अगले चरण पर जाते हैं।
चूंकि यह प्रक्रिया अनुक्रमिक है, एक बार एक चरण पूरा हो जाने के बाद, डेवलपर्स एक पिछले चरण में वापस नहीं जा सकते हैं - पूरे प्रोजेक्ट को खरोंच किए बिना और शुरुआत से शुरू नहीं हुआ। परिवर्तन या त्रुटि के लिए कोई जगह नहीं है, इसलिए परियोजना के परिणाम और एक व्यापक योजना को शुरुआत में निर्धारित किया जाना चाहिए और फिर सावधान रहना चाहिए
एसीपी एजाइल सर्टिफिकेशन झरना पद्धति के नुकसान के बारे में "समाधान" के रूप में आया था। अनुक्रमिक डिजाइन प्रक्रिया के बजाय, एजाइल पद्धति एक वृद्धिशील दृष्टिकोण का अनुसरण करती है। डेवलपर्स एक सरलीकृत परियोजना के डिजाइन के साथ शुरू करते हैं, और फिर छोटे मॉड्यूल पर काम करना शुरू करते हैं। इन मॉड्यूल पर काम साप्ताहिक या मासिक स्प्रिंट में किया जाता है, और प्रत्येक स्प्रिंट के अंत में, परियोजना की प्राथमिकताओं का मूल्यांकन किया जाता है और परीक्षण चलाए जाते हैं। ये स्प्रिंट बग की खोज करने की अनुमति देते हैं, और अगले स्प्रिंट को चलाने से पहले ग्राहक की प्रतिक्रिया को डिजाइन में शामिल किया जाता है।
प्रारंभिक डिजाइन और चरणों की कमी के साथ प्रक्रिया, अक्सर इसकी सहयोगी प्रकृति के लिए आलोचना की जाती है जो प्रक्रिया के बजाय सिद्धांतों पर केंद्रित होती है।
शुरू में मैं जो कह सकता हूं वह है - एजाइल यूनिफाइड प्रोसेस से एक विकासवादी कार्यप्रणाली है जो Iterative & Incremental Development (IID) पर केंद्रित है। IID निर्माण चरणों (वास्तविक कोडिंग) और वृद्धिशील प्रसव पर पुनरावृत्त विकास पर अधिक जोर देता है। यह पुनरावृत्तियों में खुद को संभाले जाने पर आवश्यकताएँ विश्लेषण (इंसेप्शन) और डिज़ाइन (विस्तार) पर अधिक ज़ोर नहीं देगा। तो, यहाँ Iteration एक "अपने आप से मिनी प्रोजेक्ट" नहीं है।
एजाइल में, हम टीम आईडी, इवोल्यूशनरी रिक्वायरमेंट्स एंड डिज़ाइन इत्यादि जैसी वास्तविकताओं को जोड़ते हुए इस IDD को थोड़ा और आगे ले जाते हैं और SCRUM मानव कारकों और 'विज़डम ऑफ़ द ग्रुप' सिद्धांत पर विचार करके इसे सक्षम करने का उपकरण है। तो, स्प्रिंट यहां एक शुद्ध IID मॉडल को बेहतर बनाने के लिए "अपने आप से एक मिनी प्रोजेक्ट" है।
इसलिए, फुर्तीली तरीके से लागू होने वाले पुनरावृत्तियां हैं, हां, सैद्धांतिक रूप से स्प्रिंट्स (पुनरावृत्तियों का आकार छोटा होना और प्रसव जल्दी होना)। मैं वास्तव में एजाइल और एससीआरयूएम के बीच अंतर नहीं करता हूं और मैं देखता हूं कि एससीआरयूएमई एजाइल सिद्धांतों को उपयोग में लाने का एक स्वाभाविक तरीका है।