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