روش کانبان؛ یک ابزار چابک برای مدیریت پروژه

کانبان چیست؟اگرچه کانبان امروزه در میان تیم‌های نرم‌افزار و DevOps طرفداران زیادی دارد، اما روش کار آن به بیش از 50 سال قبل بازمی‌گردد. در اواخر دهه 1940 تویوتا شروع به بهینه سازی فرآیندهای مهندسی خود بر اساس همان مدلی کرد که فروشگاه ها برای انبار قفسه‌های خود استفاده می کردند. فروشگاه ها برای پاسخگویی به تقاضای مصرف کننده، محصول را در انبار نگهداری می‌کنند، این کار که جریان بین فروشنده و مصرف کننده را بهینه می‌کند. از آنجا که میزان موجودی با الگوهای مصرف مطابقت دارد، فروشنده می‌تواند موجودی را طوری مدیریت کند که همواره در انبار موجود باشد. به این ترتیب در عین این که موجودی اضافه از محصول نگهداری نمی‌شود، تقاضای خریدار هم هیچ وقت بی پاسخ نمی ماند.زمانی که تویوتا از همین سیستم در کارخانه خود استفاده کرد، هدف این بود که سطح موجودی خود را با مصرف مواد اولیه هماهنگ کند. برای برقراری ارتباط بین موجودی، تقاضا و تولید، کارگران یک کارت یا کانبان را بین تیم ها به اشتراک می‌گذاشتند. هنگامی که یک سطل از مواد مورد استفاده در خط تولید خالی می شد، یک کانبان به انبار ارسال می‌شد که در آن مواد مورد نیاز، مقدار دقیق این مواد و غیره شرح داده شده بود. انبار کانبان را برای تامین کننده ارسال می کرد. تامین کننده هم یک سطل از مواد اولیه موردنیاز خط تولید را در صف انتظار نگه می داشت تا به انبار ارسال کند.تکامل فرایند کانبان از دهه ۱۹۴۰ آغاز شده بود، اما در آغاز قرن بیست و یکم، شرکت‌های فعال در صنعت نرم افزار دریافتند که کانبان چگونه می‌تواند شیوه ارائه محصولات و خدمات را در جهت مثبت تغییر دهد. کانبان با تمرکز بیشتر بر کارایی و با بهره‌گیری از پیشرفت‌ها در فناوری محاسبات، قلمرو صنعت خودرو را ترک کرد و جایگاه خود را در سایر بخش‌های تجاری مانند فناوری اطلاعات، توسعه نرم‌افزار، تحقیق و توسعه و غیره پیدا کرد.آنچه ما اکنون به عنوان روش کانبان می شناسیم، در ابتدای سال ۲۰۰۷ پدیدار شد. این روش نتیجه سال ها آزمایش، تجربه و تلاش مشترک چهره‌های برجسته جامعه چابک مانند دیوید اندرسون، دن وکانتی، دارن دیویس، کوری لاداس، دومینیکا دیگراندیس، ریک گاربر و دیگران بود.طبق تعریف کانبان بلاگ، کانبان یک تکنیک برای مدیریت یک پروسه توسعه نرم افزاری با استفاده از روشی با اثربخشی بالاست. زیربنای روش کانبان، سیستم تولید همزمان(just-in-time) کمپانی تویوتا است. هرچند که توسعه نرم افزار یک فعالیت خلاقانه و مبتکرانه اسست و با تولید انبوه اتومبیل تفاوت‌های بنیادی دارد، اما با این حال مکانیزم پایه برای مدیریت خط تولید، می‌تواند بر روی آن پیاده سازی شود. اما روش کانبان چگونه کار می‌کند؟ با ما همراه باشید.اصطلاحات کانبان که باید بدانیدبه نظر می رسد کانبان راه ساده ای برای بهبود فرآیندهای کاری شما باشد، اما این روش در واقع چیزی بیش از تجسم کار شما است. اگر می خواهید از این روش بیشترین بهره را ببرید، باید به جزئیات توجه کنید و با اصطلاحات و مفاهیم پایه کانبان آشنا شوید. در ادامه لیستی از اصطلاحات تخصصی کانبان را ذکر می‌کنیم که برای شروع کار به شما کمک می‌کند.تابلوی کانبان یا Kanban Boardتابلوی کانبان یکی از اجزای کلیدی این روش و جایی است که شما تمام کارها را به تصویر می‌کشید. برد کانبان باید به حداقل ۳ ستون (یا بیشتر) تقسیم شود. هر ستون نماینده مرحله ای که است کار در آن قرار دارد. تابلوی کانبان می‌تواند فیزیکی باشد و یا به صورت دیجیتالی در نرم افزارهای مخصوص این کار ایجاد شده باشد.کارت کانبان یا Kanban Cardsکارت‌های کانبان نشان دهنده کارها و وظایف مختلف است که به مرور زمان در تابلوی کانبان حرکت می‌کنند و به ستون بعدی منتقل می‌شوند. کارت ها حاوی جزئیات مهمی مانند شرح، مهلت، اندازه، مسئول و غیره هستند. کارت کانبان هم مانند برد، ممکن است فیزیکی یا دیجیتالی باشد.ستون‌های کانبان یا Kanban Boardsبرد کانبان را به صورت عمودی تقسیم می‌کنند و هر یک از آنها مرحله متفاوتی از گردش کار را نشان می‌دهد. هر برد کانبان دارای ۳ ستون پیش فرض است: کارهایی که باید انجام شوند، کارهای در حال انجام و کارهای انجام شده که نشان دهنده مراحل مختلف فرآیند است. ممکن است ستون چهارمی با نام بازبینی که به تابلوی کانبان اضافه شود.خطوط جداکننده یا Swimlanesخطوط افقی تابلوی کانبان را به نوارهای افقی تقسیم می‌کند. افراد درگیر در یک پروژه کانبان، از خطوط جداکننده برای جداسازی بصری انواع مختلف کار روی یک تخته و سازماندهی وظایف همگن با هم استفاده می‌کنند.زمان چرخه یا Cycle Timeزمان چرخه زمانی شروع می‌شود که یک کار جدید وارد مرحله در حال انجام گردش کار می‌شود و یک فرد یا تیم، کار کردن بر روی آن کار را شروع می‌کند.زمان سررسید یا Lead Timeزمان سررسید از لحظه ای که یک کار جدید در ستون اول برد کانبان قرار می‌گیرد، شروع می‌شود و با وارد شدن کار به ستون آخر و خروج آن از سیستم، به پایان می رسد.توان عملیاتی یا Throughputتوان عملیاتی با تعداد موارد کاری که در یک دوره معین از یک سیستم یا فرآیند عبور می‌کنند، سنجیده می‌شود. توان عملیاتی یک شاخص کلیدی است که نشان می‌دهد تیم شما در طول زمان چقدر کارآمد است.کارهای در حال انجام یا Work in Progress (WIP)این شاخص نشان دهنده مقدار کاری است که در حال حاضر روی آن کار می‌کنید و هنوز تمام نشده است.محدودیت کردن کارهای در حال انجام یا WIP limitsمحدود کردن کار در حال انجام به معنای محدود کردن تعداد وظایفی است که تیم شما می‌تواند به طور همزمان روی آنها کار کند تا از بارگذاری بیش از حد یا تاخیر در تحویل پروژه جلوگیری شود.روش کانبان چطور کار می‌کند؟روش کار کانبان را با یک مثال واقعی بررسی می‌کنیم: فرض کنید یک پروژه به شما واگذار شده است. صرف نظر از ماهیت، حجم و زمان در اختیار، اولین گام برای انجام پروژه این است که کارهایی را که باید انجام شوند، تعیین کنید و هر یک از این کارها را به یک فرد یا تیم واگذار کنید. در روش کانبان برای هر پروژه یک برد با چهار ستون در نظر گرفته می‌شود: کارهایی که باید انجام شوند، کارهایی که در حال انجام شدن هستند، کارهایی که در حال بازبینی هستند و کارهایی که انجام شده‌اند.در ابتدا تمام کارهایی که باید انجام شوند، بر روی کاغذهای یادداشت نوشته می‌شوند و در ستون اول قرار می‌گیرند. اگر حین اجرای روش کانبان متوچجه شدید که یکی از کارها از قلم افتاده، می‌توانید آن راغ به لیست اضافه کنید؛ این کار خللی به اجرای کانبان وارد نمی‌کند. در مرحله بعد، هر کار به یک فرد یا تیم واگذار می‌شود .و به ستون کارهای در حال انجام منتقل می‌شود. برای جلوگیری از بی نظمی، می‌توانید برای هر فرد یا تیم، از یک رنگ استفاده کنید. هر فرد یا تیم پس از به پایان رساندن یک کار، کارت مربوط به آن را به ستون بازبینی منتقل می‌کند.فردی که برای نظارت بر پروژه انتخاب شده، پس از تایید کیفیت کار، کارت آن را به ستون انجام شده منتقل می‌کند. انتقال کارت از ستون بازبینی به ستون انجام شده، نشان می‌دهد که کار موردنظر انجام شده و کیفیت آن هم مورد تایید ناظر پروژه قرار گرفته است. در پروژه‌های ساده تر ممکن است مرحله بازبینی حذف شود. استفاده از برد برای روش کانبان، به مدیر پروژه امکان می‌دهد که در هر لحظه از اجرای پروژه، بتواند با نگاه کردن به برد، روند پیشرفت پروژه را ارزیابی کند و در صورت نیاز، با افزایش زمان یا نیروی کار، اطمینان حاصل کند که پروژه در زمان مقرر به پایان می رسد.اسکرام یا کانبان؟ مسئله این است!وقتی روش کانبان را در مقابل مدیریت پروژه چابک قرار دهیم، یادآوری این نکته مهم است که روش کانبان تنها یکی از انواع مدیریت چابک است. این روش یکی از چهارچوب‌های چابک است که برای پیاده سازی توسعه نرم افزار چابک به کار می‌رود.مهم‌ترین تفاوت بین کانبان و اسکرام این است که اولی یک روش است، در حالی که دومی یک چارچوب است. کانبان یک مدل تحویل مستمر ایجاد می‌کند، در حالی که اسکرام کار را در اسپرینت‌ها سازماندهی می‌کند. این که کدام روش را اجرا می‌کنید، به ماهیت فرآیند شما بستگی دارد؛ اما به طور کلی می‌توان گفت که کانبان یک رویکرد مناسب ارائه می‌دهد، در حالی که اسکرام بر قوانین از پیش تعیین شده متکی است. یکی دیگر از مشخصه‌های اصلی تمایز بین این دو، طرز فکر و سیستم‌های اعتقادی بنیانگذار اسکرام و کانبان است.کانبان و اسکرام از لحاظ ساختار تیم اجرایی هم با هم تفاوت بنیادی دارند. در متدولوژی اسکرام، سه نقش اصلی وجود دارد که حتما باید در ساختار تیم تعریف شده باشند: مالک محصول، مدیر اسکرام و تیم توسعه. در مقابل، کانبان در قبال ساختار تیم بسیار انعطاف پذیر است. دو نقش اصلی مدیر درخواست خدمات و مدیر تحویل خدمات در روش کانبان قابل تعریف هستند، اما با این حال تعریف این دو نقش هم به هیچ وجه ضروری نیست و می‌توان کانبان را در هر ساختاری اجرا کرد.موضوع دیگر در تفاوت کانبان و اسکرام، اصول برنامه ریزی است. در اسکرام بازه‌های زمانی مشخصی در نظر گرفته می شود و کارهایی که در این بازه باید انجام شوند، از قبل تعریف می شوند. اما در کانبان برای هر کار، زمان آغاز و پایان تعریف می شود و به محض این که عضو تیم، کار موردنظر را به ستون انجام شده منتقل کند، می‌توان از این ظرفیت آزاد برای شروع کار دیگری استفاده کرد.سیستم کانبان چیزی بیش از چسباندن چند یادداشت روی تابلو است. ساده ترین راه برای درک کانبان این است که فلسفه آن را بپذیرید و آن را در امور روزانه خود به کار ببرید. عمل کردن به اصول کانبان از جمله تجسم گردش کار، تعیین محدودیت‌های WIP، مدیریت جریان، اطمینان از سیاست‌های صریح و بهبود مستمر، باعث می شود روند کار فراتر از تصورات شما بهبود یابد. به یاد داشته باشید که حلقه‌های بازخورد منظم را سازماندهی کنید، و همه این قطعات در کنار هم قدرت واقعی کانبان را آشکار خواهند کرد.