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