مقایسه متدولوژی اسکرام و کانبان
در این بخش قصد داریم به مقایسه متدولوژی های اسکرام و کانبان بپردازیم. با توجه به اینکه در مقاله اسکرام (Scrum) چیست؟، توضیحات مفصل درباره هر یک از این متدولوژی ها ارائه شده است، در این پست تنها به تفاوتهای این دو روش اشاره میکنیم.
اسکرام و کانبان هر دو ابزارهای فرایندمحور هستند یعنی با مشخص کردن روش انجام کار، کمک میکنند کارآمدتر عمل نمایید. در این مطلب، ما برای شناخت و درک بهتر از عملکرد هریک از این متدولوژی ها، بدون آنکه قضاوت کنیم کدام روش بهتر است، به مقایسه آنها میپردازیم.

اسکرام تجویزی تر از کانبان است
در روش اسکرام، شما با محدودیتهای بیشتری روبرو میشوید و لازم است از قواعد بیشتری پیروی نمایید. بر این اساس، در اصطلاح اسکرام یک روش تجویزی است. برای مثال در متدولوژی اسکرام نقشها و زمانبندی اجرای کارها ثابت و از پیش تعیین شده است.
در مقابل، متدولوژی کانبان را اصطلاحاً روش تطبیقی میدانند. چون قوانین و قواعد کمتری لازم است رعایت شود. برای مثال کانبان نسبت به زمانبندی منعطف است و نقش از پیش تعیین شده ندارد.
محدودیت تعداد کارهای در جریان (WIP) در هر مرحله از فرایند
در روش کانبان، تعداد کارهای در جریان در هر مرحله از فرآیند محدود است. کارها یک به یک و پس از پایان کار قبلی و آزاد شدن ظرفیت تیم اجرایی وارد فرایند میشوند. در صورتیکه در متدولوژی اسکرام، محدودیت روی تعداد کارها وجود ندارد و کل کارهای تعریف شده در اسپرینت به صورت دستهای وارد پروسه تولید میشوند و حجم کارهای در جریان از طریق زمان اجرای هر اسپرینت کنترل میشود.
ایجاد تغییرات در اسپرینت در حال اجرا
در روش اسکرام، در صورتیکه نیاز به تغییری در ویژگیهای محصول باشد، تغییرات در اسپرینت در حال اجرا ایجاد نمیشود. در این روش، نیاز به تغییر در بک لاگ محصول (Product Backlog) ثبت میشود تا در اسپرینت های آتی اعمال شود. در مقایسه با متدولوژی اسکرام،کانبان نسبت به تغییر برنامه منعطف است و با در نظر داشتن اولویت کارها، آنها را اجرا میکند. به عبارتی، کار جدید، در صورتیکه اولویت بالایی داشته باشد و ظرفیت کانبان خالی باشد، اجرا خواهد شد؛ در غیر اینصورت، ورود کار جدید وابسته به خروج کار دیگر خواهد بود.
بازههای زمانی انجام کارها
طول بازههای زمانی تکرار شونده -اسپرینت- در اسکرام، بر خلاف کانبان ثابت است.
خلاصه مقایسه دو متدولوژی اسکرام و کانبان در جدول زیر آمده است:
اسکرام (Scrum) | کانبان (Kanban) |
---|---|
بازههای زمانی انجام کارها -اسپرینت- ثابت و تکرار شونده است. | بازه زمانی انجام کارها متغیر/ اختیاری است. |
در هر اسپرینت کل کارها وارد پروسه تولید میشوند. | کارها یک به یک وارد پروسه تولید میشود. |
لازم است تیمهای فراوظیفهای تشکیل گردد. | لازم است تیمهای فراوظیفهای تشکیل گردد. |
تعداد کارهای در حال اجرا به صورت غیرمستقیم محدود شده است. | تعداد کارهای در حال اجرا به صورت مستقیم محدود شده است. |
سه نقش مشخص وجود دارد: صاحب محصول، تیم توسعه و مدیر اسکرام | هیچ نقش مشخصی تعیین نشده است. |
امکان افزودن کار جدید به اسپرینت در حال اجرا وجود ندارد. | در صورت وجود ظرفیت خالی، در هر زمان امکان افزودن کار وجود دارد. |
کارها قبل از قرارگیری در اسپرینت باید به اندازه معینی شکسته شوند. | مقدار مشخصی برای اندازه واحدهای کاری وجود ندارد. |
در ادامه به مقایسه متدولوژی های اسکرام و کانبان به صورت شماتیک و با ذکر مثال میپردازیم.
مقایسه تیم در متدولوژی های اسکرام و کانبان
اسکرام تیمهای فراوظیفهای -خود سازمانده- را تجویز میکند. درصورتیکه در متدولوژی کانبان، فراوظیفهای بودن تیم اجباری نیست.
در مثال ۱: تابلو دقیقا مانند متدولوژی اسکرام، توسط یک تیم فراوظیفهای مدیریت میشود.
در مثال ۲: تابلو توسط مالک محصول -ستون ۱- ، تیم توسعه -ستون ۲ و ۳- و تیم تحویل مدیریت میشود.
مقایسه کارهای در جریان (WIP: Work In Progress)
در متدولوژی اسکرام، کارهای در جریان، در هر مرحله از اسپرینت کنترل میشوند. پس از تشکیل Product Backlog، تیم تولید و توسعه جلساتی را با حضور رهبر اسکرام تشکیل میدهند و کل کارهای اسپرینت را مشخص مینمایند. کارهایی که قرار است در یک اسپرینت انجام شوند قابل تغییر نیستند. درصورتیکه مالک محصول تقاضای تغییر برخی ویژگیها را داشته باشد؛ در اسپرینت در حال اجرا هیچگونه تغییری ایجاد نخواهد شد و تغییرات در Product Backlog اعمال میشود و سپس در اسپرینت های بعدی قابل ورود و اجرا است.
در متدولوژی کانبان تعداد کارهای در جریان (WIP) در هر مرحله از فرایند محدود است. درصورتیکه مالک محصول تقاضای اعمال تغییر در ویژگیهای محصول داشته باشد، تغییرات در Product Backlog اعمال میشود و چنانچه ظرفیت خالی جهت ورود به کار در جریان وجود داشته باشد به آن اضافه خواهد شد.
مقایسه روال آیتمهای ورودی
در پست قبل، در خصوص آیتمهای ورودی توضیح داده شد. در مثال زیر میخواهیم این تفاوت را با جزئیات توضیح دهیم. آیتم به هر واحد کاری گفته میشود که مقرر گردیده است در یک اسپرینت یا هر مرحله از یک جریان کاری اجرا گردد.
- اسکرام با اعمال تغییر آیتم در داخل اسپرینت مخالف است.
- کانبان از اصل ورود یک آیتم به ازای خروج آیتم دیگر پیروی می کند.
فرض کنید مالک محصول درخواست نموده است آیتم E را به Product Backlog اضافه نماییم.
یک تیم اسکرام در چنین موقعیتی می گوید: ” متاسفیم، ما موظفیم موارد A+B+C+D را در این اسپرینت انجام دهیم. شما مختار هستید آیتم E را به عنوان یک اولویت به Product Backlog اضافه نمایید تا در اسپرینت بعدی انجام شود.”
یک تیم کانبان در چنین موقعیتی میگوید: “شما مختار هستید آیتم E را به ستون To Do اضافه کنید. ولی محدودیت ما برای این ستون ۲ است. بنابراین شما باید C یا D را از این ستون حذف نمایید. ما در حال حاضر A و B را کار میکنیم ولی به محض اینکه ظرفیت لازم را پیدا کردیم با اولویتترین آیتم را به ستون To-Do منتقل خواهیم کرد.
ویژگیها | اسکرام (Scrum) | کانبان (Kanban) |
---|---|---|
Roles & Responsibilities | نقشها کاملا مشخص و تفکیک شدهاست، هر نقش وظایف و مسئولیتهایی دارد، در عین حال روحیه کار تیمی و مشارکتی وجود دارد. | الزاما نقش تعیین نمیگردد و در صورت تعیین نقش، صاحب نقش آنچه در حیطهی وظایف بوده انجام داده و کار را به مرحلهی بعد انتقال میدهد. |
Deliverable | خروجیها وابسته به هر اسپرینت است زیرا خروجیها به اسپرینتها تبدیل میشوند. | ورودیها تعیینکنندهی خروجیها میباشند. |
Work assignment & Prioritization | کارهای ورودی به یک اسپرینت و اولویتهای تعیین شده از ابتدای اسپرینت، در حین اسپرینت قابل تغییر نیست. در صورت تغییر اولویتها اسپرینت در حال اجرا اجازه ورود کار جدید یا تغییر اولویت نمیدهد. | در صورت تغییر اولویتها و نیاز به ورود کار جدید به برد کانبان، این کار در صورتی که فضای خالی جهت ورود به برد وجود داشتهباشد به لیست کارهای در اولویت انجام اضافه میگردد. |
Modifications | تغییرات فقط بعد از کامل شدن اسپرینت میتواند اعمال شود. | تغییرات میتواند هر زمانی در طول اجرای کارها در برد کانبان اعمال شود. |
Measurement Of Productivity | توسط سرعت اجرای هر اسپرینت | توسط Cycle time |
Best Application | مناسب برای پروژههایی که اولویتها در طول اجرای هر اسپرینت ثابت است. | مناسب برای پروژههایی با اولویتهای متغیر در طول اجرای پروژه |
نقاط قوت و ضعف متدولوژی اسکرام و کانبان
نقاط قوت اسکرام:
- ساختار واضح و معین: اسکرام با تعیین نقشها، زمانبندیها و فرآیندهای مشخص، به تیمها کمک میکند تا کارها را به صورت سیستماتیک انجام دهند.
- تمرکز بر تحویلهای کوچک و مستمر: با تقسیم پروژه به اسپرینتهای کوتاه مدت، امکان تحویل مستمر و افزایش بازخورد از مشتری فراهم میشود.
- مناسب برای پروژههای پیچیده و زمانبر: اسکرام میتواند به تیمها کمک کند تا در پروژههای بزرگ با وظایف پیچیده، تمرکز خود را حفظ کنند و پروژه را به قسمتهای قابل مدیریت تقسیم کنند.
- بهبود مستمر: جلسات Retrospective به تیمها این امکان را میدهد تا در هر اسپرینت بهبودهایی در فرآیندهای خود ایجاد کنند.
نقاط ضعف اسکرام:
- نیاز به تیمهای متعهد و هماهنگ: اسکرام نیازمند همکاری و هماهنگی بسیار دقیق بین اعضای تیم است. اگر تیم نتواند به خوبی همکاری کند، فرآیند دچار اختلال میشود.
- محدودیت در تغییرات حین اسپرینت: به دلیل ساختار دقیق اسکرام، تغییرات در وسط اسپرینتها معمولاً غیرقابل قبول است، زیرا این موضوع میتواند مشکلاتی برای پروژههایی با نیاز به تغییرات سریع ایجاد کند
- نیاز به آموزش و تخصص: اسکرام نیازمند افراد با تجربه و آگاه به فرآیندهای خاص خود است که ممکن است نیاز به آموزش و زمان بیشتری برای پیادهسازی داشته باشد.
- خطر “بزرگ شدن” پروژهها: گاهی ممکن است تیمها در تلاش برای تکمیل تمام کارها در یک اسپرینت، پروژه را بزرگتر از آنچه که باید، در نظر بگیرند.
نقاط قوت کانبان:
- انعطافپذیری بالا: کانبان به تیمها این امکان را میدهد که به راحتی تغییرات را وارد فرآیند کنند و اولویتهای جدید را سریعاً وارد سیستم کنند.
- مناسب برای پروژههای با اولویتهای متغیر: در پروژههایی که اولویتها مدام تغییر میکنند، کانبان انعطافپذیری بیشتری فراهم میکند.
- تمرکز بر بهبود مستمر: با استفاده از معیارهای نظیر Cycle Time و WIP، کانبان به تیمها کمک میکند تا فرآیندها را به طور پیوسته بهبود دهند.
- حذف محدودیتها و تسهیل فرایندها: با اینکه محدودیتهایی مثل WIP وجود دارد، اما عدم الزام به زمانبندیهای دقیق باعث میشود که تیمها بیشتر بر کیفیت و بهرهوری متمرکز شوند.
نقاط ضعف کانبان:
- عدم وجود چارچوب دقیق: برخلاف اسکرام، کانبان قوانین و ساختار کمی دارد که ممکن است برای تیمها گاهی باعث سردرگمی و کمبود شفافیت در فرآیند شود.
- نیاز به نظارت مستمر: به دلیل اینکه در هر زمان میتوان کار جدیدی اضافه کرد، ممکن است نظارت دقیق بر فرآیندها و اولویتها از دست برود.
- چالش در مقیاسهای بزرگ: در پروژههای بزرگ، عدم وجود زمانبندی مشخص و نقشه راه میتواند مشکلاتی ایجاد کند و ممکن است دشوار باشد که کانبان را به طور مؤثر در مقیاسهای وسیع پیادهسازی کرد.
- محدودیت در برنامهریزی بلندمدت: در کانبان، به دلیل نبود اسپرینتهای مشخص، ممکن است برنامهریزی بلندمدت دشوارتر باشد.