अजाईल मेथडॉलॉजी – भाग २

ही लेखमालिका अतिथी लेखक श्री. प्रशांत पुंड खास टेक मराठीसाठी लिहित आहेत. प्रशांत हे सॉफ्टवेअर मेथडॉलॉजीज, SDLC या संदर्भात कन्सलटंट आणि मेंटर म्हणून काम करतात.  आतापर्यंतच्या त्यांच्या २५ वर्षाच्या करीयरमधे  त्यांनी अनेक कंपन्यांमधे एक्झिक्युटीव पदावर जबाबदारी पार पाडली आहे. आजवर  त्यांनी ७५ हून अधिक कंपन्यांमधे ४०० हून अधिक ट्रेनिंग सेशन्स घेतली आहेत. सध्या अजाईलसॉफ्ट  मेथडॉलॉजीज ही स्वत:ची कंपनी  स्थापन करून CEO या पदावर कार्यरत आहेत. अजाईलसॉफ्ट  मेथडॉलॉजीज ही कंपनी सॉफ्टवेअर मेथडॉलॉजीज, आय. टी. सिक्युरीटी, SDLC या संदर्भात ट्रेनिंग व कन्सलटन्सी या सेवा पुरविते.

मागील लेखामधे आपण मेथडॉलॉजीज या संक्ल्पनेविषयी चर्चा केली. वॉटरफॉल व त्यानंतर आलेल्या Iterative Methodologies बद्दल जाणून घेतलं. प्रस्तुत लेखात आपण अजाईल मेथडॉलॉजीज बद्दल आणखी माहिती घेऊ.

बदलाची गरज
Defined Process मुळे Software Industry मध्ये एक सुसुत्रता आली, हे खरे. Process manual असल्यामुळे कशा क्रमाने काम करायचे, तसेच सर्व प्रोजेक्ट्सची माहिती शास्त्रीय पद्धतीने गोळा करणे, त्याचे विश्लेषण (analysis) करणे व त्यानुसार प्रोसेसमध्ये आवश्यक ते बदल करणे शक्य झाले. या फायद्यांमुळेच CMMI level 2 पासून 5 पर्यंत क्रमाक्रमाने प्रगल्भता (maturity) मिळविण्याकडे कंपन्यांचा कल वाढला. Quality process मध्ये CMMI व्यतिरीक्त ISO, TQM, Six Sigma अशा इतरही अनेक process frameworks/ standards ची चलती वाढली.
“अति सर्वत्र वर्जयेत” या उक्तीनुसार जेव्हा प्रोसेसचा बाऊ केला जातो, तेव्हा मागील लेखात म्हटल्याप्रमाणे “Process for people” की “People for process” हा संभ्रम होतो.
Process standardization चा सगळ्यात महत्वाचा फायदा म्हणजे त्यायोगे येणारी शिस्त अन या शिस्तिचा अतिरेक म्हणजे लवचिकता संपुष्टात येणे, हीच अडचण समोर येऊ लागली.
अजाईल या संकल्पनेकडे एखादे फॅड किंवा फॅशन म्हणून बघणे Software Industry ला नक्कीच परवडणारे नाही. खरा प्रश्न आहे तो, खरेच काही बदल हवा आहे का, याचा. Defined process वापरत असताना बदलांना सामोरे जाण्याची क्षमता कमी झालेली आहे किंवा ते बदल सामावून घेण्याची किंमत वाढली आहे, ही पहाणे गरजेचे आहे.

अजाईल जाहीरनामा (Agile Manifesto)
काही मेथडॉलॉजीस्ट मंडळींना एकत्र येऊन “अजाईल मेथडॉलॉजीज” ही संकल्पना मांडली. एकत्र येण्याआधी स्वतंत्रपणे त्यांनी “एक्स्ट्रिम प्रोग्रॅमिंग“(Extreme Programming ), “क्रिस्टल” (Crystal) यांसारख्या मेथडॉलॉजीज विकसित केलेल्या होत्या. एकत्र आल्यावर यातील सार्धम्य लक्षात घेऊन त्यांनी अजाईल जाहीरनामा (Agile Manifesto) ठरविला; तो असा-
आम्ही सॉफ्टवेअर तयार करण्याच्या अधिक चांगल्या पद्धती शोधीत आहोत आणि त्याबाबत इतरांनाही मदत करीत आहोत. हे करत असताना खालील गोष्टींना प्राधान्य द्यावे, असे आमच्या लक्षात आले आहे.

“प्रोसेस आणि टूल्स”                               पेक्षा                      “व्यक्ती व परस्पर संभाषण”

“दस्ताऐवज/ कागदपत्रे”                            पेक्षा                      “व्यवस्थित चालणारे सॉफ्टवेअर”

“करार व तडजोड”                                  पेक्षा                      “ग्राहकांशी सुसंवाद”

“पक्की ठरविलेली योजना पाळणे”                 पेक्षा                     “बदलांना सामोरे जाणे”

वर डावीकडे दिलेल्या गोष्टी महत्वाच्या आहेतच पण आम्ही उजवीकडच्या गोष्टींना  जास्त प्राधान्य देतो.

(स्वैर भाषांतर – “Agile Manifesto” हक्क agilemanifesto.org च्या स्वाधीन)

वर दिलेल्या चारही तत्वांचे प्रतिबिंब आपल्याला प्रत्येक अजाईल मेथडॉलॉजीजमध्ये दिसेल.

थोडक्यात ही तत्वे पाळणारी कोणतीही मेथडॉलॉजी असेल (अगदी तुम्ही स्वत: ठरविलेली) त्याला अजाईल मेथडॉलॉजी म्हणता येते. सध्या अस्तित्वात असलेल्या काही अजाईल मेथडॉलॉजीज खालीलप्रमाणे आहेत-

१. एक्स्ट्रिम प्रोग्रॅमिंग (XP)

२. स्क्रम (Scrum)

३.  लीन डेव्हलपमेंट (Lean Development)

४. डी. एस. डी. म (DSDM)

५. ऍडाप्टिव सॉ्फ्टवेअर डेव्हलपमेंट (Adaptive Software Development)

६. फीचर ड्रीव्हन डेव्हलपमेंट (Feature Driven Development)  इत्यादी.

“अजाईल” च्या चार तत्वांविषयी व आणखी काही तत्वांविषयी जाणून घेऊ पुढील लेखात.

अजाईल मेथडॉलॉजी – भाग ३

अजाईल मेथडॉलॉजी – भाग ४

श्री. प्रशांत पुंड यांना येथे संपर्क करू शकता –
Linked In: http://www.linkedin.com/pub/dir/Prashant/Pund/
Blog : http://pundprashant.wordpress.com/
E-mail: prashant.pund at agilesoft.in

One thought on “अजाईल मेथडॉलॉजी – भाग २

  1. छान… मदत होईल ह्या article मुले. मी आता सध्या Agile वरच काम करतोय. Waiting for Next Agile Article :)

Leave a comment

Your email address will not be published. Required fields are marked *

Enable Google Transliteration.(To type in English, press Ctrl+g)