सॉफ्टवेयर बग: Difference between revisions

From Vigyanwiki
 
(14 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{Short description|Error, flaw, failure, or fault in a computer program or system}}
{{Short description|Error, flaw, failure, or fault in a computer program or system}}
{{Self reference|विकिपीडिया पर [[मीडियाविकि]] त्रुटि की रिपोर्ट करने के लिए, [[विकिपीडिया:बग रिपोर्ट]] देखें।}}
{{software development process}}
{{Information security}}
{{Information security}}
सॉफ़्टवेयर बग [[कंप्यूटर सॉफ्टवेयर]] के डिज़ाइन, विकास या संचालन में एक त्रुटि, दोष या दोष (तकनीक) है जिसके कारण यह गलत या अप्रत्याशित परिणाम उत्पन्न करता है, या अनपेक्षित तरीके से व्यवहार करता है। बग को खोजने और सुधारने की प्रक्रिया को [[डिबगिंग]] कहा जाता है और अधिकांशतः बग को इंगित करने के लिए औपचारिक तकनीकों या उपकरणों का उपयोग किया जाता है। 1950 के दशक के बाद से कुछ कंप्यूटर सिस्टम संचालन के दौरान विभिन्न कंप्यूटर बगों को रोकने, पहचानने या स्वत: ठीक करने के लिए डिज़ाइन किए गए हैं।
'''सॉफ़्टवेयर बग''' कंप्यूटर सॉफ्टवेयर के डिज़ाइन, डेवलोपमेन्ट  या संचालन में एक त्रुटि, दोष या दोष (तकनीक) है जिसके कारण यह गलत या अप्रत्याशित परिणाम उत्पन्न करता है, या अनपेक्षित विधि से व्यवहार करता है। बग को खोजने और सुधारने की प्रक्रिया को डिबगिंग कहा जाता है और अधिकांशतः बग को इंगित करने के लिए औपचारिक तकनीकों या उपकरणों का उपयोग किया जाता है। 1950 के दशक के बाद से कुछ कंप्यूटर सिस्टम संचालन के समय विभिन्न कंप्यूटर बगों को रोकने, पहचानने या स्वत। ठीक करने के लिए डिज़ाइन किए गए हैं।


