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