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