prototype_model_featureimg

What is Prototype Model in Hindi? प्रोटोटाइप मॉडल क्या होता है?

हेलो दोस्तों, आज के ब्लॉग में मै आपको प्रोटोटाइप मॉडल(Prototype Model) के बारे में बताने वाला हूँ जिसका उपयोग हम सॉफ्टवेयर को बनाने में करते है| और हम कह सकते है की यह सॉफ्टवेयर को निर्मित करने की क्रमबद्ध प्रक्रिया है|

प्रोटोटाइप मॉडल (Prototype Model) एक ट्रायल सॉफ्टवेयर होता है, जिसे कस्टमर को बनने वाले फाइनल सॉफ्टवेयर का आईडिया देने के लिए बनाया जाता है| इस प्रोटोटाइप मॉडल वाले सॉफ्टवेयर में कई खामिया और कमिया हो सकती है जिसे बाद में फाइनल सॉफ्टवेयर में सही कर लिया जाता है|

तो ये प्रोटोटाइप मॉडल (Prototype Model) एक टेस्टिंग सॉफ्टवेयर कि तरह होता है जिसे कम जानकारी के साथ भी डेवेलोप किया जा सकता है| ज्यादातर इन तीन परिस्थिति में इस प्रोटोटाइप मॉडल का उपयोग किया जाता है|

जब हमें सॉफ्टवेयर बनाने का उदेस्य पता हो पर हमें उसके टेक्निकल समस्या के बारे में ज्यादा जानकारी न हो तब हम प्रोटोटाइप मॉडल (Prototype Model) का यूज करते है|

कुछ परिस्थिति ऐसी भी होती है जहा पर सिस्टम बनाने के लिए हमें हार्डवेयर के रिस्पांस टाइम कि जरुरत होती है, तब ऐसी सिचुएशन में पहले हम प्रोटोटाइप मॉडल (Prototype Model) बनाते है|

सॉफ्टवेयर को बनाने के समय कुछ सिस्टम और सॉफ्टवेयर ऐसी होते है जिसमे हम पहली ही बार में करेक्ट सॉफ्टवेयर सिस्टम नहीं बना सकते, या फिर ऐसी सॉफ्टवेयर सिस्टम जहा यूजर कि इनफार्मेशन और रेक्विरेमेंट पहली बार में कम्पलीट नहीं होती, इन दोनों ही परिस्थिति में हम प्रोटोटाइप मॉडल (Prototype Model) का उसे करते है.

प्रोटोटाइप मॉडल (Prototype Model) में सबसे पहले जानकारी एकत्रित कर ली जाती है, जो की सॉफ्टवेयर को बनाने व उससे सम्बंधित होती है|

इस प्रोसेस में डेवलपर व कस्टमर मिल के डिसाइड करते है कि इस सॉफ्टवेयर को बनाने का उदेस्य क्या है| और इस हिसाब से वो सभी क्षेत्र में विस्तृत रूप से डिसकस करते है, और पता लगाते है कि अभी किस क्षेत्र में और जानकारी जुटाने कि जरुरत है|

और जब जानकारी जुटाने का काम ख़तम हो जाता है तब शीघ्र ही एक डिज़ाइन तैयार किया जाता है, और इस डिज़ाइन में बताया जाता है कि यूजर को इनपुट और आउटपुट विंडो में क्या दिखाई देगा|

prototype_model_content
PROTOTYPE MODEL

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

जब एक वर्किंग प्रोटोटाइप मॉडल (Prototype Model) बना लिया जाता है तब डेवलपर प्रोटोटाइप को अलग कर देता है व फेक देता है, पहले से मौजूद प्रोग्राम जनरेटर कि मदद से|

मैथमेटिकल अल्गोरिथम कि कुछ क्लासेज, सबसेट ऑफ़ कमांड ड्रिवेन सिस्टम, और कुछ और एप्लीकेशन जहा पर रिजल्ट बड़े आराम से पता लगे जा सकता है, बिना किसी वास्तविक इंटरैक्शन के, को प्रोटोटाइप मॉडल (Prototype Model) के द्वारा आराम से बनाया जा सकता है|

प्रोटोटाइप मॉडल (Prototype Model) कि जरुरत कब पड़ती है?

ऐसी एप्लीकेशन जिनका प्रोटोटाइप बहुत ही आसान है और जो हमेशा अपने अंदर ह्यूमन मशीन इंटरैक्शन समाहित रखती है को बनाने के लिए प्रोटोटाइप मॉडल (Prototype Model) सजेस्ट किया जाता है|

