
Waterfall model in software engineering in Hindi – Waterfall Model सॉफ्टवेयर इंजीनियरिंग और IT projects के लिए सिस्टम डेवलपमेंट लाइफ साइकिल (SDLC) का सबसे लोकप्रिय version है। यह एक sequential, single direction प्रक्रिया के माध्यम से आगे बढ़ता है जो झरने की तरह बहती है।
वॉटरफॉल मॉडल इन सॉफ्टवेयर इंजीनियरिंग सबसे पुराना एसडीएलसी approach है जिसका उपयोग सॉफ्टवेयर विकास के लिए किया गया था।
दूसरे शब्दों में यदि हम कहें, Waterfall Model एक linear sequential flow है जिसमें software implementation के चरणों के माध्यम से प्रगति(progress) को निरंतर नीचे की ओर प्रवाह (झरने की तरह) के रूप में देखा जाता है।
इस मॉडल को विभिन्न चरणों में विभाजित किया गया है जिसमें एक चरण के परिणाम का उपयोग अगले चरण के इनपुट (input) के रूप में किया जाता है। प्रत्येक चरण को अगला चरण शुरू होने से पहले पूरा करना होता है और चरणों का कोई overlapping नहीं होता है।
We divide the waterfall model into different phases in which we complete each phase before starting the second phase. Most importantly, we use the output of one phase as the input of another phase.
Table of Contents
Waterfall Model Phases in Software Engineering
Software Engineering में Waterfall Model के निम्नलिखित चरण हैं:
1) Requirement Gathering
यह चरण महत्वपूर्ण है क्योंकि अगला चरण requirement phase के आधार पर तैयार किया जाता है। Requirement Gathering phase में हम product requirement document में सभी संभावित आवश्यकताओं लिखते हैं ।
2) System Design
This is a design phase in waterfall model. यदि हम सरल शब्दों में कहें तो, आवश्यकताओं के अनुसार, हम डिज़ाइन बनाते हैं, हार्डवेयर / सॉफ़्टवेयर आवश्यकताओं को कैप्चर करते हैं, डिज़ाइन का दस्तावेज़ीकरण करते हैं।
इसके अलावा, इस चरण में हम प्रोग्रामिंग भाषा की योजना बनाते हैं, उदाहरण के लिए जावा, PHP, .NET या डेटाबेस जैसे Oracle, MySQL, आदि।
3) Coding / Implementation
Waterfall model के इस चरण में, डिजाइन के अनुसार हम प्रोग्राम / कोड बनाते हैं, अगले चरण के लिए कोड को एकीकृत करते हैं, और कोड का यूनिट testing करते हैं।
4) Integration and Testing
हम प्रत्येक unit testing के बाद कार्यान्वयन चरण में विकसित सभी इकाइयों को एक प्रणाली में एकीकृत करते हैं। हम पूरी प्रणाली को एकीकृत करते हैं और फिर हम किसी भी defects और failures के लिए इसका परीक्षण करते हैं।
5) Deployment
इस चरण में, हम सुनिश्चित करते हैं कि environment up to date है, हम सुनिश्चित करते हैं कि कोई defect न हो। हम सभी कार्यात्मक (functional) और गैर-कार्यात्मक(non-functional) परीक्षण पूर्ण होने के बाद उत्पाद को उत्पादन वातावरण पर लाइव बनाते हैं।
6) Maintenance
लोग जब application का उपयोग करना शुरू कर देते हैं, तो runtime me विकसित होने वाली समस्याओं को नियमित रूप से manage/solve किया जाना चाहिए। इस चरण में समस्याओं को ठीक करना और आवश्यकतानुसार issue patches के साथ एक नया version जारी करना शामिल है।
Waterfall Model का उपयोग करने के लाभ (Advantage of Waterfall model in Hindi)
नीचे कुछ महत्वपूर्ण points दिए गए हैं जो आपको इस बात का अंदाजा देंगे कि आपको वाटरफॉल मॉडल का उपयोग क्यों करना चाहिए।
Below are some important points that will give you an idea of why you should use the waterfall model.
- यह प्रयोग करने में आसान, सरल और समझने में आसान है।
- प्रत्येक चरण के लिए निश्चित प्रारंभ और समाप्ति बिंदु होते हैं, जिससे progress को कवर करना आसान हो जाता है।
- हम document में प्रत्येक चरण की प्रक्रिया और आउटपुट का स्पष्ट रूप से उल्लेख कर सकते हैं।
- Client का हस्तक्षेप न्यूनतम है यह पूरी तरह से प्रोजेक्ट team पर निर्भर करता है।
- सॉफ्टवेयर में कोई भी बदलाव विकास प्रक्रिया के दौरान किया जा सकता है।
Waterfall Model का उपयोग करने के नुकसान (Disadvantage of Waterfall model in Hindi)
वाटरफॉल मॉडल के नुकसान आमतौर पर संशोधन की कमी से जुड़े जोखिमों से अधिक होते हैं। The disadvantages of waterfall models usually outweigh the risks associated with lack of modification.
- किसी भी चरण के समाप्त होने के बाद वापस जाना बहुत कठिन है।
- यह बहुत अधिक संशोधनों की अनुमति नहीं देता है।
- बदलती आवश्यकताओं को किसी भी स्तर पर समायोजित नहीं किया जा सकता है।
- यह मॉडल जटिल, उच्च जोखिम, चल रही(ongoing) या object oriented परियोजनाओं के लिए आदर्श नहीं है।
- पूर्ण किए गए सॉफ़्टवेयर में छोटे परिवर्तन या त्रुटियाँ बहुत सारी समस्याएँ पैदा कर सकती हैं।
वाटरफॉल मॉडल का उपयोग कब करना चाहिए?
- Waterfall Model का उपयोग केवल तभी किया जाता है जब आवश्यकताओं को अच्छी तरह से समझा जाता है, अच्छी तरह से परिभाषित किया जाता है।
- ऐसी कोई पूर्वापेक्षाएँ (prerequisites) नहीं हैं जो अस्पष्ट हों।
- जब प्रोजेक्ट लम्बी नहीं हो और आवश्यक skills साथ बहुत सारे संसाधन मुफ्त में उपलब्ध हैं।
- निर्माण और निर्माण उद्योगों में डिजाइन संशोधन अक्सर काफी महंगे होते हैं।
- जब बिना किसी विचलन के एक सटीक समय सीमा तैयार करने और उसका पालन करने की आवश्यकता होती है।
Maintenance in SDLC Waterfall Model
अगर हम वाटरफॉल मॉडल में maintenance के बारे में बात करते हैं तो एसडीएलसी वाटरफॉल मॉडल में मुख्य रूप से तीन प्रकार के maintenance होते हैं:
- Adaptive Maintenance (अनुकूली रखरखाव) : यदि कोई नया वातावरण उपलब्ध है, तो सिस्टम को आसानी से नए वातावरण में अनुकूलित किया जाना चाहिए। जैसे नए ऑपरेटिंग सिस्टम।
- Corrective Maintenance (सुधारात्मक रखरखाव) : यदि उत्पाद विकास (Product Development) चरण के दौरान कोई त्रुटि होती है, तो यह Maintenance उन गलतियों को सुधारने के लिए है।
- Perfective Maintenance (संपूर्ण रखरखाव) : यदि कोई ग्राहक किसी त्रुटि को ठीक करने या सिस्टम में अपग्रेड करने का अनुरोध करता है, तो इस मामले में उन्हें Perfective Maintenance श्रेणी में रखा जाता है।
FAQ
Waterfall model is the SDLC approach we use for software development.
There are fixed start and end points for each step, making it easy to track progress and any changes to the software during the development process.
In conclusion, मुझे आशा है कि आप Waterfall मॉडल समाधान के बारे में जान गए होंगे। और आपको यह article बहुत अच्छा लगा होगा। यदि कोई doubt है तो आप comment लिख सकते हैं या आप geekcer.code@gmail.com पर email कर सकते हैं।
Recommended Articles
- Design Patterns in Java with examples
- Creating an Immutable Class in Java
- Agile Methodology Phases
- Performance Testing in Software Testing
Reference(s):
https://en.wikipedia.org/wiki/Waterfall_model