محدودیت های WIP چیست؟
WIP مخفف Work In Progress است که مفهومی از میزان کاری که برای رسیدن به هدفی شروع شده اما هنوز تکمیل نشده است را ارائه می دهد. با در نظر گرفتن این تعریف، محدودیت های WIP تعیین کننده حداکثر مقدار کاری است که می تواند در هر وضعیت گردش کار وجود داشته باشد. با محدود کردن مقدار کار در حال انجام (WIP) و کشف سرعت گیرهای پیشرفت ، به کاهش ناکارآمدی در گردش کار اعضای تیم کمک می شود. یک مثال بسیار ساده برای درک محدودیت WIP این است که اگر دو برنامهنویس در یک تیم وجود داشته باشد و تیم یک محدودیت WIP را برای هر توسعهدهنده تعیین کرده باشد، تعداد کل کارهای در حال پیشرفت 2 خواهد بود.
چه کسی محدودیت های WIP را تعیین می کند؟
محدودیت های WIP قبل از شروع پروژه توسط تیم توسعه تعیین می شود و توسط تسهیل کننده تیم (Scrum Master) اجرا می شود. به عنوان مثال. یک تیم پس از تقسیم وظایف بین خود شروع به کار می کند. هنگامی که آنها به محدودیت های WIP برای یک کار خاص می رسند، تیم از ادامه کار (برای کارهای بعدی) دست می کشد و سعی می کند با همکاری یکدیگر چالش ها را حل کند. این نشان می دهد که کل تیم در قبال پروژه و تولید یک محصول با کیفیت بالا پاسخگو هستند.
چرا محدودیت های WIP مهم هستند؟
محدودیت های WIP فرهنگ "Done" را تشویق می کند و سرعت را بهبود میبخشد و با تمرکز بر مجموعه کوچکتری از وظایف، میزان کار تقریباً انجام شده را کاهش میدهد (این مفهوم در انجام کار معنایی ندارد یا کاری انجام شده یا انجام نشده ، اگر خروجی کارشونده داریم انجام شده و اگر حتی به دلیل خیلی ساده و کم ، کار شونده بودن خروجی تحت شعاع قرار میگیرد مفهوم انجام شده را meet نمیکند.) محدودیت های WIP به وضوح به تنگناها اشاره می کنند. در تیم ها مجموعه ای از مسائل مسدودکننده برای درک، اجرا و حل، همه موانع پروژه را ایجاد می کنند. پس از رفع گلوگاه ها یا خطاها، تیم ها می توانند دوباره جریان کار را از سر بگیرند و اینکار تضمین می کند که مشتری در نهایت محصول با کیفیتی را دریافت می کند و محدودیت های WIP را به ابزاری ارزشمند تبدیل می کند. در طول توسعه نرم افزار، کار روی دو موضوع به طور همزمان منجر به تغییر زمینه بین دو وظیفه مختلف یا توزیع آن وظایف بین اعضای تیم می شود. این نه تنها زمان بیشتری می برد، بلکه تمرکز را نیز کاهش می دهد. در اینجا، محدودیت های WIP به حفظ یک جریان ثابت کمک می کند.
محدودیتهای WIP به محدود کردن تعداد کارهایی که میتوان همزمان انجام داد کمک میکند و اعضای تیم را از انتخاب کار جدید تا پایان کار فعلی محدود میکند. در صورت وجود هرگونه مانعی، محدودیتهای WIP به تیمها کمک میکند تا نگاهی بیاندازند به این که چرا بخش خاصی از کار به جلو حرکت نکرده است. تیم می تواند به قسمتی از کار که در Inprogress مانده حساس شده و علت آن بررسی کند این موضوع میتواند به یکی از دلایل زیر باشد:
- ممکن است کار خیلی بزرگ باشد
- این کار ممکن است به کمک خارجی نیاز داشته باشد
- ممکن است الزامات مشخص نباشد
- ممکن است به منابع بیشتری نیاز باشد.
همچنین، محدودیت های WIP به قسمت های over load اشاره می کند. این محدودیتها از تیم حمایت میکند که به جای تمرکز بر حوزه خاصی که در آن کار میکنند، به ناکارآمدیها در کل فرآیند نگاه کنند.
محدودیت های WIP در اسکرام چگونه استفاده می شود؟
به طور معمول، محدودیت های WIP با Kanban مرتبط هستند و می توانند در Scrum نیز اعمال شوند. در اسکرام، Sprint Backlog، محدودیت های WIP توسط اعضای تیم بر اساس سرعت یا ظرفیت آنها را تعیین می شود. تیم های اسکرام می توانند مفاهیم کانبان را به اسپرینت معرفی کنند و این ترکیبی اسکرامبان نام دارد. در این حالت، محدودیت های WIP یا انواع وظایف برای هر یک از اعضای تیم تعیین می شود. نحوه کار WIP Limits «بهبود مستمر» یکی از اصول محوری در Agile است. هنگامی که یک تیم تازه با Agile آشنا میشود، در ابتدای هر پروژه، تعیین حد WIP مناسب می تواند مشکل باشد. اگر محدودیت WIP خیلی سختگیرانه باشد، اعضای تیم ممکن است خسته و ناامید و دلسرد شوند. از سوی دیگر، اگر محدودیت بیش از حد بزرگ باشد، اعضای تیم ممکن است مجبور شوند روی موارد زیادی به طور همزمان کار کنند، که در وهله اول هدف استفاده از محدودیت WIP را خراب می کند.
برای شروع، تیم باید مرزهایی را انتخاب کند که با آن احساس راحتی میکند و بتواند در یک بازه زمانی معین روی دنبال کردن آن تمرکز کند. سپس تیم میتواند بر برگزاری یک جلسه Retrospective تمرکز کند تا درباره اینکه آیا رویکرد اولیهشان موفقیتآمیز بوده است یا نه و آیا باید به محدودیتهایی که تعیین کردهاند بازگردند یا خیر، صحبت کنند. با بالغ شدن تیم، محدودیت های WIP کوچکتر می شود. حد ایده آل WIP برای تیم ها باید 1 باشد، اما گاهی اوقات ممکن است واقعی نباشد. بنابراین، تیم باید در عملکرد مناسب رفتار کند و راه حلی بیابد که برای کل تیم موثر باشد.
اصطلاح "WIP Limit" به معنای محدود کردن وظایف در حال انجام است. این بدان معناست که در حین توسعه، اعضای تیم می توانند محدودیتی برای تعداد موارد در این وضعیت ذکر کنند. بنابراین، اگر محدودیت WIP در ستون «Inprogress» دو باشد، به این معنی است که اعضای تیم نمیتوانند به موارد دیگر ادامه دهند، مگر اینکه حداقل یکی از موارد موجود به ستون بعدی منتقل شود. این را می توان از نمودار زیر به خوبی درک کرد.
در مراحل اولیه، ممکن است برای هر عضو یا نقش، دو وظیفه تعیین کنیم . بنابراین اگر دو توسعهدهنده در تیم دارید، محدودیت WIP برای ستون Develop در یک برد چهار خواهد بود. صرف نظر از تعداد (محدودی) که تیم تصمیم میگیرد، تیم همیشه باید ستونها را مجدداً بررسی کند و هر راهی را برای بهبود پیشرفت تیم و حفظ یک گردش کار ثابت بررسی کند.
ترجمه الهه ابراهیمی