जब हमें सॉफ्टवेयर बनाने का केवल जनरल उदेस्य पता होता है, लेकिन हमें इनपुट , प्रोसेसिंग एंड आउटपुट के बारे में डिटेल में कुछ पता नहीं होता| तो फिर ऐसी सिचुएशन में हम प्रोटोटाइप मॉडल (Prototype Model) उसे करते है|

जब सॉफ्टवेयर डेवलपर किसी अलगोरिथम की क्षमता के बारे में व किसी ऑपरेटिंग सिस्टम की अडाप्टेबिलिटी के बारे में ज्यादा आश्वश्त नहीं होता, तब इस सिचुएशन में प्रोटोटाइप मॉडल (Prototype Model) को उसे करना एक बेहतर विकल्प हो सकता है|

ड्रॉबैक्स ऑफ़ प्रोटोटाइप मॉडल : Drawbacks of Prototype Model

जब प्रोटोटाइप मॉडल (Prototype Model) का फर्स्ट वर्जन बनकर तैयार होता है तब कस्टमर खुद अक्सर इसमें छोटे मोठे फिक्स व चेंज चाहते है बजाये कि सिस्टम को फिर से बनाया जाये| जबकि अगर सिस्टम को फिर से डिज़ाइन किया जाये तो उसमे और ज्यादा क्वालिटी मेन्टेन होगी|

प्रोटोटाइप मॉडल (Prototype Model) के फर्स्ट वर्जन में बहुत सरे कोम्प्रोमाईज़ करने पढ़ सकते है|

कभी कभी सॉफ्टवेयर डेवलपर अपने क्रियान्वन में कोम्प्रोमाईज़ कर सकता है, प्रोटोटाइप मॉडल को जल्दी चलाने के लिए, और कुछ समय के बाद वो ऎसे कोम्प्रोमाईज़ करने में सहज और कम्फर्टेबले हो सकता है और वो भूल सकता है कि ऐसा करना बिलकुल अनुचित है|

इस प्रोटोटाइप मॉडल (Prototype Model) ब्लॉग को लेकर आपके मन में कोई भी प्रश्न है तो आप हमें इस पते a5theorys@gmail.com पर ईमेल लिख सकते है|

आशा करता हूँ, कि आपने इस प्रोटोटाइप मॉडल (Prototype Model) पोस्ट को खूब एन्जॉय किया होगा|

आप स्वतंत्रता पूर्वक अपना बहुमूल्य फीडबैक और कमेंट यहाँ पर दे सकते है|

आपका समय शुभ हो|

waterfallfeature

Waterfall model in Hindi: वॉटरफॉल मॉडल हिंदी में, Advantages & Disadvantages

दोस्तों इस ब्लॉग में मै आपको waterfall model के बारे में बताने वाला हूँ, जिसका अध्यन शायद आपने सॉफ्टवेयर इंजीनियरिंग में किया होगा या कर रहे होंगे |
waterfall model सॉफ्टवेयर को बनाने की प्रक्रिया का एक प्रकार है! इसे linear sequential मॉडल अथवा क्लासिक लाइफ साइकिल(Classic life cycle model) मॉडल भी कहा जाता है!

जैसा की आप निचे दिए हुए चित्र में देख सकते है कि वाटर फल मॉडल(waterfall model) कि शुरुआत सॉफ्टवेयर बनाने की जरूरतों को एकत्रित करने(Requirement gathering) से होती है! और फिर अगले चरण में ये प्रक्रिया analysis, designing, coding, testing and maintenance phase से होकर गुजरती है!

waterfall model featureimg
Waterfall Model

Requirement gathering and Analysis

Requirement gathering and Analysis फेज waterfall model का बहुत ही महत्वपूर्ण होता है क्योकि यह एक सॉफ्टवेयर को बनाने की प्रक्रिया का पहला पार्ट होता है, और अगर यहाँ पर कोई गलती की जाती है तो वो पुरे सॉफ्टवेयर को खराब कर सकती है! इस फेज में सॉफ्टवेयर इंजीनियर द्वारा सॉफ्टवेयर से सम्बंधित सारी जानकारी एकत्रित की जाती है!

