एक्सट्रीम प्रोग्रामिंग और SCRUM के बीच अंतर

एक्सट्रीम प्रोग्रामिंग और SCRUM के बीच अंतर
एक्सट्रीम प्रोग्रामिंग और SCRUM के बीच अंतर

वीडियो: एक्सट्रीम प्रोग्रामिंग और SCRUM के बीच अंतर

वीडियो: एक्सट्रीम प्रोग्रामिंग और SCRUM के बीच अंतर
वीडियो: Обзор Motorola Xoom 2024, नवंबर
Anonim

एक्सट्रीम प्रोग्रामिंग बनाम SCRUM | XP बनाम SCRUM

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

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

स्क्रम क्या है?

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

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

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

एक्सट्रीम प्रोग्रामिंग क्या है?

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

एक्सट्रीम प्रोग्रामिंग और SCRUM में क्या अंतर है?

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

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

सिफारिश की: