डॉगफूडिंग क्या है, और यह डेवलपर्स की मदद कैसे करता है?

ऐसी जगह की कल्पना करना मुश्किल है जहां सॉफ्टवेयर डेवलपर्स और कुत्ते के भोजन गठबंधन करते हैं, लेकिन "डॉगफूडिंग" एक कार्यक्रम को अच्छा बनाने का एक अनिवार्य हिस्सा है। हालांकि इसमें गोमांस और वील की कैन को तोड़ना शामिल नहीं है, लेकिन इसमें डेवलपर्स को अन्य लोगों को देने से पहले अपनी खुद की रचना को स्पिन के लिए लेना शामिल है।

जैसे, आइए जानें कि तकनीक में "डॉगफूडिंग" का क्या अर्थ है और यह कैसे मदद करता है।

टेक में डॉगफूडिंग का क्या मतलब है?

"डॉगफूडिंग" तब होती है जब कोई डेवलपर उस सॉफ़्टवेयर को आज़माता है जिसे उन्होंने विकसित किया था जैसे कि वे एक नियमित उपयोगकर्ता थे। यह शब्द "अपना खुद का कुत्ता खाना खाने" से उपजा है, जो किसी ऐसे व्यक्ति का वर्णन करता है जो अपने लक्षित दर्शकों के दृष्टिकोण से आविष्कार या विकसित कुछ करने की कोशिश कर रहा है।

डॉगफूडिंग अल्फा और बीटा टेस्टिंग से थोड़ा अलग है। जबकि डॉगफूडिंग और परीक्षण दोनों में सॉफ़्टवेयर का उपयोग करना शामिल है, यह देखने के लिए कि यह कैसा रहता है, अल्फा और बीटा परीक्षण बग और त्रुटियों को खोजने पर ध्यान केंद्रित करते हैं। और जबकि डॉगफूडिंग तकनीकी रूप से उन त्रुटियों को खोद सकता है जिन्हें ठीक करने की आवश्यकता होती है, प्रक्रिया का मुख्य लक्ष्य सॉफ़्टवेयर को "महसूस करना" है यह देखने के लिए कि डेवलपर इसे कैसे सुधार सकता है।

संबंधित: वेबसाइटों का परीक्षण करने के लिए आपके लिए शीर्ष भीड़ परीक्षण वेबसाइटें

उदाहरण के लिए, मान लें कि आपने एक ईमेल क्लाइंट विकसित किया है जो रिलीज़ के लिए लगभग तैयार है। अल्फा और बीटा परीक्षण चरणों के दौरान, आप संभावित रूप से विशिष्ट जांच करेंगे, जैसे कि क्लाइंट आने वाले ईमेल को कैसे संभालता है, यह एक अस्थिर इंटरनेट कनेक्शन को कैसे संभालता है, और यदि आप इससे ईमेल भेज सकते हैं तो ठीक है। ये बग को हटाने के लिए की गई विशिष्ट जांच हैं जो प्रोग्राम को सही ढंग से काम करने से रोकेंगे।

दूसरी ओर, यदि आप अपने ईमेल क्लाइंट का उपयोग दिनों, हफ्तों या महीनों के अंत तक करते हैं, तो डॉगफ़ूडिंग है। वास्तव में, आप अपने ईमेल प्रोग्राम का उपयोग ऐसे करेंगे जैसे कि आप अपने उपयोगकर्ताओं में से एक थे, जो दैनिक आधार पर आपके टूल पर निर्भर करेगा।

जबकि आप इतनी लंबी अवधि में त्रुटियों को खोजने के लिए बाध्य हैं, मुख्य ध्यान यह देखना है कि रोजमर्रा की जिंदगी में अपने कार्यक्रम का उपयोग करना कितना आसान और सुखद है। यदि आप अपने कार्यक्रम को सरल और प्रयोग करने में आसान पाते हैं, तो यह अविश्वसनीय है। हालाँकि, यदि आप अपने स्वयं के प्रोग्राम का उपयोग करते समय किसी भिन्न प्रोग्राम का उपयोग करने के लिए खुजली कर रहे हैं, तो इस बात की एक अच्छी संभावना है कि संभावित ग्राहक भी ऐसा ही महसूस करेंगे। आखिरकार, यदि आप इसके बजाय अपने प्रतिस्पर्धियों के उत्पादों का उपयोग अपने आप से करते हैं, तो कोई और आपके उत्पादों का उपयोग क्यों करेगा?

डॉगफूडिंग कैसे मदद करता है?

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

संबंधित: बुनियादी प्रोग्रामिंग सिद्धांत हर प्रोग्रामर को पता होना चाहिए

यहीं पर डॉगफूडिंग की शुरुआत होती है। रोजाना सॉफ्टवेयर का उपयोग करके और अपनी दिनचर्या के हिस्से के रूप में, प्रोग्रामर अपने सॉफ्टवेयर के सभी कष्टप्रद और गायब हिस्सों को ढूंढता है। उदाहरण के लिए, हमारे ईमेल उदाहरण में, शायद एहतियात के तौर पर आपके द्वारा सेट किए गए चेतावनी संवाद बॉक्स, जब आप कार्यक्रम का दैनिक उपयोग करते हैं तो वास्तव में कष्टप्रद हो जाते हैं। या हो सकता है कि आप ईमेल में बोल्ड टेक्स्ट टाइप करने के लिए CTRL + B दबाएं, केवल यह पता लगाने के लिए कि आप उस हॉटकी में कोड करना भूल गए हैं।

इसलिए अपने प्रोग्राम को टेस्ट ड्राइव देना महत्वपूर्ण है, भले ही आपको पूरा विश्वास हो कि यह बग-मुक्त है। इसका उपयोग ऐसे करें जैसे कि आप ऐसे व्यक्ति थे जो पूरी तरह से अपने क्लाइंट पर निर्भर थे, देखें कि क्या समस्याएं आती हैं, और उन्हें ठीक करें ताकि वास्तविक उपयोगकर्ताओं को उसी चीज़ से गुजरना न पड़े!

अपने कार्यक्रम से कुत्ते का रात्रिभोज न बनाएं

डॉगफूडिंग अजीब लग सकता है, लेकिन यह डेवलपर्स के लिए अपने सॉफ़्टवेयर में सभी छूटे हुए अवसरों और कष्टप्रद डिज़ाइन सुविधाओं को समाप्त करने का एक मूल्यवान तरीका है। जैसे, यदि आप प्रोग्रामिंग के साथ अभी शुरुआत कर रहे हैं, तो अपने प्रोग्राम को एक टेस्ट ड्राइव देना सुनिश्चित करें और जो कुछ भी आपको लगता है उसे जोड़ने या बदलने की आवश्यकता है, उसे नोट करें।