Technical Debt

Technical debt एक बोझ है जो सॉफ्टवेयर डेवलपर्स पुराने source code और architectural निर्णयों से सामना करते हैं। यह खराब-लिखित कार्यों से लेकर framework तक हो सकता है जो अब समर्थित नहीं हैं। कुछ मामलों में, technical debt को code को फिर से लिखकर नियंत्रित किया जा सकता है, जबकि अन्य में, डेवलपर्स को पूरे कार्यक्रमों को फिर से लिखना पड़ सकता है।

technical debt ko manage karna

Technical debt से बचना

technical debt का प्रबंधन करने का सबसे अच्छा तरीका यह है कि इसे पहले स्थान पर जमा करने से बचें। यह एक दीर्घकालिक योजना के साथ एक कार्यक्रम तैयार करने के साथ शुरू होता है। एक बुद्धिमान software engineer भविष्य के लिए एक application डिजाइन करेगा, न कि केवल सॉफ्टवेयर और hardware की वर्तमान स्थिति के लिए। “future-proof” programing languages और विश्वसनीय ढांचे को चुनना वास्तुशिल्प प्रक्रिया में दो महत्वपूर्ण निर्णय हैं।

technical debt से बचने के लिए अच्छी coding प्रथाओं का पालन करना भी आवश्यक है। उदाहरण के लिए, यदि एक ही तर्क को एक कार्यक्रम के भीतर कई बार दोहराया जाता है, तो इसे एक ही class या function में समेकित किया जाना चाहिए। अन्यथा, भविष्य में प्रत्येक इंस्टेंस का पता लगाना और उसे update करना अधिक कठिन होगा, खासकर यदि नए डेवलपर प्रोजेक्ट पर काम कर रहे हों। भविष्य में कोड की समीक्षा और update करने के लिए comment code भी आवश्यक है।

Technical Debt का प्रबंधन

technical debt को प्रबंधित करने के दो मुख्य तरीके हैं कोड के अनुभागों को फिर से लिखना या शुरुआत से शुरू करना। सबसे अच्छा मार्ग परियोजना के आकार और तकनीकी ऋण की मात्रा पर निर्भर करता है।

1. पुनर्लेखन कोड

technical debt को संभालने का सबसे आम तरीका पुनर्लेखन या “refactoring” code है। उदाहरण के लिए, एक वरिष्ठ डेवलपर एक जूनियर डेवलपर द्वारा लिखे गए कोड की समीक्षा कर सकता है और प्रदर्शन को अनुकूलित करने के तरीके ढूंढ सकता है। बहिष्कृत कार्यों को अपडेट करना भी आवश्यक हो सकता है ताकि कोड एक नए platform पर चल सके। कुछ मामलों में, नए API के साथ काम करने के लिए कोड के बड़े हिस्से को फिर से लिखना पड़ सकता है। इस प्रकार के अपडेट programing की दुनिया में आम हैं और एक कारण है कि डेवलपर्स नए संस्करण जारी करते हैं।

2. Scratch से शुरू

यदि technical debt की राशि काफी बड़ी है, तो कोड को अपडेट करने के लिए नए प्रोग्राम को नए सिरे से लिखने की तुलना में अधिक समय की आवश्यकता हो सकती है। कुछ मामलों में, किसी एप्लिकेशन को एक नई programing language में फिर से कोड करना आवश्यक हो सकता है जो आधुनिक software compiler के साथ संगत हो। किसी ऐप को बिल्कुल नए सिरे से बनाना एक महत्वपूर्ण निवेश है, लेकिन यह अतिरिक्त लाभ प्रदान कर सकता है। उदाहरण के लिए, एक नया एप्लिकेशन नवीनतम हार्डवेयर तकनीकों और आधुनिक यूजर इंटरफेस तत्वों का लाभ उठा सकता है।