


بهبود مستمر در کانبان یا کانبان عاشقانه! + نسخه صوتی
15 فروردین 1399


کانبان در هنگام کرونا + نسخه صوتی
31 فروردین 1399مقدمه مترجم
در حین بکارگیری روش کانبان، و پیروری از اصل «محدود کردن کار در جریان»، به احتمال زیاد با صحنه تشکیل شدن صف/صفها روبهرو شدهاید. هرچند این احتمال وجود دارد که صفها توجهتان را جلب نکرده باشند! اما در هر صورت تشکیل صف به طور ناخودآگاه اتفاق میافتد. واکنش شما در برابر آن چیست؟ تابهحال تصور کردهایذ که میتوانند پیامدهای منفی به همراه داشته باشند؟
پاول دولمن-دارال (Paul Dolman-Darrall) در این مقاله با مثالهایی کاملا کاربردی و روزمره شرح داده است که چرا صف، دشمن جریان محسوب میشود. او سعی کرده است زنگ خطری را به صدا درآورد تا توجه ما را به منشا برخی مشکلات در توسعه نرمافزار چابک جلب کند. شاید با خواندن این مقاله، از این پس حس متفاوتی نسبت به تمام صفهای اطرافتان داشته باشید.
برای جلوگیری از طولانی شدن متن مقاله در دو بخش در دسترس قرار میگیرد. لطفا از طریق بخش «دیدگاه» ما را از نقطه نظرات ارزشمند خود مطلع فرمایید.
صف؛ دشمن حقیقی جریان
هنگامی که یک پروژه با تاخیر مواجه میشود، به ندرت به دلیل مدت زمانی است که کار واقعی به طول انجامیده است. بیشتر اوقات به مدت زمانی که وظیفههای ما بهطور بیکار در صف نشستهاند، مربوط است. و با این وجود دفاتر مدیریت پروژه (Project Management Office) تمایل دارند بر زمان فعالیت تمرکز کنند، و نه زمان صف. تنها صفی که اغلب دپارتمانهای فناوری اطلاعات میسنجند بکلاگ (Backlog) است، اما صدها نوع دیگر وجود دارند. این مقاله بررسی میکند که چرا باید آنها را ردیابی کنیم و هزینه آنها برای ما چقدر است.
چرا اینقدر طول میکشد؟
شناسایی دشمن حقیقی جریان
هر چقدر به کتری نگاه کنید، جوش نمیآید. (اگر اقدام نکنی و به انتظار این باشی که چیزها خودبهخود انجام شوند مایوس خواهی شد).
اگر مشتاق یک فنجان چای باشیم، از اینکه چقدر طول میکشد تا کتری به جوش بیاید احساس ناراحتی میکنیم. اما جوشاندن مقداری آب کمترین فعالیتی است که میتوانید برای سرعت بخشیدن انجام دهید. این فقط استیصال شما برای چای است- نشانه توجه مشتاقانه شما به کتری- که باعث میشود آهسته به نظر برسد.
بیایید فرض کنیم نیم ساعت پیش به نوشیدن یک فنجان چای فکر میکردید. اگر هنوز آن را ندارید، بعید است موضوع درست کار نکردن کتری باشد. احتمال بیشتری دارد که چیزهای دیگری به میان آمده باشند. شاید تلفن زنگ خورده باشد. شاید لازم است که شما و شریکتان بگومگویی طولانی در مورد اینکه نوبت چه کسی بوده است تا چای درست کند داشته باشید. شاید قبل از آنکه بتوانید کتری را از آب پر کنید باید با تلی از ظرفهای کثیف گلاویز میشدید! این فعالیتهای بی ارزشِ اضافه شده، دلیل حقیقی تاخیر بین خواستن یک فنجان چای و داشتن آن هستند. در تمام مدت، وظیفه «آب جوش برای چای» اساسا در صفی پشت سایر وظیفهها نشسته است.
این یک ضربالمثل و موقعیتی است که باید برای اغلب تیمهای توسعه نرمافزار یک زنگ خطر باشد– هرچند که نگرانکننده است، ولی اینچنین نیست. دلیلش این استکه ما در مورد صفها به حدی نابینا هستیم که حتی آنها را در نظر نمیگیریم. در وهله اول به جای اینکه بپرسیم چرا قرار دادن کتری زمان زیادی از ما گرفته است، با عصبانیت به کتری خیره میشویم، از آن میخواهیم بهجوش بیاید و غرولند میکنیم که چقدر طول میکشد.
صفها همه جا هستند
سراسر زندگی کاری ما پر از صف شده است. از آنجا که بسیار پرمشغله هستیم، عجیب است که متوجه شویم در طول کل یک پروژه، کار واقعی خیلی کوتاه است. یک پروژه بیشتر زمان خود را در مجموعهای از صفها سپری میکند. صفها از تاخیرهای بزرگ و قابل ملاحظه (انتظار برای اختصاص یک تیم به پروژه) تا موارد کوچک و اغلب غیرقابل ردیابی (نامه الکترونیکی درخواست دریافت اطلاعات در صندوق ورودی یکی از همکاران بی پاسخ مانده است) متغیرند.
چرا آنها را نمیبینیم؟
ما تمایل داریم به صفهای قابل مشاهده خیلی خوب واکنش نشان دهیم. میتوانیم از آنها دوری کنیم (صف طولانی در بانک، بعدا برمیگردم)، میتوانیم از آنها عصبانی شویم (به مدیر شکایت کرده و تهدید میکنید حسابتان را به جایی دیگر منتقل میکنید)، و میتوانیم آنها را مدیریت کنیم (در تلاش برای کاهش صفها در بانک، در ماشینهای پرداخت خودکار سرمایهگذاری میکنید). در تولید، جایی که صفها تودههای انبوهی از موجودی بر کف کارخانه هستند و بنابراین در ترازنامه به عنوان دارایی غیرقابل تحقق وجود دارند، مدیریت تلاش زیادی را برای کاهش آنها صرف میکند.
اما موجودی که در توسعه نرمافزار به صف میشود غیرقابلمشاهده است. اغلب کار ما از اطلاعات ساخته شده است: ایدهها، طراحی، و خطهای کدنویسی. با این حال اثر آن برای ما دقیقا به همان اندازهای است که برای تولید کننده است. هر چه بیشتر کار نیمه تمام آنجا قرار گیرد همانند توده غبار، خطر آنکه ارزش بهطور کلی ناپدید شود بیشتر میشود. فرصت میتواند بگذرد، مشتری ممکن است منصرف شود، فناوری یا محیط ممکن است تغییر کند و در ادامه هزینه سرمایهگذاریشده بهطور جبرانناپذیری از دست میرود، مدت زمانهای سرمایهگذاری شده تا به امروز، هدر میرود.
از آنجا که صفهای ما غیر قابل مشاهدهاند، نادیده گرفتن آنها را آسان میپنداریم. اگر تعداد نیازمندیها (Requirements) در یک پروژه را دو برابر کنیم، هیچ زنگ خطری به صدا درنمیآید. ممکن است توسعهدهندهها در دپارتمان کاملا با فشارعصبی بیشتری به نظر برسند، اما هیچ راه واقعی برای دانستن ماهیت تغییری که به کار آنها اعمال شده است یا اینکه چقدر سریع آن را کامل کردهاند وجود ندارد. اکنون فرض کنید تعداد توسعهدهندههای پروژه را دو برابر میکنیم. همه متوجه آن میشوند! نه تنها درگیری ناگهانی برای (افزودن) فضای میز وجود دارد، بلکه مدیران در تلاش برای یافتن بودجه اضافی برای پرداخت دستمزد آنها در جلسات بحرانی خواهند بود.
صفها تاثیر زیادی بر زمان چرخه ما دارند
در سیستمی که اصلا صفی وجود نداشته باشد، زمان چرخه* (Cycle Time) معادل مجموع کل فعالیتها خواهد بود. این بدان معناست که در طرح پروژه هفته، یا حتی یک روز را برای نقاط تصمیمگیری** (Decision Gates) در نظر نمیگیرند و به دو ساعتی که واقعا بحث شده بسنده میکنند. ترسیم چشمانداز در مورد یک ایده برای توسعه محصول (شاید یک رابط کاربری جدید و جسورانه) چهار هفته طول نمیکشد و فقط پنج روز برای نمونهسازی (Prototyping) طرحهای بالقوه صرف میشود (چهار تیم نمونهسازی همزمان کار میکنند) بهعلاوهی زمان واقعی که برای آمادهسازی و پردازش نتایج صرف میشود؛ احتمالا یک روز اضافه.
پروژهای که بدون صف اجرا شود زمان بسیار کوتاهی طول میکشد. البته، این نیز بسیار پرهزینه است. برای نداشتن صف، باید افرادتان را از سایر کارها آزاد نگه دارید: آزمونگر باید آماده به کار باشد، آماده برای پریدن به هرجایی که لازم باشد؛ به مشتریان ثابتی نیاز دارید که هر زمان بازخورد خواستید برای پاسخ دادن به سوالاتی در مورد آخرین ایدهتان آماده باشند؛ هرجا که نیاز به تایید مدیر عامل برای کاری داشتید او باید خواهان پاسخ فوری به تماس شما باشد.
اگر سریعترین زمان چرخه به معنی نبودن صف باشد، بنابراین صفهای طولانی معنی عکس میدهد: صف طولانیتر، زمان چرخه کندتر. ما این را درک میکنیم- در فروشگاههای زنجیرهای به دنبال صفهای کوتاه هستیم زیرا انتظار داریم که خدمات سریعتر ارائه شوند. کار در صف هیچ فعالیت موثری ندارد، و هر روز در صف یک روز اضافه است که به زمان کل چرخه اضافه میشود.
بهطور خلاصه، صفها تاثیر اقتصادی مستقیمی بر روی کسبوکار دارند. آنها موجودی را افزایش داده و پروژههای ارزشمند را متوقف میکنند. ریسک شکست را افزایش میدهند، بازخورد را به تاخیر میاندازند، و انگیزه و کیفیت را تحت تاثیر قرار میدهند. با این وجود، به ندرت مورد پیگیری یا هدف قرار میگیرند. شرکتی که هر ساعت اضافه کاری را با دقت محاسبه میکند به احتمال زیاد نسبت به هزینه تاخیر پروژه ناشی از صفهای طولانی بهطور جاهلانهای ناآگاه است.
* زمان چرخه: زمانی که بهطور میانگین برای تحویل یک مجموعه منفرد از نیازمندیها طول میکشد.
**نقاط تصمیمگیری: مطابق با راهنمای PMD Pro Guide ، نقاط تصمیم گیری شامل نقاط خاصی در پروژه است که برای ادامه مراحل بعدی پروژه، اصلاح محدوده، زمانبندی یا بودجه پروژه یا پایان دادن بیدرنگ پروژه نیاز به تصمیمگیری است.
بخش دوم این مقاله را میتوانید در پست بعدی مطالعه کنید.
مترجم: مهدیه قدسینژاد
ویراستار: علی مفخر
منبع: https://www.infoq.com/articles/queues-enemy-of-flow



