असल में बग क्या है? कोई पूर्वनिर्धारित नियम?
असल में बग क्या है? कोई पूर्वनिर्धारित नियम?
जवाबों:
एक बग है:
एक सॉफ्टवेयर बग एक कंप्यूटर प्रोग्राम या सिस्टम में एक त्रुटि, दोष, गलती, विफलता, या गलती का वर्णन करने के लिए उपयोग किया जाने वाला सामान्य शब्द है जो एक गलत या अप्रत्याशित परिणाम पैदा करता है, या इसे अनपेक्षित तरीकों से व्यवहार करने का कारण बनता है। ( डॉ। से )
यहाँ एक बग का गठन करने की एक और अच्छी परिभाषा है। कोई एक:
इस विकी में बग के लिए उबंटू समुदाय की एक उत्कृष्ट परिभाषा है , विशेष रूप से बग और लापता सुविधाओं के बीच अंतर को उजागर करना :
एक सॉफ्टवेयर बग एक कंप्यूटर प्रोग्राम में एक त्रुटि या गलती है जो इसे काम करने में विफल बनाता है जैसा कि यह माना जाता है। यह सब पर काम करने में विफल होने के रूप में सरल हो सकता है, या एक सूक्ष्म रूप से गलत परिणाम के रूप में जटिल हो सकता है [...] कुछ चीजें बग नहीं हैं, लेकिन ऐसी विशेषताएं गायब हैं जिन्हें यथोचित रूप से शामिल किया जाना चाहिए। गुम सुविधाओं को बग के रूप में रिपोर्ट नहीं किया जाना चाहिए, इसके बजाय फ़ीचरसेक्शन्स को उनके लिए लिखा जाना चाहिए।
हालांकि यह दो परिभाषाओं को अलग करने वाली एक रेखा खींचना और सवाल का जवाब देना मुश्किल है कि क्या यह बग या लापता विशेषताएं हैं? , कुछ दिशानिर्देश देना संभव है:
दो कथनों के बीच का अंतर है: पहला अधिक व्यापक है (आधुनिक विंडोज़ FS का समर्थन करें) और इस प्रकार मिसिंग फ़ीचर के रूप में देखा जा सकता है, जबकि दूसरा एक अद्वितीय समस्या पर जोर देता है (ReiserFS में नहीं लिख सकता) - एक विशिष्ट बग।
यदि आप रुचि रखते हैं, तो मैं आपको बग्सक्वाड टीम विकी पर एक नज़र डालने की सलाह देता हूं । बग्स से लड़ना सॉफ्टवेयर विकास चक्र में शामिल सबसे दिलचस्प गतिविधियों में से एक है, इसके अलावा यह एक महान सीखने का मौका है :-)
धन्यवाद!
मैं झूला उठाऊंगा। मुख्य रूप से, डिजाइनर / प्रोग्रामर (खराब डिजाइन पर छूट) द्वारा अभिप्रेत व्यवहार नहीं। आप लोगों को किन बगों के बारे में रिपोर्ट करना चाहिए, इसके संदर्भ में कार्यक्रम के उपयोग के लिए प्रोग्रामर को तैयार करने के लिए कुछ भी करना चाहिए। इसमें सबसे कम से कम गंभीर, सिस्टम क्रैश, एक्स क्रैश, प्रोग्राम क्रैश और किसी भी आंतरिक प्रोग्राम बग शामिल हैं।
कीड़े जो दुर्घटनाओं या खिड़की के बंद होने का कारण बनते हैं, आमतौर पर किसी तरह के आउटपुट के लिए अगर आपको टर्मिनल से आवेदन चलाना पड़ता है, तो यह उपयोगी हो सकता है। त्रुटि रिपोर्ट के लिए सिस्टम लॉग भी देखें।
सभी व्यावहारिक उद्देश्यों के लिए "बग" शब्द को बहुत अधिक फजी शब्द से बचा जाना चाहिए।
आपके प्रश्न का सबसे अच्छा उत्तर एक पूरी पुस्तक भरता है: एंड्रियास ज़ेलर द्वारा "व्हाई प्रोग्राम्स फेल" । एक पुस्तक जो हर प्रोग्रामर की बुकशेल्फ़ पर होनी चाहिए। लेखक उन्हें "बग" (पढ़ने के लिए) नहीं कहने में भी एक अच्छा प्रयास करता है। क्योंकि crncosta के जवाब के रूप में पहले से ही एक "बग" से पता चलता है कि सिर्फ एक प्रोग्रामिंग त्रुटि नहीं है। यही कारण है कि कुछ लोग इसके बजाय "मुद्दा" शब्द पसंद करते हैं (जो "बग ट्रैकर" के बजाय "मुद्दा ट्रैकर" की ओर जाता है)।
क्योंकि अंत-उपयोगकर्ता द्वारा बग के रूप में माना जाने वाला एक बग बिल्कुल भी नहीं होना चाहिए। यह हो सकता है - भले ही यह अक्सर एक लंगड़ा बहाने के रूप में उपयोग किया जाता है - बस डिजाइन द्वारा। हालांकि, एक बार देखे जाने पर कुछ विफलताएं "बग" वर्गीकृत की जाती हैं, भले ही वे एक विशेषता की कमी के कारण हों।
उपर्युक्त पुस्तक का लेखक विफलता और दोष जैसे शब्दों की परिभाषा पर कई पृष्ठ खर्च करता है और वर्णन करता है कि "बग" एक उपयुक्त शब्द (बहुत फजी) नहीं है।
उनकी शब्दावली का सारांश:
जैसा कि आप देख सकते हैं कि लेखक कारण और प्रभाव के बीच अंतर करता है, जो "बग" के मामले में लगभग हमेशा मिश्रित होता है। अधिकांश समय "बग" शब्द के लिए लागू की जा रही है दोष , संक्रमण और विफलता ।