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