Agile methodology क्या है ? Part 1

Agile methodology एक SDLC में एक Reference model है ! जिसके Principle और Rules को Follow करते हुए किसी Software को Develop किया जाता है ! Agile का हिन्दी अर्थ होता है ! ,तेजतर्रार स्फूर्तिमान इसके name के अर्थ की तरह ही इसके Principle को Follow करते हुए Software development में तेजी और स्पूर्ति लाही जा सकती है !

दोस्तों Software industry कोई ज्यादा पुराणी Industry नहीं है ! इसका विकास और फैलाव बीसवीं सदी से ही प्रारम्भ हुवा है ! इस Industry के सुरुवाती दौर में Software Development में परम्परागत (Traditional ) तोर तरीको को use किया जाता था जिनमे से एक Waterfall model भी था जिसके Principle को follow करते हुए कम्पनिया Software Develop करती थी परन्तु इस Traditional methodology में कुछ बहुध बड़ी खामिया थी जिसको पूरा करने के लिए Agile methodology अस्तित्व में आई जिसके परिणाम स्वरूप software engineer का काम थोड़ा easy हो गया और Program को बनाने में लगने वाला समय भी कम हो गया

Agile methodology सरल अर्थ यह होता है की थोड़ा बनावो और बार-बार बनावो वह तो यहां तक के लेख में हमने सिर्फ इसका कुछ सैद्धांतिक ज्ञान समझा है आगे बढ़ते हैं और हम समझते हैं कि आखिर Agile methodology की आवश्यकता हमें क्यों महसूस हुई समय के साथ साथ IT इंडस्ट्री ग्रोथ करती रही और उसके सामने निरंतर New Problem आ रही थी उदाहरण के तौर पर यदि कोई Client किसी कंपनी के पास कोई एप्लीकेशन या वेबसाइट बनाने आता है तो जो Requirement उसने स्टार्टिंग में कंपनी को दिया होता है उसी के अनुरूप ना होकर बीच में Production के दौरान उनकी कुछ Requirement , Change हो जाती है( कोई भी Software या Application बनने के दौरान उसके Starting से लेकर Ending तक पूरी क्या प्रक्रिया होती है यदि आप यह जानना और समझना चाहते हैं तो आप WantertFall Modelको पढ़ें )यानी वह चाहता है कि उसकी वेबसाइट में Market में चल रही कोई New Functionality हो या Functionality change हो इस तरह की Requirement Production के दौरान होना आम बात हो गई थी परंतु इनमें कंपनियों औरDeveloper को काफी परेशानियों का सामना करना पड़ रहा था क्योंकि Production के दौरान अगर कोई चीज बन चुकी है और उसमें कोई फेरबदल करना है तो उसको इंप्लीमेंट करना काफी महंगा हो रहा था यह समस्या के समाधान के लिए Agile methodology के प्रिंसिपल को फॉलो करना आवश्यक हो गया यूं कहें कि इन्हीं कारणों से Agile methodology के सिद्धांतों को ध्यान में रखकर ज्यादा Use होने लगा चलो यहां हम क्लाइंट की रिक्वायरमेंट और जरूरत तो कोई उदाहरण के तौर पर समझ लेते हैं मान लेते हैं एक आईटी कंपनी है
कंपनी के पास कोई एक क्लाइंट आता है उसको एक एप्लीकेशन बनवाना है वह कहता है मुझे एक व्हाट्सएप टाइप का एप्लीकेशन चाहिए जिसमें मैसेज सेंड कर सकूं Video Send कर सकूं चैट कर सकूं video Calling कर सकूं इस Requirement के अनुसार कंपनी उसके ऊपर काम करने लग जाती है थोड़ा टाइम निकलने के बाद Client आता है और बोलता है कि मुझे Payment Functionality भी चाइये और आप इस feature को मेरे Software में ऐड करो तब दोस्तों इसमें क्या होगा , पूरी प्रोग्रामिंग कर ली है कोडिंग कर ली है प्रोग्राम काफी ज्यादा बन चुका है और अब इस Functionality को Add करना है तो कंपनी लिए यह एक हेडेक हो जाएगी तो इसी समस्या से निजात पाने के लिए Agile methodology कंपनी लिए बहुत ही मददगार होगी अर्थात यदि सॉफ्टवेयर की शुरुआती में ही Agileके सिद्धांतों को ध्यान में रखकर सॉफ्टवेयर का निर्माण करे और यदि इस दौरान बीच में कोई भी Changes करने या कोई Functionality Add करनी है ! या क्लाइंट की कोई भी Requirement बदलती है , तो इसको Add or Remove करने में कोई भी समस्या नहीं होगी !

इस methodology में Development Cycle होती है जो निरंतर चलती रहती है और Product बनता रहता है Product Production के दौरान हर एक Step पर कस्टमर का Feedback लिया जाता है और उसे दिखाया जाता है कि यहां तक काम हो चुका है इस तरह से चल रहा है अर्थात थोड़ा-थोड़ा बनाकर उसे निरंतर डिलीवर किया जाता है कस्टमर Product को काफी अच्छी तरह से समझ सकता है और उसे एक Satisfaction मिलता है !

आज के समय में लगभग हर कंपनी इस methodology का यूज़ करते हुए अपने Productको build करती है इसके कारण उनको एक अच्छा Customer satisfaction मिलता है अगर हम Waterfall Modal की तुलना में इसको देखें तो यह एक बहुत ही प्रभावी मॉडल है इस मॉडल में एक अच्छा Team collaboration होता है जिसके कारण Waterfall Model में आई समस्याएं यहां नहीं होती है ! इस methodology को follow करते हुए कंपनी जब अपना Product build करती है तो उसमें Team का रोल बहुत ही कम हो जाता है यानि की टीम कम हो जाती है जिससे collaboration अच्छा बनता है और आपसी समझ से मुद्दे उलझते नहीं है इसके विपरीत यदि हम Waterfall Model को देखा जाए तो वहां पर हर एक काम के लिए अलग-अलग टीम होती है और उन Tems के बीच में बहुत ही कम collaboration होता है जिस कारण से एक दूसरे पर काम को थोपने जैसा व्यवहार करते हैं

Agile methodology में मुख्य रूप से 3 Team ही होती है जो मिलकर इस पुरे प्रोसेस को Agile बनाती है ! इस लेख में इतना ही ज्यादा और ज्यादा जानकारी पार्ट 2 में।

Leave a Reply

Your email address will not be published.