تازهکار: سلام
چابک: سلام. چهرهات نشان از سردرگمی دارد. میتوانم کمک کنم؟
تازهکار: حق با شماست. بعد از توضیحات شما در مورد چابکی، بیش از پیش دچار ابهام شدهام.
چابک: ابهام چیز ناخوشایندی نیست. کدام بخش برایت مبهم است؟
تازهکار: چرایی متدهای چابک. یعنی فلسفه به وجود آمدن متدهای چابک و ارتباط آن با ایجاد نرمافزار
چابک: اجازه بدهید ابتدا کمی تاریخ برایتان بگویم.
متدهای اسکرام و دیاسدیام قبل از متد اکسپی ارائه شده بودند. اولی چارچوبی برای مدیریت پروژه و دومی، متدی برای ایجاد سیستمهای کسبوکاری(business). ارائه اکسپی توسط کنت بک و دوستانش، نقطه عطفی بود بر این گونه متدها. به دلایل متعدد از جمله ارائهدهندگان اکسپی و تولد آن از دنیای توسعهدهندگان و برنامهنویسان، این متد با اقبال بسیاری روبرو شد، موج و حرکت جدیدی را به وجود آورد که تا به امروز نیز ادامه دارد.
تازهکار: نام چابک از کجا آمد؟
چابک: پس از مدتی چند تن از پیشروان این پارادایم، به دعوت باب مارتین (رابرت سی مارتین معروف به عمو باب) در جایی جمع شدند. هدف اصلی گردهمایی این بود که بین متدهای سبک شامل Adaptive Software Development, XP, Scrum, Crystal, Feature-Driven Development, Dynamic System Development Method (DSDM), and “pragmatic programming.” مشابهتی وجود دارد یا خیر.
یکی از نتایج گردهمایی، نامگذاری این گونه از متدها بود. در آن گردهمایی مجموعهای از اسامی پیشنهاد شد و پس از مراحلی، بین دو نام چابک (agile) و سازگار (adaptive) رای به چابک داده شد، هر چند عنوان دوم در بسیاری از مراجع و حتی توسط بسیاری از پیشروان این متدها هنوز به کار برده میشود.
تازهکار: آِیا گردهمایی فقط منجر به انتخاب عنوان متدها شد؟
البته که خیر.
شرکتکنندگان گردهمایی در مورد چند موضوع اتفاق نظر داشتند:
– در سطح اول، بر سر ضرورت پاسخگویی مناسب به تغییرات
– در سطح دوم، بر سر چهار ارزش اصلی (Value)
– در سطح سوم ( و به دشواری) ، بر سر دوازده بند و اصل همخوان با ارزشهای چهارگانه(Principle)
سطوح دوم و سوم به صورت بیانیهای (Agile Manifest) صادر و توسط این افزاد امضاء شد. این افراد پس از آن، Agile Alliance را نیز پایهگذاری کردند.
تازهکار: خوب، پس هدف اصلی متدهای چابک، پذیرش تغییرات و اعمال مناسب آنهاست.
چابک: البته. اما این موضوع، همه فلسفه چابک را در بر نمیگیرد.
در دهه گذشته، حرکت به سوی متدهای چابک سرعت روزافزونی به خود گرفته است. در این سالها، واضعان این متدها با تفکرات متفاوت اما همگرا و با تکیه بر تجربههای مؤفق نشان دادند که اجرای این متدها تأثیر بهسزایی در بهبود چهار پارامتر بزرگ و مهم دارند: کارایی، کیفیت، روحیه افراد و زمان ورود به بازار.
هدف اصلی متدهای چابک تحویل سریعتر نرمافزار و کسب اطمینان از پوشش نیازهای در حال تغییر مشتری است. بطور کلی این متدها بر چهار موضوع انسانها و تعاملات بین آنها، پذیرش تغییرات نیازمندیها، تحویل زود به زود نرمافزار قابل استفاده و همکاری نزدیک مشتری و توسعهدهندگان تأکید دارند.
تازهکار: خوب، پس از فردا شروع میکنم به چابککار شدن و مدیرانم را نیز تشویق میکنم به چابککاری.
چابک: صبر کن. به کجا چنین شتابان. چقدر زود احساساتی شدی. به قول دوستان «چرا جوگیر شدی؟».
تازهکار: مگر شما نگفتید که چابک خیلی خوب است.
چابک: چرا!
تازهکار: خوب. پس باید شروع کنیم.
چابک: حتماً ابتدا شروع میکنی یک بکلاگ محصول مینویسی،..، بعد هم تکرارهای ماهانه (اسپرینت) خواهی داشت، جلسات ایستاده روزانه برگزار میکنی؟
تازهکار: شما از کجا فهمیدید؟
چابک: چون سادهترین بخش کار، همین مواردی است که شما میخواهید انجام دهید. خیلی از کسانی که میشناسم به همین گونه شروع کردهاند و بعد «عشق آسان نمود اول، ولی افتاد مشکلها»
بگذارید آماری را خدمت شما ارائه دهم. مؤسسه Standish Group در گزارش سال ۲۰۱۱ خود، اعلام کرده است که:
۹ درصد پروژههای چابک شکست خوردهاند.
۴۹ درصد …. دچار چالش بودهاند.
۴۲ درصد …. با مؤفقیت پایان یافتهاند.
این آمار به این معنی است که با وجود مؤفقیت متدهای چابک، ۵۸ درصد پروژهها دچار مشکل هستند. به عبارت سادهتر اجرای متدهای چابک حتی به بهترین شیوه آن، به معنی واکسینه شدن در مقابل خطرات و ریسکهای پروژهها نیست.
تازهکار: پس چه کار کنم؟
چابک: به قول یکی از دوستان «درست که من جو میدهم، ولی شما که نباید جو گیر شوی». بداجرا کردن، بددفاع کردن از یک موضوع، از دشمنی با آن فاجعهبارتر است.
اجازه بدهید کمی بیشتر درباره ابعاد قضیه با هم صحبت کنیم و بعد، ایدههایمان را با هم اجرا میکنیم.
تازهکار: بسیار خوب.
چابک: بقیهاش باشد برای بعد. تعطیلات خوش بگذرد.
تازهکار: به شما هم همینطور.
مراجع:
سیلابس دوره متدهای چابک (Agile Methods)
Agile Software Development: The Cooperative Game, 2nd, Alistair Cockburn
Standish Group, CHAOS Report, 2011
گزیده:
Agile methods derive much of their agility by relying on the tacit knowledge embodied in the team, rather than writing the knowleadge down in plans.
Barry Boehm
دیدگاهتان را بنویسید