مدیریت پروژه
چارچوب چابک منظم یا Disciplined Agile چیست؟
قبل از درک چابک منظم (Disciplined Agile)، ابتدا باید بررسی کنیم که چابک چیست. چابک در متدولوژی مدیریت پروژه، فرایندی است که طی آن یک تیم، یک پروژه را با تقسیمبندی به چندین پروژه کوچکتر، مدیریت میکند. این فرایند با توصیف مشتری از محصول نهایی آغاز میشود. پس از درک نیاز مشتری، تیمها شروع به برنامهریزی، اجرا و ارزیابی محصول میکنند. میتوان آن را یک روش مدیریت پروژه تعریف کرد که با توسعه محصولات بر اساس نیاز مشتریان، با استفاده از چرخههای کوتاه کار که امکان تولید سریع و ویرایش در صورت لزوم را فراهم میآورد، مشخص میشود. در ادامه متن این مسئله را بیشتر توضیح خواهیم داد.
مرور مباحث اصلی مدیریت چابک
اجازه دهید چابک را با یک مثال درک کنیم. فرض کنید در حال سفارش پیتزا در یک رستوران هستید. این رستوران گزینههای متفاوتی را برای استفاده در غذا مانند زیتون، فلفلدلمهای، پنیر بیشتر، پنیر کمتر و غیره در اختیار شما قرار میدهد، بنابراین در اینجا، مواد پیتزا به انتخاب مشتری سفارشی میشود. هر یک از مشتریان پیتزای یکسانی سرو نمیکنند. چابک نیز همین کار را میکند. این روش یک راهحل متناسب با نیاز مشتری ارائه میدهد. این کار انعطافپذیری مناسبی را در استراتژی پروژه ایجاد میکند و از اقدامات ناکارآمد مانند مستندات سنگین، تعداد زیاد جلسات، پایبندی سخت و غیره، جلوگیری میکند.
در سال ۲۰۰۱، گروهی متشکل از ۱۷ توسعهدهنده، نرمافزار The Agile Manifesto را توسعه دادند و مانیفستی را در نظر گرفتند که دوازده اصل چارچوب چابک را شرح میدهد. این دوازده اصل به شرح زیر است:
- رضایت مشتری از طریق تحویل سریع و مداوم نرمافزارهای ارزشمند
- استقبال از الزامات متغیر، حتی در اواخر توسعه
- ارائه نرمافزارهایی برای کار بیشتر برای هفتهها و نه ماهها
- همکاری نزدیک، همکاری روزانه بین افراد تیم و توسعه دهندگان
- پروژهها بر اساس ایده افراد باانگیزه ساخته شدهاند و باید به آنها اعتماد کرد
- مکالمه حضوری بهترین راه ارتباطی است
- نرمافزار کار اندازهگیری کلیدی پیشرفت است
- توسعه پایدار، قادر به حفظ سرعت ثابت است
- توجه مستمر به برتری فنی و طراحی عالی
- سادگی – هنر حداکثر کردن میزان کار انجام نشده – ضروری است
- بهترین معماریها، الزامات و طرحها از تیمهای خودسازمانده، به وجود میآیند
- به طور منظم، تیم در مورد چگونگی تأثیرگذاری بیشتر فکر میکند و بر این اساس تنظیم میشود
چهار ایده اصلی چابک عبارتاند از:
- همکاری مشتری در مورد مذاکره قرارداد
- افراد و تعاملات بر روی فرایندها و ابزارها
- نرمافزار کار بر روی مستندات جامع
- پاسخ به تغییر در پی برنامهریزی
همچنین برخی از روشهای چابک عبارتاند از:
- اسکرام
- Extreme Programming (XP)
- Kanban
- Adaptive Project Framework (APF)
چابک منظم چیست؟
چابک منظم را میتوان به عنوان یک ابزار تصمیمگیری فرایند تعریف کرد که به بهینهسازی فرایندها با توجه به نیازهای خاص هر پروژه، کمک میکند. این اولین چارچوب چابک برای مردم است و ترکیبی از روشهای مختلف تحویل چابک منظم مانند XP، اسکرام، کانبان و غیره است.
چابک منظم افراد، تیمها و سازمانها را برای بهینهسازی فرایندها راهنمایی میکند. با نشان دادن این که چگونه فعالیتهای مختلف مانند توسعه نرمافزار، عملیات فناوری اطلاعات، امور مالی، تدارکات، مدیریت نمونه کارها و معماری سازمانی میتوانند با یکدیگر همکاری کرده و پایهای برای پیشرفت کسبوکار ایجاد کنند. این چارچوب طیف گستردهای از ایدههای سفارشی و حساس به زمینه را ارائه میدهد و به تصمیمگیری بهتر کمک میکند.
تاریخ چابک منظم (DA)
در سال ۲۰۰۹، اسکات آملر و مارک لاینز توسعه DAD (Disciplined Agile Delivery)، بخشی از توسعه نرمافزار DA (Disciplined Agile) را آغاز کردند. در سال ۲۰۱۲، انضباط چابک رسما از طریق کتاب “تحویل چابک با انضباط” معرفی شد.
در سال ۲۰۱۵، یک چارچوب انضباطی چابک، با نام Disciplined Agile 2.0 توسعه داده شد. لایه دوم، Disciplined DevOps و لایه سوم، به نام Disciplined Agile IT (DAIT)، اضافه شد.
در سال ۲۰۱۷، Disciplined Agile 3.0 با معرفی لایه چهارم به نام Disciplined Agile Enterprise (DAE) منتشر شد. در سال ۲۰۱۸، Disciplined Agile 4.0 که به عنوان Disciplined Agile Toolkit نیز شناخته میشد، منتشر شد. این مورد طیف وسیعی از فرایندهای مورد نیاز برای چابکی کسبوکار را ارائه میدهد.
در سال ۲۰۱۹، Disciplined Agile توسط مؤسسه مدیریت پروژه (PMI) خریداری شد. امروزه Disciplined Agile دومین چارچوب چابک پیشرو در جهان است، البته بعد از Scale Agile Framework (SAFe).
چابک منظم برای چه مواردی استفاده میشود؟
با پیروی از مانیفست چابک، اصول چابک منظم را خواهید یافت. گفتیم که در مجموع دوازده اصل وجود دارد و میتوان آنها را در مورد عادات کاری تیم به کار برد:
افزایش موفقیت کسب و کار:
چابک منظم به سازمان کمک میکند تا رقابتیتر شود و رضایت مشتری را افزایش دهند. همانطور که چهارمین اصل چابک نشان میدهد: “ذینفعان و توسعه دهندگان باید به طور فعال همکاری کنند تا بتوانند نتایج سازمان مشتریان ما را خوشحال کنند.”
ایجاد روشهای مؤثر برای کار:
اصل دوازدهم چابک میگوید: “تیم به طور مداوم در مورد چگونگی تأثیرگذاری بیشتر فکر میکند، سپس آزمایش کرده و یاد میگیرد و رفتار خود را بر این اساس تنظیم کند”. به بیان ساده، چابک منظم به شما کمک میکند تا بر اساس وضعیت فعلی خود تشخیص دهید چه چیزی برای شما مناسب است. سپس، میتوانید راهکارهای جدیدی را برای موفقیت بیشتر فرایند توسعه نرمافزار معرفی کنید.
بهینهسازی گردش کار:
چابک منظم تصمیمگیری را در سطح سازمانی تشویق میکند و به شما کمک خواهد کرد تا جریان کلی کاری را که در آن مشارکت دارید، بهینه کنید. به طور خاص، بر تجسم گردش کارها برای اطمینان از تحویل سریع پروژه (همانطور که اصل شماره ۱۴ نشان میدهد) تمرکز کرده و همچنین بر تکامل کل سازمان، توجه دارد. نه فقط تیمهای تحت پوشش (طبق اصل ۱۵).
هفت اصل چابک منظم
- مشتریان را خوشحال کنید.
- عالی باشید.
- عملگرا باشید.
- زمینه اهمیت دارد.
- جریان را بهینه کنید.
- انتخاب خوب است.
- آگاهی سازمانی مهم است.
نقشهای مهم در تیم تحویل چابک منظم (DAD)
- سرگروه: رهبر تیم متخصص فرایند چابک است و تیم خود را با تمرکز آنها بر اهداف و رفع موانع مدیریت میکند.
- مالک محصول: مالک محصول دارای چشمانداز محصول، اولویتها و محدوده محصول است.
- صاحب معماری: صاحب معماری تصمیمات معماری را مدیریت میکند و خطرات فنی را کاهش میدهد.
- اعضای تیم: اعضای تیم راهحل را ارائه میدهند.
- ذینفعان: ذینفعان شامل مشتریان و سایر ذینفعان مانند حامیان مالی، مهندسان عملیات، کارکنان پشتیبانی، گروههای پایگاه داده، امور مالی است.
مزایای استفاده از چابک منظم
از محصولات چابک مانند SAFe و اسکرام میتوان برای اجرای برنامههای بزرگ متشکل از تیمهای مختلف استفاده کرد، اما چابک منظم میتواند برای برنامههای بزرگ بسیاری از تیمها و برنامههای کوچک حتی با تنها یک تیم استفاده شود.
چابک منظم از یک استراتژی مبتنی بر هدف و یک روش انعطافپذیر استفاده میکند. این چارچوب به تیم اجازه میدهد تا استراتژی، روشها و چارچوبهای مناسب خود را انتخاب کند. این کار آزادی تعامل بهتر تیم را تضمین میکند.
همچنین، ارتباط چابک انضباطی فقط به یک حوزه محدود نمیشود و چابکی کلی کسبوکار را افزایش میدهد. اگر چابک منظم فقط برای یک تیم مهم است، بهتر است تیم بازاریابی سازمان را برای پیادهسازی این چارچوب در اولویت بگذارید. زیرا که موفقیت تیم بازاریابی به دلیل ارتباط متقابل، به نفع بازاریابی، فروش و خرید خواهد بود.
این چارچوب باعث افزایش رقابتپذیری بازار میشود. از آنجا که لذت مشتری یکی از اصول چابک منظم است، محصول بهتر مشتریان را خوشحال میکند. این امر وفاداری مشتری را تضمین میکند، در نتیجه سازمان شما برای رقبای تجاری غیرقابل دسترستر میشود.
از آنجا که چابک منظم ترکیبی از روشهای مختلف چابک است، از بین هر یک از آنها بهترین عناصر را انتخاب میکند. در واقع، آن را برای پر کردن شکافهای بدون توجه به روش Agile SAFe توسعه داده است.
معایب استفاده از چابک منظم
از آنجا که چابک منظم هیچ دستورالعمل سفت و سختی ندارد، سازمانهای جدید ممکن است با آن کنار بیایند و ممکن است برای سازمانهایی که برای گذار از روش سنتی به روش چابک آماده میشوند، موفقیتآمیز نباشد. از طرفی به دلیل فقدان دستورالعملهای دقیق، سازمانهایی که قصد تغییر چارچوب منظم را دارند، ممکن است مجبور شوند مشاوران حرفهای را انتخاب کنند که بسیار گران است.
چرخههای حیات چابک منظم
ابزار چابک منظم، بر خلاف سایر روشهای چابک مانند اسکرام، یک چرخه حیات واحد را تجویز نمیکند. هر تیمی در موقعیت منحصربهفردی قرار دارد؛ بنابراین ابزار چابک منظم از چرخههای مختلف مربوط به آن گروه پشتیبانی میکند. در این بخش ما نمای کلی هر چرخه حیات چابک منظم را ارائه میدهیم که هر یک به مقاله مفصلتری نیاز دارند. چرخههای حیات چابک منظم عبارتاند از:
چرخه حیات چابک: چرخه حیات پروژهای مبتنی بر اسکرام
شکل زیر نمای مفصلی از چرخه حیات پروژهای مبتنی بر اسکرام را ارائه میدهد که چرخه ساخت اسکرام را گسترش داده است. ما این را چرخه حیات را اساسی/ چابک مینامیم زیرا به احتمال زیاد مشخص است که از کجا شروع خواهید کرد. سناریوهای متداول برای اتخاذ این نسخه از چرخه حیات پروژه شامل مواردی است که شما اسکرام را برای نیازهای خود کافی میدانید یا از RUP (فرایند توسعه نرمافزار) به یک رویکرد چابک منظم در حال گذار هستید.
چرخه حیات ناب: چرخه حیات پروژهای مبتنی بر کانبان
تصویر زیر چیزی را که ما چرخه حیات ناب نامیدهایم نشان میدهد. این چرخه حیات اصول سادهای مانند به حداقل رساندن کار در جریان، حداکثر کردن جریان، جریان مداوم کار (به جای تکرارهای ثابت) و کاهش تنگناها را ترویج میکند. وقتی تیم ظرفیت داشته باشد، کارهای جدید از مجموعه کار خارج میشود.
در حالی که اسکرام استفاده از مجموعهای از “جلسات” را تجویز میکند (مانند جلسه هماهنگی روزانه، جلسات برنامهریزی تکرار (اسپرینت)، گذشته نگرانی که باید در مورد تکرارها (اسپرینتها) انجام شود)، چرخه حیات ناب، این موارد را تجویز نمیکند و در عوض پیشنهاد میکند که در صورت لزوم این جلسات هماهنگ شوند. این امر به درجهای از نظم و انضباط و خودآگاهی نیاز دارد که معمولا در تیمهای جدید و چابک یافت نمیشود؛ بنابراین این چرخه حیات پیشرفته در نظر گرفته میشود. در حالی که یادگیری مفاهیم ناب و سیستم کانبان که از آن استفاده میکند بسیار آسان است، اما تسلط بر اصول جریان ناب و به حداکثر رساندن توان سیستم دشوار است.
تحویل مداوم: چرخه حیات چابک
چرخه حیات چابک در شکل زیر نیز نشان داده شده است. این چرخه حیات یک پیشرفت طبیعی از چرخه حیات چابک است. تیمها معمولا از چرخه حیات چابک به این چرخه تکامل مییابند و اغلب طول دورههای یکهفتهای یا کمتر را اتخاذ میکنند. تفاوت اصلی بین این چرخه حیات و چابک این است که چرخه عمر تحویل مداوم منجر به انتشار قابلیتهای جدیدی در پایان هر تکرار / اسپرینت میشود و نه پس از مجموعهای از تکرارها. در این روش، تیمها به مجموعهای بالغ از شیوههای حول ادغام مداوم و استقرار مستمر و دیگر استراتژیهای انضباطی DevOps نیاز دارند.
تحویل مداوم: چرخه حیات بدون مدیریت ناب
شکل زیر تحویل مداوم چابک منظم در چرخه حیات بدون مدیریت ناب را نشان میدهد. این در اصل یک نسخه سادهتر از چرخه زندگی قبلی است که در آن محصول به طور منظم به تولید یا بازار ارسال میشود. این روش میتواند اغلب به صورت روزانه باشد، اگرچه هفتگی یا ماهانه نیز بسیار رایج است. همانند نسخه چابک چرخه حیات تحویل مداوم، تیمها به مجموعهای بالغ از شیوههای حول ادغام مداوم و استقرار مستمر و دیگر استراتژیهای انضباطی DevOps نیاز دارند.
چرخه حیات اکتشافی (راهاندازی سیستم ناب)
این چرخه حیات توسط تیمهای کوچک دنبال میشود که در موقعیتهای استارتاپی یا تحقیقاتی قرار میگیرند و ذینفعان آنها ایدهای برای یک محصول جدید دارند، اما هنوز نمیدانند که اساسا به چه چیزی نیاز است. در نتیجه آنها باید سریعا آنچه را که بازار میخواهد از طریق یک سری آزمایشهای سریع یاد بگیرند. در واقع این چرخه حیات میتواند جایگزینی برای مرحله شروع سایر چرخههای حیات چابک منظم برای اعتبارسنجی یا استفاده مداوم در طول چرخه حیات باشد.
چرخه حیات برنامه برای تیمی از تیمها
چرخه حیات برنامه چابک منظم نحوه سازماندهی تیمی از تیمها را توضیح میدهد. تیمهای بزرگ که در عمل پیرو روشهای چابک باشند، کمیاب هستند، اما در مواردی اتفاق میافتند. این دقیقا همان وضعیتی است که چارچوبهای مقیاسبندی مانند SAFe ،LeSS و Nexus را به میان میآورد.
نتیجه سخن
چابک منظم برای تیمهای چابک باتجربه بسیار مناسب خواهد بود، اما برای افرادی که به تازگی وارد چارچوب مدیریت چابک شدهاند، ممکن است تا حدودی گران باشد. همانطور که در متن اشاره کردیم، چابک منظم در کنار چارچوب چابک، اسکرام، برنامهنویسی eXtreme یا کانبان، به دلایل خوبی مورد بحث قرار گرفته است. شما با بهترین عناصر هر کدام از این روشها، در داخل چابک منظم خود کار خواهید کرد. البته رسیدن برخی از تیمها برای ماهیت ترکیبی چابک منظم دشوار است و برای تیمهایی که به تازگی با شیوههای چابک کار میکنند، توصیه نمیشود که بلافاصله وارد چابک منظم شوند. با این حال، اگر مدتی است که با چابک کار میکنید، این روش میتواند گام بعدی برای شما باشد.