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