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