चुस्त कार्यप्रणाली: अर्थ, फायदे, नुकसान और अधिक
चुस्त कार्यप्रणाली एक है सॉफ्टवेयर विकास यह दर्शन निरंतर संशोधनों को शामिल करते हुए छोटे विकास चक्रों का उपयोग करके ग्राहकों को बेहतर मूल्य प्रदान करने का लक्ष्य रखता है।
सॉफ्टवेयर का विकास गणित और विज्ञान के क्षेत्र से हुआ। इसलिए, इसने मूल रूप से उन क्षेत्रों के वैज्ञानिक तरीकों को शामिल किया।
ये विधियां 1970 के दशक में दिन की आवश्यकताओं को पूरा करने के लिए जलप्रपात दृष्टिकोण में विकसित हुईं। उन दिनों कंप्यूटर और उनके सॉफ्टवेयर बड़े, जटिल और दशकों तक चलने के लिए डिज़ाइन किए गए थे। तो, जलप्रपात विधि एक अच्छी फिट थी।
लेकिन, 1990 के दशक के अंत तक, इंटरनेट नाटकीय रूप से दुनिया को बदल रहा था और एक नया दृष्टिकोण आवश्यक हो गया था। इस तरह से चुस्त कार्यप्रणाली जीवन में आई।
निम्नलिखित इस सॉफ्टवेयर विकास आंदोलन पर करीब से नज़र डालते हैं और यह आपकी और आपकी टीम की मदद कैसे कर सकता है।
फुर्तीली विकास पद्धति का इतिहास
1990 के दशक और 2000 के दशक के शुरुआती वर्षों के दौरान इंटरनेट और अनुप्रयोगों के लिए इसकी अतृप्त आवश्यकता से फुर्तीली सॉफ्टवेयर विकास में वृद्धि हुई।
यह एक ऐसा दौर भी था जब विभिन्न समूहों और उद्योगों के लिए वेबसाइटों की भारी आवश्यकता के कारण कंप्यूटर विज्ञान पृष्ठभूमि के बिना कई डेवलपर्स वेब विकास में बदल गए।
स्वाभाविक रूप से, अधिकांश startups छोटे थे। इसलिए, ज़्यादातर विकास छोटी टीमों में हुआ, जिसका अंतिम लक्ष्य अक्सर बाज़ार में जल्दी से जल्दी पहुँचना होता था। क्योंकि देरी का मतलब था बाज़ार में हिस्सेदारी खोना।
उत्पादों को जल्द से जल्द बाजार में लाने के लिए वाटरफॉल मॉडल द्वारा लगाए गए प्रतिबंधों का मुकाबला करने के लिए, 1990 के दशक के दौरान विभिन्न डेवलपर्स अलग-अलग तरीकों से आए। इनमें रैपिड एप्लिकेशन डेवलपमेंट (आरएडी), स्क्रम, एक्सट्रीम प्रोग्रामिंग (एक्सपी), कानबन और अन्य शामिल हैं।
फिर, 2001 में कभी-कभी, 17 डेवलपर्स जिन्होंने शुरुआती चुस्त विकास के एक रूप का अभ्यास किया या दूसरे, यूटा, यूएसए में एक साथ आए। फिर उन्होंने 'एजाइल सॉफ्टवेयर डेवलपमेंट के लिए घोषणापत्र' प्रकाशित करके अपनी बैठक समाप्त की।
यह घोषणापत्र 4 मूल्यों और 12 सिद्धांतों पर आधारित है।
फुर्तीली विकास के 4 मूल्य और 12 सिद्धांत
अपनी बैठक के दौरान उनके द्वारा एक साथ लिए गए अनुभवों से, 17 डेवलपर्स सॉफ्टवेयर को अधिक कुशलता से बनाने के लिए मूल्यों के एक सेट पर एक समझौते पर पहुंचे।
ये चार मान इस प्रकार हैं:
- व्यक्तियों और बातचीत प्रक्रियाओं पर और उपकरण. इसका मतलब है कि एक विशिष्ट प्रक्रिया का पालन करते हुए उपकरणों के साथ सॉफ्टवेयर विकसित करना महत्वपूर्ण है। लेकिन सक्षम लोगों का एक साथ अधिक प्रभावी ढंग से काम करना अधिक महत्वपूर्ण है।
- काम करने वाला सॉफ्टवेयर व्यापक दस्तावेज़ीकरण पर। यह वास्तविक सॉफ्टवेयर विकास प्रक्रिया से पहले पहले सॉफ्टवेयर डिजाइन करने और इसके लिए प्रलेखन लिखने की जलप्रपात विधि पर हमला करता है।
- ग्राहक सहयोग अनुबंध पर बातचीत। केवल ग्राहक या उपयोगकर्ता के साथ मिलकर काम करके ही आप ठीक वही सीख और विकसित कर सकते हैं जो ग्राहक को चाहिए। यह अधिक मूल्य बनाता है।
- बदलने का जवाब किसी योजना का पालन करने पर। परियोजना योजना महत्वपूर्ण है। लेकिन योजना बहुत कठोर नहीं होनी चाहिए। इसमें हितधारकों की अपेक्षाओं को पूरा करने के लिए बदलाव शामिल होने चाहिए।
ऊपर दिए गए ये एजाइल मेनिफेस्टो मूल्य 12 सिद्धांतों पर आधारित हैं और वे इस प्रकार हैं:
- मूल्यवान सॉफ्टवेयर के शीघ्र और निरंतर वितरण से ग्राहकों की संतुष्टि।
- देर से विकास में भी, बदलती आवश्यकताओं का स्वागत है।
- काम करने वाले सॉफ़्टवेयर को बार-बार वितरित करें (महीनों के बजाय सप्ताह)
- व्यवसायियों और डेवलपर्स के बीच घनिष्ठ, दैनिक सहयोग
- परियोजनाओं को प्रेरित व्यक्तियों के इर्द-गिर्द बनाया जाता है, जिन पर भरोसा किया जाना चाहिए
- आमने-सामने बातचीत संचार का सबसे अच्छा तरीका है (सह-स्थान)
- कार्य सॉफ्टवेयर प्रगति का प्राथमिक उपाय है
- सतत विकास, निरंतर गति बनाए रखने में सक्षम
- तकनीकी उत्कृष्टता और अच्छे डिजाइन पर निरंतर ध्यान
- सरलता—नहीं किए गए कार्य की मात्रा को अधिकतम करने की कला—अनिवार्य है
- सर्वश्रेष्ठ आर्किटेक्चर, आवश्यकताएं और डिजाइन स्व-संगठित टीमों से निकलते हैं
- नियमित रूप से, टीम इस बात पर विचार करती है कि कैसे अधिक प्रभावी बनें और तदनुसार समायोजित करें
पुनरावृत्तियों या स्प्रिंट
फुर्तीली सॉफ्टवेयर विकास में पुनरावृत्ति या स्प्रिंट आमतौर पर 1 से 4 सप्ताह की छोटी अवधि होती है, जिसमें विकास कार्य टूट जाता है। इससे चीजों को प्रबंधित करना आसान हो जाता है, क्योंकि इसके लिए कम योजना की आवश्यकता होती है।
प्रत्येक टीम में आम तौर पर विभिन्न कार्यों वाले सदस्य होते हैं, और इनमें योजना, विश्लेषण, डिजाइन, कोडिंग और परीक्षण शामिल हो सकते हैं।
टीम प्रत्येक पुनरावृत्ति या स्प्रिंट पर एक साथ सॉफ्टवेयर पर काम करती है। और वे अंत में एक कार्यशील उत्पाद का उत्पादन करते हैं। एजाइल मेनिफेस्टो के अनुसार, सॉफ्टवेयर का यह काम करने वाला टुकड़ा सच्ची प्रगति का एक पैमाना है।
उत्पाद और ग्राहक की जरूरतों के आधार पर, एक पुनरावृति का उत्पाद बाजार में जारी हो सकता है या नहीं। इसलिए, किसी एकल रिलीज़ के लिए अक्सर कई पुनरावृत्तियों की आवश्यकता होती है।
फुर्तीली विकास के लाभ
जैसा कि आप कल्पना कर सकते हैं, चुस्त कार्यप्रणाली कई फायदे लाती है। वे इस प्रकार हैं:
- विचारों का तेजी से क्रियान्वयन
- जलप्रपात दृष्टिकोण से अधिक लचीलापन
- उन्नत उत्पादकता प्रबंधित पुनरावृत्तियों के साथ
- उपयोगकर्ता इंटरैक्शन के माध्यम से बेहतर उत्पाद
- त्रुटियों को जल्दी से पहचाना और समाप्त किया जाता है
चुस्त कार्यप्रणाली के नुकसान
चुस्त विकास पद्धति के साथ काम करने के कुछ नुकसान भी हैं। और वे शामिल कर सकते हैं:
- शुरुआत में पूरी लागत का आकलन करना मुश्किल हो सकता है
- इसके लिए बहुत सारे ग्राहक इनपुट की आवश्यकता होती है
- बहुत सारे अनियोजित कार्य शामिल हैं
- कोई स्पष्ट रूप से परिभाषित परियोजना अंत नहीं
फुर्तीली विधियों का उपयोग कब करें
- जब आप अनुमान नहीं लगा सकते कि सॉफ़्टवेयर को क्या चाहिए
- आपके पास ग्राहकों तक पर्याप्त पहुंच है
- आप एक वेब ऐप या अपडेट करने में आसान सिस्टम विकसित कर रहे हैं
- आपको जल्दी रिलीज के साथ बाजार हिस्सेदारी पर तेजी से कब्जा करने की जरूरत है
लोकप्रिय फुर्तीली विकास रूपरेखाएँ
कई लोकप्रिय चुस्त विकास ढांचे हैं। कुछ ने 2001 के एजाइल मेनिफेस्टो से बहुत पहले शुरुआत की, जबकि अन्य बाद में आए।
एक ढांचे का लक्ष्य केवल एक विधि के नियमों को परिभाषित करना है। इसलिए, जबकि आपके संदर्भ के लिए सबसे लोकप्रिय ढांचे नीचे सूचीबद्ध हैं, और भी बहुत कुछ हैं। और आप अपनी टीम को फिट करने के लिए अपना बनाने या मौजूदा ढांचे को संशोधित करने के लिए भी स्वतंत्र हैं।
- जमघट: यह ढांचा 10 या उससे कम सदस्यों वाली टीमों के लिए बनाया गया है। दैनिक 2 मिनट की बैठकों के साथ काम को 4-15 सप्ताह के स्प्रिंट में विभाजित किया गया है।
- Kanban: टोयोटा से उत्पन्न, कानबन एक जापानी शब्द है जिसका अर्थ है बिलबोर्ड और दृश्य सहायता की सराहना करने वाली टीमों के लिए बहुत मददगार है। स्टिकी नोट्स या ऐप्स जैसे विज़ुअल प्रस्तुतिकरणों का उपयोग करके कार्यों को एक चरण से दूसरे चरण में ले जाया जाता है।
- रैपिड एप्लीकेशन डेवलपमेंट राड: यह वाक्यांश सामान्य रूप से चुस्त सॉफ्टवेयर विकास या जेम्स मार्टिन विधि दोनों को संदर्भित कर सकता है। आरएडी यूजर इंटरफेस आवश्यकताओं पर ध्यान केंद्रित करता है और प्रोटोटाइप पर बहुत अधिक निर्भर करता है।
- झुक स्टार्टअप: यह ढांचा उन लोगों के लिए है जिन्हें किसी उत्पाद या सेवा को विकसित करने की आवश्यकता है, लेकिन पहले इसकी बाजार व्यवहार्यता का निर्धारण करना होगा। इसमें प्रयोग का उपयोग शामिल है यह देखने के लिए कि क्या काम करता है और क्या नहीं।
अन्य उल्लेखनीय ढांचे में एक्सट्रीम प्रोग्रामिंग (एक्सपी), एडेप्टिव सॉफ्टवेयर डेवलपमेंट, एजाइल मॉडलिंग, डायनेमिक सिस्टम डेवलपमेंट मेथड और स्केल्ड एजाइल फ्रेमवर्क शामिल हैं।
द एजाइल बनाम वाटरफॉल मेथोडोलॉजीज
सॉफ्टवेयर विकसित करने के लिए फुर्तीली और जलप्रपात विधियों पर एक साथ-साथ नज़र डालें। यह जानने में मदद कर सकता है कि प्रत्येक विधि दूसरे के खिलाफ कैसे खड़ी होती है। तो, आप आसानी से अपनी नौकरी के लिए सबसे अच्छा उपकरण चुन सकते हैं।
चुस्त | झरना |
---|---|
वृद्धिशील और पुनरावृत्त दृष्टिकोण | रैखिक और अनुक्रमिक जीवन-चक्र मॉडल |
बदलने के लिए लचीला | कठोर कार्यान्वयन |
परीक्षण और समीक्षाएं जारी हैं | पूरा होने के बाद केवल एक परीक्षण चरण है |
आवश्यकताएँ बदल सकती हैं | आवश्यकताएँ योजना के बाद तय की जाती हैं |
कई छोटी परियोजनाओं का संग्रह | एक एकल परियोजना |
अधिक ग्राहक भागीदारी | कम ग्राहक भागीदारी |
अनुकूली बनाम भविष्य कहनेवाला विकास
फुर्तीली सॉफ्टवेयर विकास का लक्ष्य वास्तविक दुनिया में परिवर्तनों के अनुकूल होना है। और ये अक्सर ग्राहक या उपयोगकर्ता की ज़रूरतों का परिणाम होते हैं। अनुकूलन जलप्रपात मॉडल की भविष्य कहनेवाला प्रकृति के बिल्कुल विपरीत है।
यह तब समझ में आता है जब सिस्टम विकसित करते समय चुस्त तरीकों का उपयोग किया जाता है कि आप सुनिश्चित नहीं हैं कि चीजें कैसे बदल जाएंगी। या जब किसी उद्योग में निरंतर परिवर्तन और विकास होता है। इंटरनेट एक बड़ा उदाहरण है।
इसके अलावा, यदि आप एक ऐसी प्रणाली या बाजार के लिए विकास कर रहे हैं जिसके बारे में आप सब कुछ जानते हैं, और जो शायद ही बदलता है या बदलने के लिए प्रतिरक्षित है। फिर, जलप्रपात दर्शन की भविष्य कहनेवाला प्रकृति मददगार हो सकती है।
सॉफ्टवेयर शिल्प कौशल
सॉफ्टवेयर शिल्प कौशल एक और दर्शन है जो चुस्त विकास सिद्धांतों पर आधारित है और यह एक परियोजना में शामिल सॉफ्टवेयर डेवलपर्स के कौशल पर जोर देने पर केंद्रित है।
सॉफ्टवेयर शिल्प कौशल आंदोलन का एक घोषणापत्र भी है और इसमें कहा गया है:
आकांक्षी सॉफ्टवेयर शिल्पकार के रूप में हम इसका अभ्यास करके और दूसरों को शिल्प सीखने में मदद करके पेशेवर सॉफ्टवेयर विकास के स्तर को बढ़ा रहे हैं। इस काम के माध्यम से हम मूल्य पर आ गए हैं: न केवल काम कर रहे सॉफ्टवेयर, बल्कि अच्छी तरह से तैयार किए गए सॉफ्टवेयर भी न केवल परिवर्तन का जवाब दे रहे हैं, बल्कि लगातार मूल्य जोड़ रहे हैं · न केवल व्यक्ति और बातचीत, बल्कि पेशेवरों का एक समुदाय भी · न केवल ग्राहक सहयोग, लेकिन उत्पादक भागीदारी भी, अर्थात्, बाईं ओर की वस्तुओं की खोज में हमने पाया है कि दाईं ओर की वस्तुएं अपरिहार्य हैं। © 2009, अधोहस्ताक्षरी। इस कथन को किसी भी रूप में स्वतंत्र रूप से कॉपी किया जा सकता है, लेकिन केवल इस नोटिस के माध्यम से इसकी संपूर्णता में
निष्कर्ष
फुर्तीली कार्यप्रणाली और सॉफ्टवेयर विकास पर हमारी नज़र के अंत में, आप देख सकते हैं कि वहाँ बहुत सारे विकल्प हैं।
हर टीम अलग है। और जिस तरह अलग-अलग टीमों ने बदलते समय के अनुकूल होने के लिए अपने अलग-अलग तरीके विकसित किए। आपको भी या तो पहले से स्थापित ढांचे के साथ जाकर या अपनी टीम के अनुकूल होने के लिए इसे अपनाकर अनुकूलित करना होगा।