सॉफ़्टवेयर में बग उपयोगकर्ताओं की आवश्यकता को समझने और निकालने में की गई गलतियों और त्रुटियों से उत्पन्न हो सकते हैं, प्रोग्राम के [[सॉफ़्टवेयर वास्तुशिल्प]] की योजना बना सकते हैं, इसके स्रोत कोड लिख सकते हैं, और [[ऑपरेटिंग सिस्टम]] या [[पुस्तकालय (कम्प्यूटिंग)]] जैसे मनुष्यों, हार्डवेयर और प्रोग्राम के साथ बातचीत से उत्पन्न हो सकते हैं। कई या गंभीर बग वाले प्रोग्राम को अधिकांशतः ''बग्गी'' के रूप में वर्णित किया जाता है। बग उन त्रुटियों को ट्रिगर कर सकते हैं जिनके तरंग प्रभाव हो सकते हैं। बग के प्रभाव सूक्ष्म हो सकते हैं, जैसे अनपेक्षित पाठ स्वरूपण, अधिक स्पष्ट प्रभावों के माध्यम से जैसे प्रोग्राम को [[क्रैश (कंप्यूटिंग)]], कंप्यूटर को [[फ्रीज (कंप्यूटिंग)]] करना, या हार्डवेयर को नुकसान पहुंचाना। अन्य बग सुरक्षा बग के रूप में अर्हता प्राप्त करते हैं और उदाहरण के लिए, [[विशेषाधिकार वृद्धि]] के लिए [[पहुँच नियंत्रण]] को बायपास करने के लिए [[काली टोपी हैकिंग]] को सक्षम कर सकते हैं।<ref>{{Cite journal|last1=Mittal|first1=Varun|last2=Aditya|first2=Shivam|date=2015-01-01|title=बग फिक्सिंग के क्षेत्र में हालिया विकास|journal=Procedia Computer Science|series=International Conference on Computer, Communication and Convergence (ICCC 2015)|language=en|volume=48|pages=288–297|doi=10.1016/j.procs.2015.04.184|issn=1877-0509|doi-access=free}}</ref>
सॉफ़्टवेयर में बग उपयोगकर्ताओं की आवश्यकता को समझने और निकालने में की गई गलतियों और त्रुटियों से उत्पन्न हो सकते हैं, प्रोग्राम के [[सॉफ़्टवेयर वास्तुशिल्प|सॉफ़्टवेयर डिजाइन]] की योजना बना सकते हैं, इसके सोर्स  कोड लिख सकते हैं, और [[ऑपरेटिंग सिस्टम]] या [[पुस्तकालय (कम्प्यूटिंग)|लाइब्रेरी (कम्प्यूटिंग)]] जैसे मनुष्यों, हार्डवेयर और प्रोग्राम के साथ बातचीत से उत्पन्न हो सकते हैं। कई या गंभीर बग वाले प्रोग्राम को अधिकांशतः ''बग'' के रूप में वर्णित किया जाता है। बग उन त्रुटियों को ट्रिगर कर सकते हैं जिनके तरंग प्रभाव हो सकते हैं। बग के प्रभाव सूक्ष्म हो सकते हैं, जैसे अनपेक्षित पाठ स्वरूपण, अधिक स्पष्ट प्रभावों के माध्यम से जैसे प्रोग्राम को [[क्रैश (कंप्यूटिंग)]], कंप्यूटर को [[फ्रीज (कंप्यूटिंग)]] करना, या हार्डवेयर को नुकसान पहुंचाना। अन्य बग सुरक्षा बग के रूप में अर्हता प्राप्त करते हैं और उदाहरण के लिए, [[विशेषाधिकार वृद्धि]] के लिए [[पहुँच नियंत्रण|पहुँच नियंत्रण (एक्सेस कंट्रोल)]] को बायपास करने के लिए [[काली टोपी हैकिंग|ब्लैक कैप हैकिंग]] को सक्षम कर सकते हैं।<ref>{{Cite journal|last1=Mittal|first1=Varun|last2=Aditya|first2=Shivam|date=2015-01-01|title=बग फिक्सिंग के क्षेत्र में हालिया विकास|journal=Procedia Computer Science|series=International Conference on Computer, Communication and Convergence (ICCC 2015)|language=en|volume=48|pages=288–297|doi=10.1016/j.procs.2015.04.184|issn=1877-0509|doi-access=free}}</ref>
कुछ सॉफ़्टवेयर बग्स को आपदाओं से जोड़ा गया है। 1980 के दशक में [[Therac -25]] [[विकिरण उपचार]] मशीन को नियंत्रित करने वाले कोड में कीड़े सीधे तौर पर मरीजों की मौत के लिए जिम्मेदार थे। 1996 में, ऑन-बोर्ड मार्गदर्शन कंप्यूटर प्रोग्राम में एक बग के कारण [[यूरोपीय अंतरिक्ष एजेंसी]] के US$1 बिलियन प्रोटोटाइप [[एरियन उड़ान V88]] लॉन्च के एक मिनट से भी कम समय बाद।<ref>{{Cite web|title=एरियन 501 - पूछताछ बोर्ड की रिपोर्ट की प्रस्तुति|url=https://www.esa.int/Newsroom/Press_Releases/Ariane_501_-_Presentation_of_Inquiry_Board_report|access-date=2022-01-29|website=www.esa.int|language=en}}</ref> 1994 में, [[1994 स्कॉटलैंड आरएएफ चिनूक दुर्घटना]] दुर्घटना, 29 की मौत; शुरुआत में इसे पायलट त्रुटि के लिए दोषी ठहराया गया था, लेकिन बाद में माना गया कि यह [[FADEC]]|इंजन-कंट्रोल कंप्यूटर में एक सॉफ्टवेयर बग के कारण हुआ है।<ref>{{cite web |author= Prof. [[Simon Rogerson]] |url= http://www.ccsr.cse.dmu.ac.uk/resources/general/ethicol/Ecv12no2.html |title= चिनूक हेलीकाप्टर आपदा|publisher= Ccsr.cse.dmu.ac.uk |access-date= September 24, 2012 |url-status= dead |archive-url= https://web.archive.org/web/20120717021641/http://www.ccsr.cse.dmu.ac.uk/resources/general/ethicol/Ecv12no2.html |archive-date= July 17, 2012 |df= mdy-all }}</ref> बग्गी सॉफ्टवेयर ने 21वीं सदी के आरंभिक [[ब्रिटिश डाकघर घोटाला]] का कारण बना, ब्रिटिश कानूनी इतिहास में न्याय का सबसे व्यापक गर्भपात।<ref name=beeb182>{{Cite news |title=पोस्ट ऑफिस स्कैंडल ने बर्बाद की जिंदगी, जांच में सुनवाई|author=<!--not stated--> |work=BBC News |date=14 February 2022 |url= https://www.bbc.co.uk/news/business-60374182}}</ref>
2002 में, अमेरिकी वाणिज्य विभाग के राष्ट्रीय मानक और प्रौद्योगिकी संस्थान द्वारा शुरू किए गए एक अध्ययन ने निष्कर्ष निकाला कि सॉफ्टवेयर बग, या त्रुटियां, इतनी प्रचलित और इतनी हानिकारक हैं कि वे अमेरिकी अर्थव्यवस्था को अनुमानित रूप से $59 बिलियन सालाना, या लगभग 0.6 प्रतिशत खर्च करते हैं। सकल घरेलू उत्पाद ।<ref>{{cite web|url=http://www.nist.gov/public_affairs/releases/n02-10.htm |title=सॉफ्टवेयर बग अमेरिकी अर्थव्यवस्था को महंगा पड़ा|date=June 10, 2009 |access-date=September 24, 2012 |url-status=unfit |archive-url=https://web.archive.org/web/20090610052743/http://www.nist.gov/public_affairs/releases/n02-10.htm |archive-date=June 10, 2009 }}</ref>


कुछ सॉफ़्टवेयर बग्स को आपदाओं से जोड़ा गया है। 1980 के दशक में [[Therac -25|थेरेक-25]] [[विकिरण उपचार]] मशीन को नियंत्रित करने वाले कोड में वॉर्म्स सीधे मरीजों की मौत के लिए जिम्मेदार थे। 1996 में, ऑन-बोर्ड मार्गदर्शन कंप्यूटर प्रोग्राम में बग के कारण [[यूरोपीय अंतरिक्ष एजेंसी]] के US$1 बिलियन प्रोटोटाइप [[एरियन उड़ान V88]] लॉन्च के एक मिनट से भी कम समय बाद।<ref>{{Cite web|title=एरियन 501 - पूछताछ बोर्ड की रिपोर्ट की प्रस्तुति|url=https://www.esa.int/Newsroom/Press_Releases/Ariane_501_-_Presentation_of_Inquiry_Board_report|access-date=2022-01-29|website=www.esa.int|language=en}}</ref> 1994 में, [[1994 स्कॉटलैंड आरएएफ चिनूक दुर्घटना]] दुर्घटना, 29 की मौत; शुरुआत में इसे पायलट त्रुटि के लिए दोषी ठहराया गया था, लेकिन बाद में माना गया कि यह [[FADEC|एफएडीईसी (FADEC)]] इंजन-कंट्रोल कंप्यूटर में एक सॉफ्टवेयर बग के कारण हुआ है।<ref>{{cite web |author= Prof. [[Simon Rogerson]] |url= http://www.ccsr.cse.dmu.ac.uk/resources/general/ethicol/Ecv12no2.html |title= चिनूक हेलीकाप्टर आपदा|publisher= Ccsr.cse.dmu.ac.uk |access-date= September 24, 2012 |url-status= dead |archive-url= https://web.archive.org/web/20120717021641/http://www.ccsr.cse.dmu.ac.uk/resources/general/ethicol/Ecv12no2.html |archive-date= July 17, 2012 |df= mdy-all }}</ref> बग सॉफ्टवेयर ने 21वीं सदी के आरंभिक [[ब्रिटिश डाकघर घोटाला]] का कारण बना, ब्रिटिश कानूनी इतिहास में न्याय का सबसे व्यापक गर्भपात।<ref name="beeb182">{{Cite news |title=पोस्ट ऑफिस स्कैंडल ने बर्बाद की जिंदगी, जांच में सुनवाई|author=<!--not stated--> |work=BBC News |date=14 February 2022 |url= https://www.bbc.co.uk/news/business-60374182}}</ref>


2002 में, अमेरिकी वाणिज्य विभाग के राष्ट्रीय मानक और प्रौद्योगिकी संस्थान द्वारा शुरू किए गए अध्ययन ने निष्कर्ष निकाला कि सॉफ्टवेयर बग, या त्रुटियां, इतनी प्रचलित और इतनी हानिकारक हैं कि वे अमेरिकी अर्थव्यवस्था को अनुमानित रूप से सकल घरेलू उत्पाद के लिए $59 बिलियन वार्षिक, या लगभग 0.6 प्रतिशत खर्च करते हैं।<ref>{{cite web|url=http://www.nist.gov/public_affairs/releases/n02-10.htm |title=सॉफ्टवेयर बग अमेरिकी अर्थव्यवस्था को महंगा पड़ा|date=June 10, 2009 |access-date=September 24, 2012 |url-status=unfit |archive-url=https://web.archive.org/web/20090610052743/http://www.nist.gov/public_affairs/releases/n02-10.htm |archive-date=June 10, 2009 }}</ref>
== इतिहास ==
== इतिहास ==
{{main|बग (इंजीनियरिंग)}}
{{main|बग (इंजीनियरिंग)}}
मध्य अंग्रेजी शब्द wikt:bugge#Noun शब्दों के लिए आधार है wikt:bugbear#Noun और wikt:bug-a-boo#Noun एक राक्षस के लिए प्रयुक्त शब्दों के रूप में।<ref>{{cite web |url= http://www.computerworld.com/article/2515435/app-development/moth-in-the-machine--debugging-the-origins-of--bug-.html |title= मशीन में कीट: 'बग' की उत्पत्ति को डीबग करना|author= Computerworld staff |date= September 3, 2011 |work= Computerworld |url-status= live |archive-url= https://web.archive.org/web/20150825040938/http://www.computerworld.com/article/2515435/app-development/moth-in-the-machine--debugging-the-origins-of--bug-.html |archive-date= August 25, 2015 |df= mdy-all }}</ref>
दोषों का वर्णन करने के लिए बग शब्द 1870 के दशक से इंजीनियरिंग शब्दजाल का एक भाग रहा है<ref>{{Cite OED|bug|id=24352}} 5a</ref> और इलेक्ट्रॉनिक्स और कंप्यूटरों की भविष्यवाणी करता है; यह मूल रूप से यांत्रिक खराबी का वर्णन करने के लिए हार्डवेयर इंजीनियरिंग में उपयोग किया गया हो सकता है। उदाहरण के लिए, [[थॉमस एडीसन]] ने 1878 में एक सहयोगी को लिखे पत्र में लिखा था:<ref>{{cite web|url=https://spectrum.ieee.org/the-institute/ieee-history/did-you-know-edison-coined-the-term-bug|title=क्या तुम्हें पता था? एडिसन ने "बग" शब्द गढ़ा|date=August 1, 2013|access-date=July 19, 2019}}</ref>


{{Blockquote|... कठिनाइयाँ उत्पन्न होती हैं - यह बात सामने आती है और [यह है] तब "कीड़े" - जैसे कि छोटी-छोटी गलतियाँ और कठिनाइयाँ कहलाती हैं - स्वयं को प्रकट करते हैं , एडिसन नेशनल लेबोरेटरी, यू.एस. नेशनल पार्क सर्विस, वेस्ट ऑरेंज, एन.जे., {{साइट बुक |फर्स्ट= थॉमस पार्के |लास्ट=ह्यूजेस |टाइटल= अमेरिकन जेनेसिस: ए सेंचुरी ऑफ इन्वेंशन एंड टेक्नोलॉजिकल एंथुसियाज्म, 1870-1970 |url= में उद्धृत {{google Books |plainurl=y |id=0r-ml88EynYC |page=75}} |year=1989 |publisher= Penguin Books |isbn= 978-0-14-009741-2 |page=75}}</ref >}}
मध्य अंग्रेजी शब्द wikt।bugge#Noun शब्दों के लिए आधार है wikt।bugbear#Noun और wikt।bug-a-boo#Noun एक राक्षस के लिए प्रयुक्त शब्दों के रूप में।<ref>{{cite web |url= http://www.computerworld.com/article/2515435/app-development/moth-in-the-machine--debugging-the-origins-of--bug-.html |title= मशीन में कीट: 'बग' की उत्पत्ति को डीबग करना|author= Computerworld staff |date= September 3, 2011 |work= Computerworld |url-status= live |archive-url= https://web.archive.org/web/20150825040938/http://www.computerworld.com/article/2515435/app-development/moth-in-the-machine--debugging-the-origins-of--bug-.html |archive-date= August 25, 2015 |df= mdy-all }}</ref>
[[बाफल बॉल]], पहला मैकेनिकल [[पिनबॉल]] गेम, 1931 में कीड़ों से मुक्त होने के रूप में विज्ञापित किया गया था।<ref name="Baffle Ball">{{cite web |url= http://www.ipdb.org/machine.cgi?gid=129 |title= बाफल बॉल|publisher= Internet Pinball Database |quote=(संदर्भ प्रविष्टि में विज्ञापन की छवि देखें)}}</ref> [[द्वितीय विश्व युद्ध]] के दौरान सैन्य गियर के साथ समस्याओं को बग (या ग्लिट्स) कहा जाता था।<ref name="life1942062925">{{cite magazine |url= https://books.google.com/books?id=KlAEAAAAMBAJ&q=life%20magazine%20june%2029%201942&pg=PA25 |title= आधुनिक विमान वाहक 20 वर्षों के स्मार्ट प्रयोग का परिणाम हैं|magazine= Life |date= June 29, 1942 |access-date= November 17, 2011 |page= 25 |url-status= live |archive-url= https://web.archive.org/web/20130604220016/http://books.google.com/books?id=KlAEAAAAMBAJ&lpg=PA1&dq=life%20magazine%20june%2029%201942&pg=PA25#v=onepage&q&f=true |archive-date= June 4, 2013 |df= mdy-all }}</ref> 1942 में प्रकाशित एक पुस्तक में, [[लुईस डिकिंसन रिच]] ने एक संचालित बर्फ काटने वाली मशीन के बारे में बात करते हुए कहा, बर्फ काटने को तब तक के लिए निलंबित कर दिया गया था जब तक कि निर्माता को अपने प्रिय से कीड़े निकालने के लिए नहीं लाया जा सकता था।<ref name="oclc_405243">{{Citation |last= Dickinson Rich |first= Louise |year= 1942 |title= We Took to the Woods |page= 93 |publisher= JB Lippincott Co |url= https://books.google.com/books?id=PT0zAQAAIAAJ |lccn= 42024308 |oclc= 405243 |postscript= . |url-status= live |archive-url= https://web.archive.org/web/20170316164959/https://books.google.com/books?id=PT0zAQAAIAAJ |archive-date= March 16, 2017 |df= mdy-all }}</रेफरी>
 
दोषों का वर्णन करने के लिए बग शब्द 1870 के दशक से इंजीनियरिंग शब्दजाल का एक भाग रहा है<ref>{{Cite OED|bug|id=24352}} 5a</ref> और इलेक्ट्रॉनिक्स और कंप्यूटरों की भविष्यवाणी करता है; यह मूल रूप से यांत्रिक खराबी का वर्णन करने के लिए हार्डवेयर इंजीनियरिंग में उपयोग किया गया हो सकता है। उदाहरण के लिए, [[थॉमस एडीसन]] ने 1878 में एक सहयोगी को लिखे पत्र में लिखा था।<ref>{{cite web|url=https://spectrum.ieee.org/the-institute/ieee-history/did-you-know-edison-coined-the-term-bug|title=क्या तुम्हें पता था? एडिसन ने "बग" शब्द गढ़ा|date=August 1, 2013|access-date=July 19, 2019}}</ref>


[[इसहाक असिमोव]] ने 1944 में प्रकाशित अपनी लघु कहानी कैच दैट रैबिट में रोबोट के मुद्दों से संबंधित होने के लिए बग शब्द का इस्तेमाल किया।
[[बाफल बॉल]], पहला मैकेनिकल [[पिनबॉल]] गेम, 1931 में वॉर्म्स से मुक्त होने के रूप में विज्ञापित किया गया था।<ref name="Baffle Ball">{{cite web |url= http://www.ipdb.org/machine.cgi?gid=129 |title= बाफल बॉल|publisher= Internet Pinball Database |quote=(संदर्भ प्रविष्टि में विज्ञापन की छवि देखें)}}</ref> [[द्वितीय विश्व युद्ध]] के समय सैन्य गियर के साथ समस्याओं को बग (या ग्लिट्स) कहा जाता था।<ref name="life1942062925">{{cite magazine |url= https://books.google.com/books?id=KlAEAAAAMBAJ&q=life%20magazine%20june%2029%201942&pg=PA25 |title= आधुनिक विमान वाहक 20 वर्षों के स्मार्ट प्रयोग का परिणाम हैं|magazine= Life |date= June 29, 1942 |access-date= November 17, 2011 |page= 25 |url-status= live |archive-url= https://web.archive.org/web/20130604220016/http://books.google.com/books?id=KlAEAAAAMBAJ&lpg=PA1&dq=life%20magazine%20june%2029%201942&pg=PA25#v=onepage&q&f=true |archive-date= June 4, 2013 |df= mdy-all }}</ref> 1942 में प्रकाशित एक पुस्तक में, [[लुईस डिकिंसन रिच]] ने एक संचालित बर्फ काटने वाली मशीन के बारे में बात करते हुए कहा, बर्फ काटने को तब तक के लिए निलंबित कर दिया गया था जब तक कि निर्माता को अपने प्रिय से वॉर्म्स निकालने के लिए नहीं लाया जा सकता था।<ref name="oclc_405243">{{Citation |last= Dickinson Rich |first= Louise |year= 1942 |title= We Took to the Woods |page= 93 |publisher= JB Lippincott Co |url= https://books.google.com/books?id=PT0zAQAAIAAJ |lccn= 42024308 |oclc= 405243 |postscript= . |url-status= live |archive-url= https://web.archive.org/web/20170316164959/https://books.google.com/books?id=PT0zAQAAIAAJ |archive-date= March 16, 2017 |df= mdy-all }}


[[File:First Computer Bug, 1945.jpg|thumb|[[हार्वर्ड मार्क II]] इलेक्ट्रोमैकेनिकल कंप्यूटर के लॉग का एक पृष्ठ, जिसमें एक मृत कीट है जिसे डिवाइस से हटा दिया गया था।]]बग शब्द का उपयोग कंप्यूटर अग्रणी [[ग्रेस हूपर]] द्वारा एक खाते में किया गया था, जिन्होंने एक प्रारंभिक इलेक्ट्रोमैकेनिकल कंप्यूटर में खराबी के कारण को प्रचारित किया था।<ref>{{citation|title=FCAT NRT Test |publisher=Harcourt |date=March 18, 2008 |title-link=Florida Comprehensive Assessment Test }}</ref> कहानी का एक विशिष्ट संस्करण है:
</ref> कहानी का एक विशिष्ट संस्करण है।


{{Blockquote|1=1946 में, जब हूपर को सक्रिय कर्तव्य से मुक्त किया गया, तो वह संगणना प्रयोगशाला में हार्वर्ड फैकल्टी में शामिल हो गई, जहाँ उसने [[हार्वर्ड मार्क II|मार्क II]] और [[हार्वर्ड मार्क III|मार्क III]] पर अपना काम जारी रखा। ऑपरेटरों ने मार्क II में एक त्रुटि का पता लगाया [[कीट]] एक रिले में फंस गया, जिसने ''बग''<nowiki> शब्द गढ़ा। इस बग को सावधानीपूर्वक हटा दिया गया और लॉग बुक में टेप कर दिया गया। पहले बग से उत्पन्न, आज हम किसी प्रोग्राम में त्रुटियों या गड़बड़ियों को 'बग' कहते हैं। .html |शीर्षक=डैनिस, शैरन ऐन: "रियर एडमिरल ग्रेस मरे हूपर" |दिनांक=16 फरवरी, 1997 |प्रकाशक=ei.cs.vt.edu |पहुंच-तारीख=31 जनवरी, 2010}}</nowiki></ref>}}
जब बग पाया गया तो हूपर सम्मलित नहीं था, लेकिन यह उसकी पसंदीदा कहानियों में से एक बन गई।<ref name=huggins>{{cite web |author=James S. Huggins |url=http://www.jamesshuggins.com/h/tek1/first_computer_bug.htm |archive-url=https://web.archive.org/web/20000816023000/http://www.jamesshuggins.com/h/tek1/first_computer_bug.htm |url-status=dead |archive-date=August 16, 2000 |title=पहला कंप्यूटर बग|publisher=Jamesshuggins.com |access-date=September 24, 2012  }}</ref> लॉग बुक में तारीख 9 सितंबर, 1947 थी।<ref>"[http://catb.org/jargon/html/B/bug.html Bug] {{webarchive|url=https://web.archive.org/web/20170323213836/http://www.catb.org/jargon/html/B/bug.html |date=March 23, 2017 }}", ''The Jargon File'', ver. 4.4.7. Retrieved June 3, 2010.</ref><ref name="si-bug">"[http://americanhistory.si.edu/collections/search/object/nmah_334663 Log Book With Computer Bug] {{webarchive|url=https://web.archive.org/web/20170323220950/http://americanhistory.si.edu/collections/search/object/nmah_334663 |date=March 23, 2017 }}", National Museum of American History, Smithsonian Institution.</ref><ref>"[https://web.archive.org/web/20000119173039/http://history.navy.mil/photos/images/h96000/h96566kc.htm The First "Computer Bug]", Naval Historical Center. But note the [[Harvard Mark II]] computer was not complete until the summer of 1947.</ref> जिन ऑपरेटरों ने इसे पाया, उनमें विलियम बिल बर्क, बाद में [[नेवल सरफेस वारफेयर सेंटर डहलग्रेन डिवीजन]], डहलग्रेन, वर्जीनिया, सम्मलित थे।<ref>IEEE Annals of the History of Computing, Vol 22 Issue 1, 2000</ref> इंजीनियरिंग की शब्दावली से परिचित थे और मनोरंजक विधि से कीट को इस संकेतन के साथ रखा कि बग का पहला वास्तविक स्थिति पाया जा रही है। संलग्न कीट के साथ पूर्ण यह लॉग बुक, अमेरिकी इतिहास के स्मिथसोनियन राष्ट्रीय संग्रहालय के संग्रह का भाग है।<ref name="si-bug" />
जब बग पाया गया तो हूपर सम्मलित नहीं था, लेकिन यह उसकी पसंदीदा कहानियों में से एक बन गई।<ref name=huggins>{{cite web |author=James S. Huggins |url=http://www.jamesshuggins.com/h/tek1/first_computer_bug.htm |archive-url=https://web.archive.org/web/20000816023000/http://www.jamesshuggins.com/h/tek1/first_computer_bug.htm |url-status=dead |archive-date=August 16, 2000 |title=पहला कंप्यूटर बग|publisher=Jamesshuggins.com |access-date=September 24, 2012  }}</ref> लॉग बुक में तारीख 9 सितंबर, 1947 थी।<ref>"[http://catb.org/jargon/html/B/bug.html Bug] {{webarchive|url=https://web.archive.org/web/20170323213836/http://www.catb.org/jargon/html/B/bug.html |date=March 23, 2017 }}", ''The Jargon File'', ver. 4.4.7. Retrieved June 3, 2010.</ref><ref name="si-bug">"[http://americanhistory.si.edu/collections/search/object/nmah_334663 Log Book With Computer Bug] {{webarchive|url=https://web.archive.org/web/20170323220950/http://americanhistory.si.edu/collections/search/object/nmah_334663 |date=March 23, 2017 }}", National Museum of American History, Smithsonian Institution.</ref><ref>"[https://web.archive.org/web/20000119173039/http://history.navy.mil/photos/images/h96000/h96566kc.htm The First "Computer Bug]", Naval Historical Center. But note the [[Harvard Mark II]] computer was not complete until the summer of 1947.</ref> जिन ऑपरेटरों ने इसे पाया, उनमें विलियम बिल बर्क, बाद में [[नेवल सरफेस वारफेयर सेंटर डहलग्रेन डिवीजन]], डहलग्रेन, वर्जीनिया, सम्मलित थे।<ref>IEEE Annals of the History of Computing, Vol 22 Issue 1, 2000</ref> इंजीनियरिंग की शब्दावली से परिचित थे और मनोरंजक तरीके से कीट को इस संकेतन के साथ रखा कि बग का पहला वास्तविक स्थिति पाया जा रही है। संलग्न कीट के साथ पूर्ण यह लॉग बुक, अमेरिकी इतिहास के स्मिथसोनियन राष्ट्रीय संग्रहालय के संग्रह का भाग है।<ref name="si-bug" />


संबंधित शब्द [[डिबग]] भी कंप्यूटिंग में इसके उपयोग से पहले का प्रतीत होता है: [[ऑक्सफोर्ड इंग्लिश डिक्शनरी]]{{'}}शब्द की व्युत्पत्ति में विमान इंजन के संदर्भ में 1945 से एक प्रमाणन सम्मलित है।<ref>''Journal of the Royal Aeronautical Society''. 49, 183/2, 1945 "It ranged ... through the stage of type test and flight test and 'debugging' ..."</ref>
संबंधित शब्द [[डिबग]] भी कंप्यूटिंग में इसके उपयोग से पहले का प्रतीत होता है। [[ऑक्सफोर्ड इंग्लिश डिक्शनरी]]{{'}}शब्द की व्युत्पत्ति में विमान इंजन के संदर्भ में 1945 से एक प्रमाणन सम्मलित है।<ref>''Journal of the Royal Aeronautical Society''. 49, 183/2, 1945 "It ranged ... through the stage of type test and flight test and 'debugging' ..."</ref>


यह ऐसी अवधारणा है कि सॉफ्टवेयर में त्रुटियां हो सकती हैं, [[विश्लेषणात्मक इंजन]] पर एडा बायरन के नोट्स से मिलती हैं। एडा लवलेस के 1843 नोट्स एनालिटिकल इंजन पर, जिसमें वह [[चार्ल्स बैबेज]] के एनालिटिकल इंजन के गलत होने के लिए प्रोग्राम कार्ड की संभावना की बात करती हैं:
यह ऐसी अवधारणा है कि सॉफ्टवेयर में त्रुटियां हो सकती हैं, [[विश्लेषणात्मक इंजन]] पर एडा बायरन के नोट्स से मिलती हैं। एडा लवलेस के 1843 नोट्स एनालिटिकल इंजन पर, जिसमें वह [[चार्ल्स बैबेज]] के एनालिटिकल इंजन के गलत होने के लिए प्रोग्राम कार्ड की संभावना की बात करती हैं।


{{Blockquote|विश्लेषणात्मक इंजन को आवश्यक ''ऑपरेटिव'' डेटा प्रस्तुत करने के लिए एक विश्लेषण प्रक्रिया समान रूप से निष्पादित की जानी चाहिए; और इसमें त्रुटि का संभावित स्रोत भी हो सकता है। यह माना जाता है कि वास्तविक तंत्र अपनी प्रक्रियाओं में त्रुटिहीन है, ''कार्ड'' इसे गलत आदेश दे सकते हैं।}}
{{Blockquote|विश्लेषणात्मक इंजन को आवश्यक ''ऑपरेटिव'' डेटा प्रस्तुत करने के लिए एक विश्लेषण प्रक्रिया समान रूप से निष्पादित की जानी चाहिए; और इसमें त्रुटि का संभावित स्रोत भी हो सकता है। यह माना जाता है कि वास्तविक तंत्र अपनी प्रक्रियाओं में त्रुटिहीन है, ''कार्ड'' इसे गलत आदेश दे सकते हैं।}}




=== सिस्टम रिपोर्ट में कीड़े ===
=== सिस्टम रिपोर्ट में वायरस ===
मुक्त प्रौद्योगिकी संस्थान, समूह, न्यू अमेरिका द्वारा चलाया जाता है,<ref name=":1">{{Cite web|url=https://na-production.s3.amazonaws.com/documents/Bugs-in-the-System-Final.pdf|title=सिस्टम में कीड़े|last1=Wilson|first1=Andi|last2=Schulman|first2=Ross|website=Open Policy Institute|access-date=August 22, 2016|last3=Bankston|first3=Kevin|last4=Herr|first4=Trey|url-status=live|archive-url=https://web.archive.org/web/20160921012606/https://na-production.s3.amazonaws.com/documents/Bugs-in-the-System-Final.pdf|archive-date=September 21, 2016}}</ref> अगस्त 2016 में एक रिपोर्ट बग्स इन द सिस्टम जारी की जिसमें कहा गया था कि अमेरिकी नीति निर्माताओं को सॉफ्टवेयर बगों की पहचान करने और उन्हें दूर करने में शोधकर्ताओं की मदद करने के लिए सुधार करना चाहिए। रिपोर्ट में सॉफ्टवेयर भेद्यता खोज और प्रकटीकरण के क्षेत्र में सुधार की आवश्यकता पर प्रकाश डाला गया है।<ref name=":0">{{Cite web|url=https://homelandprepnews.com/government/19481-cyber-reforms-needed-strengthen-software-bug-discovery-disclosure-new-america-report/|title=सॉफ्टवेयर बग खोज और प्रकटीकरण को मजबूत करने के लिए साइबर सुधारों की आवश्यकता: नई अमेरिका रिपोर्ट - होमलैंड तैयारी समाचार|last=Rozens|first=Tracy|date=August 12, 2016|language=en-US|access-date=August 23, 2016}}</ref> रिपोर्ट के लेखकों में से एक ने कहा कि कांग्रेस ने साइबर सॉफ़्टवेयर भेद्यता को दूर करने के लिए पर्याप्त नहीं किया है, भले ही कांग्रेस ने साइबर सुरक्षा के बड़े मुद्दे का मुकाबला करने के लिए कई बिल पारित किए हैं।<ref name=":0" />
मुक्त प्रौद्योगिकी संस्थान, समूह, न्यू अमेरिका द्वारा चलाया जाता है,<ref name=":1">{{Cite web|url=https://na-production.s3.amazonaws.com/documents/Bugs-in-the-System-Final.pdf|title=सिस्टम में कीड़े|last1=Wilson|first1=Andi|last2=Schulman|first2=Ross|website=Open Policy Institute|access-date=August 22, 2016|last3=Bankston|first3=Kevin|last4=Herr|first4=Trey|url-status=live|archive-url=https://web.archive.org/web/20160921012606/https://na-production.s3.amazonaws.com/documents/Bugs-in-the-System-Final.pdf|archive-date=September 21, 2016}}</ref> अगस्त 2016 में एक रिपोर्ट बग्स इन द सिस्टम जारी की जिसमें कहा गया था कि अमेरिकी नीति निर्माताओं को सॉफ्टवेयर बगों की पहचान करने और उन्हें दूर करने में शोधकर्ताओं की मदद करने के लिए सुधार करना चाहिए। रिपोर्ट में सॉफ्टवेयर भेद्यता खोज और प्रकटीकरण के क्षेत्र में सुधार की आवश्यकता पर प्रकाश डाला गया है।<ref name=":0">
 
{{cite web|url=http://www.sei.cmu.edu/library/abstracts/news-at-sei/wattsmar99.cfm|title=एसईआई 1999 आर्काइव पर समाचार|work=cmu.edu|url-status=live|archive-url=https://web.archive.org/web/20130526044359/http://www.sei.cmu.edu/library/abstracts/news-at-sei/wattsmar99.cfm|archive-date=May 26, 2013}}</ref> रिपोर्ट के लेखकों में से एक ने कहा कि कांग्रेस ने साइबर सॉफ़्टवेयर भेद्यता को दूर करने के लिए पर्याप्त नहीं किया है, भले ही कांग्रेस ने साइबर सुरक्षा के बड़े विवाद का मुकाबला करने के लिए कई बिल पारित किए हैं।<ref name=":0" />
सरकारी शोधकर्ता, कंपनियाँ और साइबर सुरक्षा विशेषज्ञ वे लोग हैं जो साधारणतयः सॉफ़्टवेयर की कमियों का पता लगाते हैं। रिपोर्ट में कंप्यूटर अपराध और कॉपीराइट कानूनों में सुधार की मांग की गई है।<ref name=":0" />
 
<nowiki>{{Blockquote|कंप्यूटर फ्रॉड एंड एब्यूज एक्ट, डिजिटल मिलेनियम कॉपीराइट एक्ट और इलेक्ट्रॉनिक कम्युनिकेशंस प्राइवेसी एक्ट उन कार्रवाइयों के लिए अपराधीकरण और नागरिक दंड बनाते हैं, जो सुरक्षा शोधकर्ता नियमित रूप से वैध सुरक्षा अनुसंधान करते समय संलग्न करते हैं, रिपोर्ट में कहा गया है।</nowiki><ref name=":0"><nowiki>}}</nowiki>
 
== शब्दावली ==
 
जबकि सॉफ़्टवेयर त्रुटियों का वर्णन करने के लिए बग शब्द का उपयोग आम है, कई लोगों ने सुझाव दिया है कि इसे छोड़ दिया जाना चाहिए। एक तर्क यह है कि बग शब्द इस अर्थ से अलग है कि एक इंसान समस्या का कारण बना, और इसके अतिरिक्त इसका अर्थ है कि दोष अपने आप उत्पन्न हुआ, जिसके कारण दोष जैसे शब्दों के पक्ष में बग शब्द को सीमित करने के लिए धक्का दिया गया। सफलता।<nowiki><ref></nowiki>{{cite web|url=http://www.sei.cmu.edu/library/abstracts/news-at-sei/wattsmar99.cfm|title=एसईआई 1999 आर्काइव पर समाचार|work=cmu.edu|url-status=live|archive-url=https://web.archive.org/web/20130526044359/http://www.sei.cmu.edu/library/abstracts/news-at-sei/wattsmar99.cfm|archive-date=May 26, 2013}}</ref> 1970 के दशक के बाद से [[गैरी किल्डाल]] ने कुछ विनोदी ढंग से ब्लंडर शब्द का उपयोग करने का सुझाव दिया।<ref name="Shustek_2016">{{cite web |url=http://www.computerhistory.org/atchm/in-his-own-words-gary-kildall/ |title=इन हिज ओन वर्ड्स: गैरी किल्डाल|author-first=Len |author-last=Shustek |date=August 2, 2016 |work=Remarkable People |publisher=[[Computer History Museum]] |url-status=live |archive-url=https://web.archive.org/web/20161217072842/http://www.computerhistory.org/atchm/in-his-own-words-gary-kildall/ |archive-date=December 17, 2016  }}</रेफरी><nowiki><ref name="Kildall_1993"></nowiki>{{cite document |orig-year=1993 |date=August 2, 2016 |title=कंप्यूटर कनेक्शन: पर्सनल कंप्यूटर उद्योग के विकास में लोग, स्थान और घटनाएँ|author-first=Gary Arlen |author-last=Kildall |author-link=Gary Kildall |editor-first1=Scott |editor-last1=Kildall |editor-link=Scott Kildall |editor-first2=Kristin |editor-last2=Kildall |publisher=Kildall Family |type=Manuscript, part 1 |pages=14–15 |url=http://www.computerhistory.org/atchm/computer-history-museum-license-agreement-for-the-kildall-manuscript/ |access-date=November 17, 2016 |url-status=live |archive-url=https://web.archive.org/web/20161117231531/http://www.computerhistory.org/atchm/computer-history-museum-license-agreement-for-the-kildall-manuscript/ |archive-date=November 17, 2016  }}</रेफरी>


सॉफ्टवेयर इंजीनियरिंग में, गलती कायापलट (ग्रीक मेटा = परिवर्तन, रूप = रूप से) सॉफ्टवेयर परिनियोजन के अंतिम चरण में एक दोष के विकास को संदर्भित करता है। सॉफ़्टवेयर विकास जीवनचक्र के प्रारंभिक चरणों में एक विश्लेषक द्वारा की गई गलती का परिवर्तन, जो चक्र के अंतिम चरण में एक दोष की ओर ले जाता है, इसे 'गलती कायापलट' कहा जाता है।
सरकारी शोधकर्ता, कंपनियाँ और साइबर सुरक्षा विशेषज्ञ वे लोग हैं जो साधारणतयः सॉफ़्टवेयर की कमियों का पता लगाते हैं। रिपोर्ट में कंप्यूटर अपराध और कॉपीराइट कानूनों में सुधार की मांग की गई है।<ref name=":0" /><blockquote>कंप्यूटर फ्रॉड एंड एब्यूज एक्ट, डिजिटल मिलेनियम कॉपीराइट एक्ट और इलेक्ट्रॉनिक कम्युनिकेशंस प्राइवेसी एक्ट उन कार्रवाइयों के लिए अपराधीकरण और नागरिक दंड बनाते हैं, जो सुरक्षा शोधकर्ता नियमित रूप से वैध सुरक्षा अनुसंधान करते समय संलग्न करते हैं, रिपोर्ट में कहा गया है। 1970 के दशक के बाद से [[गैरी किल्डाल]] ने कुछ विनोदी ढंग से ब्लंडर शब्द का उपयोग करने का सुझाव दिया।<ref name="Shustek_2016">{{cite web |url=http://www.computerhistory.org/atchm/in-his-own-words-gary-kildall/ |title=इन हिज ओन वर्ड्स: गैरी किल्डाल|author-first=Len |author-last=Shustek |date=August 2, 2016 |work=Remarkable People |publisher=[[Computer History Museum]] |url-status=live |archive-url=https://web.archive.org/web/20161217072842/http://www.computerhistory.org/atchm/in-his-own-words-gary-kildall/ |archive-date=December 17, 2016  }}
रेफ नाम = रूपांतर>{{cite journal |journal = Testing Experience|date=March 2012|publisher=testingexperience|title=परीक्षण अनुभव: ते: पेशेवर परीक्षकों के लिए पत्रिका|location = Germany|page =42 |issn=1866-5705}} {{subscription required}}</रेफरी>


पूरे चक्र में एक गलती के विभिन्न चरणों को गलतियों, विसंगतियों, दोषों, विफलताओं, त्रुटियों, अपवादों, दुर्घटनाओं, गड़बड़ियों, बगों, दोषों, घटनाओं या दुष्प्रभावों के रूप में वर्णित किया जा सकता है।
</ref><ref>{{cite book | last = McDonald | first = Marc | author2 = Musson, Robert | author3 = Smith, Ross | title = दोष निवारण के लिए व्यावहारिक मार्गदर्शिका| url = https://archive.org/details/practicalguideto00/page/480 | year = 2007 | publisher = Microsoft Press | page = [https://archive.org/details/practicalguideto00/page/480 480] | isbn = 978-0-7356-2253-1 | df = mdy-all | url-access = registration }}</ref> जो इसमें सम्मलित है।</blockquote>


==रोकथाम==


[[File:Software bug displayed on two screens at La Croix de Berny station in France - 2021-10-28.jpg|thumb|फ़्रांस के [[ला क्रोक्स डे बर्नी स्टेशन]] पर दो स्क्रीन पर प्रदर्शित सॉफ़्टवेयर बग के परिणामस्वरूप त्रुटि।]]सॉफ़्टवेयर उद्योग ने बगों की संख्या कम करने के लिए बहुत प्रयास किए हैं।<nowiki><ref></nowiki>{{cite book | last = Huizinga | first = Dorota | author2 = Kolawa, Adam | title = स्वचालित दोष निवारण: सॉफ्टवेयर प्रबंधन में सर्वोत्तम अभ्यास| url = http://www.wiley.com/WileyCDA/WileyTitle/productCd-0470042125.html | year = 2007 | publisher = Wiley-IEEE Computer Society Press | page = 426 | isbn = 978-0-470-04212-0 | url-status = live | archive-url = https://web.archive.org/web/20120425232401/http://www.wiley.com/WileyCDA/WileyTitle/productCd-0470042125.html | archive-date = April 25, 2012 | df = mdy-all }}</ref><ref>{{cite book | last = McDonald | first = Marc | author2 = Musson, Robert | author3 = Smith, Ross | title = दोष निवारण के लिए व्यावहारिक मार्गदर्शिका| url = https://archive.org/details/practicalguideto00/page/480 | year = 2007 | publisher = Microsoft Press | page = [https://archive.org/details/practicalguideto00/page/480 480] | isbn = 978-0-7356-2253-1 | df = mdy-all | url-access = registration }}</ref> इसमे सम्मलित है:


=== टंकण त्रुटियाँ ===
=== टंकण त्रुटियाँ ===
बग साधारणतयः तब दिखाई देते हैं जब प्रोग्रामर एक तार्किक त्रुटि करता है। [[प्रोग्रामिंग शैली]] और [[रक्षात्मक प्रोग्रामिंग]] में विभिन्न नवाचारों को इन बगों की संभावना कम करने, या स्पॉट करने में आसान बनाने के लिए डिज़ाइन किया गया है। कुछ टाइपो, विशेष रूप से प्रतीकों या तार्किक/[[ऑपरेटर (गणित)]] के, प्रोग्राम को गलत तरीके से संचालित करने की अनुमति देते हैं, जबकि अन्य जैसे लापता प्रतीक या गलत वर्तनी वाले नाम प्रोग्राम को संचालन से रोक सकते हैं। स्रोत कोड संकलित होने पर संकलित भाषाएँ कुछ टाइपो प्रकट कर सकती हैं।
बग साधारणतयः तब दिखाई देते हैं जब प्रोग्रामर एक तार्किक त्रुटि करता है। [[प्रोग्रामिंग शैली]] और [[रक्षात्मक प्रोग्रामिंग]] में विभिन्न नवाचारों को इन बगों की संभावना कम करने, या स्पॉट करने में आसान बनाने के लिए डिज़ाइन किया गया है। कुछ टाइपो, विशेष रूप से प्रतीकों या तार्किक/[[ऑपरेटर (गणित)]] के, प्रोग्राम को गलत विधि से संचालित करने की अनुमति देते हैं, जबकि अन्य जैसे लापता प्रतीक या गलत वर्तनी वाले नाम प्रोग्राम को संचालन से रोक सकते हैं। सोर्स  कोड संकलित होने पर संकलित लैंग्वेजएँ कुछ टाइपो प्रकट कर सकती हैं।


=== विकास के तरीके ===
=== डेवलोपमेन्ट  के विधि ===
कई योजनाएँ प्रोग्रामर गतिविधि को प्रबंधित करने में सहायता करती हैं जिससे कि कम बग उत्पन्न हों। [[सॉफ्टवेयर इंजीनियरिंग]] (जो सॉफ़्टवेयर डिज़ाइन के मुद्दों को भी संबोधित करती है) दोषों को रोकने के लिए कई तकनीकों को लागू करती है। उदाहरण के लिए, औपचारिक [[कार्यक्रम विनिर्देश]] कार्यक्रमों के सटीक व्यवहार को बताते हैं जिससे कि डिज़ाइन बग को समाप्त किया जा सके। दुर्भाग्य से, औपचारिक विनिर्देश किसी भी चीज के लिए अव्यावहारिक हैं, लेकिन कम से कम कार्यक्रमों के लिए, दहनशील विस्फोट और गैर-नियतात्मक एल्गोरिदम की समस्याओं के कारण।
कई योजनाएँ प्रोग्रामर गतिविधि को प्रबंधित करने में सहायता करती हैं जिससे कि कम बग उत्पन्न हों। [[सॉफ्टवेयर इंजीनियरिंग]] (जो सॉफ़्टवेयर डिज़ाइन के मुद्दों को भी संबोधित करती है) दोषों को रोकने के लिए कई विधियों को लागू करती है। उदाहरण के लिए, औपचारिक [[कार्यक्रम विनिर्देश]] कार्यक्रमों के सटीक व्यवहार को बताते हैं जिससे कि डिज़ाइन बग को समाप्त किया जा सके। दुर्भाग्य से, औपचारिक विनिर्देश किसी भी चीज के लिए अव्यावहारिक हैं, लेकिन कम से कम कार्यक्रमों के लिए, दहनशील विस्फोट और गैर-नियतात्मक एल्गोरिदम की समस्याओं के कारण।


[[इकाई का परीक्षण]] में प्रत्येक फंक्शन (यूनिट) के लिए एक टेस्ट लिखना सम्मलित है जिसे प्रोग्राम को परफॉर्म करना है।
[[इकाई का परीक्षण]] में प्रत्येक फंक्शन (यूनिट) के लिए एक टेस्ट लिखना सम्मलित है जिसे प्रोग्राम को परफॉर्म करना है।


परीक्षण-संचालित विकास में इकाई परीक्षण कोड से पहले लिखे जाते हैं और कोड को तब तक पूर्ण नहीं माना जाता जब तक कि सभी परीक्षण सफलतापूर्वक पूर्ण नहीं हो जाते।
परीक्षण-संचालित डेवलोपमेन्ट  में इकाई परीक्षण कोड से पहले लिखे जाते हैं और कोड को तब तक पूर्ण नहीं माना जाता जब तक कि सभी परीक्षण सफलतापूर्वक पूर्ण नहीं हो जाते।


[[चुस्त सॉफ्टवेयर विकास]] में अपेक्षाकृत छोटे बदलावों के साथ लगातार सॉफ्टवेयर रिलीज सम्मलित होते हैं। उपयोगकर्ता प्रतिक्रिया से दोष प्रकट होते हैं।
अगिल सॉफ्टवेयर डेवलोपमेन्ट  में अपेक्षाकृत छोटे बदलावों के साथ लगातार सॉफ्टवेयर रिलीज सम्मलित होते हैं। उपयोगकर्ता प्रतिक्रिया से दोष प्रकट होते हैं।


ओपन सोर्स डेवलपमेंट किसी को भी सोर्स कोड की जांच करने की अनुमति देता है। लिनस के नियम के रूप में एरिक एस. रेमंड द्वारा लोकप्रिय विचार के एक स्कूल का कहना है कि लोकप्रिय [[खुला स्रोत सॉफ्टवेयर]] में अन्य सॉफ़्टवेयर की तुलना में कम या कोई बग नहीं होने की अधिक संभावना है, क्योंकि पर्याप्त नेत्रगोलक दिए जाने पर, सभी बग उथले हैं।<ref>[http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/ar01s04.html "Release Early, Release Often"] {{webarchive|url=https://web.archive.org/web/20110514032650/http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/ar01s04.html |date=May 14, 2011 }}, [[Eric S. Raymond]], ''[[The Cathedral and the Bazaar]]''</ref> चूंकि, यह दावा विवादित रहा है: कंप्यूटर सुरक्षा विशेषज्ञ [[इलियास लेवी]] ने लिखा है कि जटिल, कम समझ में आने वाले और बिना दस्तावेज वाले स्रोत कोड में कमजोरियों को छिपाना आसान है, क्योंकि भले ही लोग कोड की समीक्षा कर रहे हों, इसका मतलब यह नहीं है कि वे योग्य हैं ऐसा करने के लिए।<ref>[http://www.securityfocus.com/news/19 "Wide Open Source"] {{webarchive|url=https://web.archive.org/web/20070929105937/http://www.securityfocus.com/news/19 |date=September 29, 2007 }}, [[Elias Levy]], ''SecurityFocus'', April 17, 2000</ref> ओपन-सोर्स सॉफ़्टवेयर बग का एक उदाहरण डेबियन 2008 ओपनएसएसएल भेद्यता थी।
ओपन सोर्स डेवलपमेंट किसी को भी सोर्स कोड की जांच करने की अनुमति देता है। लिनस के नियम के रूप में एरिक एस. रेमंड द्वारा लोकप्रिय विचार के एक स्कूल का कहना है कि लोकप्रिय ओपन सोर्स  सॉफ्टवेयर में अन्य सॉफ़्टवेयर की तुलना में कम या कोई बग नहीं होने की अधिक संभावना है, क्योंकि पर्याप्त नेत्रगोलक दिए जाने पर, सभी बग उथले हैं।<ref>[http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/ar01s04.html "Release Early, Release Often"] {{webarchive|url=https://web.archive.org/web/20110514032650/http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/ar01s04.html |date=May 14, 2011 }}, [[Eric S. Raymond]], ''[[The Cathedral and the Bazaar]]''</ref> चूंकि, यह दावा विवादित रहा है। कंप्यूटर सुरक्षा विशेषज्ञ [[इलियास लेवी]] ने लिखा है कि जटिल, कम समझ में आने वाले और बिना दस्तावेज वाले सोर्स  कोड में कमजोरियों को छिपाना आसान है, क्योंकि भले ही लोग कोड की समीक्षा कर रहे हों, इसका मतलब यह नहीं है कि वे योग्य हैं ऐसा करने के लिए।<ref>[http://www.securityfocus.com/news/19 "Wide Open Source"] {{webarchive|url=https://web.archive.org/web/20070929105937/http://www.securityfocus.com/news/19 |date=September 29, 2007 }}, [[Elias Levy]], ''SecurityFocus'', April 17, 2000</ref> ओपन-सोर्स सॉफ़्टवेयर बग का एक उदाहरण डेबियन 2008 ओपनएसएसएल भेद्यता थी।


=== [[प्रोग्रामिंग भाषा]] समर्थन ===
=== [[प्रोग्रामिंग भाषा|प्रोग्रामिंग लैंग्वेज]] समर्थन ===
प्रोग्रामिंग लैंग्वेज में बग्स को रोकने में मदद करने के लिए फीचर्स सम्मलित हैं, जैसे स्टैटिक [[प्रकार प्रणाली]], प्रतिबंधित [[नाम स्थान]] और [[मॉड्यूलर प्रोग्रामिंग]]उदाहरण के लिए, जब एक प्रोग्रामर लिखत