जैसे की सॉफ्टवेयर बनाने का उद्देस्य क्या है, उसके क्या क्या फंक्शन होंगे और वह कैसा बेहेवियर करेगा, इन सभी जानकारियों को एकत्रित करके एक डॉक्यूमेंट में समाहित किया जाता है! और इसके बाद कस्टमर के साथ कई डिसकसशन किये जाते है उनकी समीछा लेने के लिए. और जब कस्टमर और सॉफ्टवेयर इंजीनियर Requirement gathering and analysis से संतुस्ट हो जाते है तब एनालिस्ट(सॉफ्टवेयर इंजीनियर) अपने अगले चरण की ओर अग्रसर होता है!

Suppose that आपको लाइब्रेरी सिस्टम पर एक प्रोजेक्ट बनाना है, तब आप सबसे पहले लाइब्रेरी जाकर इनफार्मेशन कलेक्ट करंगे जैसे कि वह पर सिस्टम कैसे चलता है| आप निम्नलिखित बिन्दुओ पर इनफार्मेशन कलेक्ट कर सकते है|

लाइब्रेरी में बुक्स का मैनेजमेंट कैसे होता है, मतलब अलग अलग सेमेस्टर की सब्जेक्ट वाइज बुक कैसे राखी जाती है, जिससे की उन्हें आसानी से ढूंढा जा सके |

स्टूडेंट का रिकार्ड्स कैसे मेन्टेन होता है?

लाइब्रेरी बुक्स पर फाइन कैसे लगता है और कितना लगता है और कब कब लगता है?

ये सब Request gathering का हिस्सा होता है | और इसके बाद आप और आपकी टीम इस पर बैठ कर एनालिसिस(analysis) करते है और अपने अपने सुझाव प्रका करते है | This was all about the first model of waterfall model.

Design

सॉफ्टवेयर मेकिंग की प्रक्रिया में or in waterfall model, अगला स्टेप डिजाइनिंग(Design) का होता है! यह रेक्विरेमेंट एकत्रित करने और कोडिंग करने के बीच का स्टेप है!
डिज़ाइन की प्रक्रिया निम्नलिखित बिन्दुओ पर निर्भर करती है!]

डाटा स्ट्रक्चर (Data Structure)
सॉफ्टवेयर आर्किटेक्चर (Software Architecture)
इंटरफ़ेस रिप्रजेंटेशन (Interface Representation)
अल्गोरिथम डिटेल्स (Algorithm details)

पहले चरण(Of waterfall model)) में एकत्रित की गयी जानकारी को कई छोटे छोटे मॉडल में कन्वर्ट करना पड़ता है जिससे की हम उसकी आसानी से कोडिंग कर सके! हम इस डिज़ाइन को डॉक्यूमेंट में उतार लेते है जिससे की कोडिंग करते टाइम हम इसे आसानी से समझ पाए!

डिज़ाइन फेज में हम मुख्य रूप से दो मॉडल पर काम करते है एक तो बैकेंड और डेटाबेस एंड फ्रंट-एन्ड डिज़ाइन और जी यू आई(GUI) डिज़ाइन, बैकेंड डिज़ाइन में हम फिक्स करते है की कितनी टेबल बनेगी एंड वो एक दूसरे से कैसे रेलेट होंगी और फ्रंट-एन्ड में हम तय करते है की कितने पेज होंगे और उन पर कंटेंट कैसे होगा मेनू कैसे होगा |

Coding

डिज़ाइन फेज के बाद अगला चरण(In waterfall Model) कोडिंग का आता है जो की बहुत ही महत्वपूर्ण चरण है! यहाँ पर सॉफ्टवेयर इंजीनियर द्वारा और डेवलपर द्वारा इसके पहले चरण में डिज़ाइन की गयी चीज़ो को मशीन रेडबले लैंग्वेज में कन्वर्ट किया जाता है! अगर हमारी डिज़ाइन अच्छी तरह की गयी होती है तो फिर कोडिंग बहुत ही इफेक्टिव होती है! इस फेज में प्रोग्राम बांये जाते है जिसे हम सॉफ्टवेयर प्रोग्राम कहते है जो की एक खास प्रक्रिया को पूरा करते है!

Testing

