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