कोडिंग(Coding) के बाद जो अगला फेज होता है है वो होता है टेस्टिंग(Testing) का(In waterfall model), इस फेज में हम पिछले स्टेप में बनाये गए प्रोग्रम को टेस्ट करते है कि वो सही तरह से काम कर रहा है कि नहीं! टेस्टिंग करने का मेन फोकस उसकी लॉजिकल फंक्शनिंग चेक करना होता है! ताकि हम चेक कर सके कि जिस काम के लिए सॉफ्टवेयर को बनाया गया है वो काम सही से कर रहा है कि नहीं! For example- हमने एक सॉफ्टवेयर बनाया जो कि दो नंबर को जोड़ता है है और फिर उसका रिजल्ट हमें स्क्रीन पर दिखाता है! मतलब अगर यूजर कोई दो नंबर एंटर करता है तो उसका सम स्क्रीन पर आउटपुट के तौर पर दिखता है! अब अगर प्रोग्राम में कुछ गड़बड़ होगी तो ये जोड़ सही नहीं करेगा!

तो कहने का मतलब यह है कि टेस्टिंग फेज में सभी प्रकार कि प्रॉब्लमस त्रुटि जो कि प्रोग्राम में होती है वो सभी पहले खोजी जाती है बार बार प्रोग्राम को चला कर, और बाद में जब कोई त्रुटि मिल जाती है तो उसे सही किया जाता है! टेस्टिंग फेज में प्रोग्रम के सभी फंक्शन और पैरामीटर, बेहेवियर को चेक किया जाता है कि वो ठीक से काम कर रहे है कि नहीं!

Maintenance:

मेंटेनेंस(In waterfall model) एक लम्बी और सतत चलने वाली प्रक्रिया है, जब तक सॉफ्टवेयर चलता है तब तक यह प्रक्रिया भी चलती रहती है! मेंटेनेंस के अंतर्गत या तो सॉफ्टवेयर में आने वाली त्रुटि और दिक्कत को सही किया जाता है या फिर लोगो कि जरूरतों के अनुसार जानकारी लेकर सॉफ्टवेयर को अपडेट अथवा एनहान्स किया जाता है! यूजर कि रेक्विरेमेंट लेकर सॉफ्टवेयर में नए फंक्शन जोड़े जाते है!

वाटर फॉल(waterfall model) सॉफ्टवेयर बिल्डिंग तकनीक का इस्तेमाल बड़े तौर पर होता है | जबकि इस मॉडल में कुछ कमिया ड्रॉबैक्स और बेनिफिट है |

बेनिफिट ऑफ़ वॉटरफॉल मॉडल(Benefits of waterfall model):-

वाटर फॉल मॉडल(waterfall model) का क्रियान्वन करना बहुत सरल है |

वाटर फॉल मॉडल(waterfall model) छोटे सॉफ्टवेयर और सिस्टम बनाने के लिए उपर्युक्त है|

ड्रॉबैक्स ऑफ़ वाटर फॉल मॉडल(Drawbacks of waterfall model):-


सॉफ्टवेयर डेवलपमेंट प्रोसेस में(In waterfall model) ये प्रोग्राम बनाने का ये क्रमबध फ्लो बहुत ही कठिन है | क्योकि अगर हमें किसी भी फेज में कोई चेंज करना पड़ता है तो फिर बहुत कन्फूशन हो सकता है|

जानकारी को एकत्रित करना पहले फेज में होता है , पर कभी कभी यह पॉसिबल नहीं होता कि हमें सारी जानकारी सुरु में ही मिल जाये | इस कारन से प्रोजेक्ट में दिक्कत आ जाती है!

सॉफ्टवेयर का वर्किंग मॉडल और फाइनल मॉडल कस्टमर को सबसे लास्ट में देखने मिलता है| अगर इस स्टेज पे कस्टमर इस सॉफ्टवेयर से संतुस्ट नहीं होता है तब यह एक गंभीर समस्या हो जाती है|

वाटर फॉल मॉडल(Waterfall Model) का Linear नेचर होने के कारन इसमें बहुत सारी ब्लॉकिंग स्टेट होती है, क्योकि कुछ टास्क पहले वाली टास्क पर निर्भर हो सकती है | ऐसे में ये जरुरी हो जाता है कि हम ऐसे डिपेंडेंट टास्क को पहले एक्सेक्यूटे करे| कभी कभी यह लम्बे इंतज़ार का कारन बन सकता है|

इस वॉटरफॉल ब्लॉग(waterfall model) को लेकर आपके मन में कोई भी प्रश्न है तो आप हमें इस पते a5theorys@gmail.com पर ईमेल लिख सकते है|

आशा करता हूँ, कि आपने इस वॉटरफॉल मॉडल(waterfall model) पोस्ट को खूब एन्जॉय किया होगा|

आप स्वतंत्रता पूर्वक अपना बहुमूल्य फीडबैक और कमेंट यहाँ पर दे सकते है|

आपका समय शुभ हो|