
این مقاله قدم بعدی در سری مطالب ما درباره تخمین است. در پست قبلی بررسی کردیم که چگونه ترکیب "سرعت اجرا" (Velocity) با "عدم قطعیت" میتواند گفتگوها را از اطمینان کاذب دور کند. اکنون یک گام فراتر میرویم.
چون سرعت اجرا به تنهایی پاسخ نیست. تغییر واقعی چیست؟ گذار از مناقشات تخمین به پیشبینی مبتنی بر داده با استفاده از معیارهای جریان کار مانند زمان چرخه (Cycle Time) و حجم خروجی (Throughput) برای تمرکز بر ارزش به جای حدسها.
از تیمها میخواهیم:
۱. امتیاز داستان (Story Point) هر آیتم در لیست کارها (Backlog) را ثبت کنند.
۲. مدت زمان واقعی انجام کار (Cycle Time) را اندازه بگیرند.
۳. این دو را با هم مقایسه کنند.
در ابتدا همه چیز منطقی به نظر میرسد:
یک کار ۲ امتیازی در ۲ روز انجام میشود.
یک کار ۱ امتیازی در ۱ روز تمام میشود.
سپس کسی آن جمله معروف را میگوید: "یک امتیاز داستان مساوی یک روز کار است."
این حس خوبی دارد! مثل این که تخمینها واقعاً کار میکنند. اما...
وقتی ادامه میدهید، میبینید:
یک کار ۱ امتیازی ۶ روز طول میکشد!
یک کار ۵ امتیازی در ۲ روز تمام میشود!
یک کار ۱۳ امتیازی کاملاً منفجر میشود!
الگو میشکند... و اینجا است که جرقهای زده میشود.
این مسئله تخمین بد نیست. این واقعیت کار در فضای پیچیده است:
اتفاقات غیرمنتظره رخ میدهند.
وابستگیهای جدید ظاهر میشوند.
ماهیت کار با یادگیری ما تغییر میکند.
این مخروط عدم قطعیت (Cone of Uncertainty) در عمل است:
هرچه جلوتر میرویم، پیشبینیها نادرستتر میشوند.
هرچه کار بزرگتر باشد، تغییرات بیشتر است.
وقتی تیمها این آزمایش را انجام میدهند، الگوهای جالبی میبینند:
۱. ما در یک حوزه پیچیده کار میکنیم (عدم قطعیت طبیعی است).
۲. برخی کارهای بزرگ سریع تمام میشوند، برخی کارهای کوچک بسیار طول میکشند.
۳. معمولاً کارهای بالای ۵-۸ امتیاز خطرناک و غیرقابل پیشبینی هستند.
۴. این عدد برای هر تیم متفاوت است، اما الگو تکرار میشود.
نتیجه:
هدف، دقتِ تخمین نیست، بلکه درک پیچیدگی است. اندازه کار یک سیگنال است، نه یک قطعیت.
فرقی نمیکند از چه روشی استفاده میکنید:
امتیازهای داستان
سایزهای تیشرت (T-Shirt Sizes)
ساعتکاری
تکنیکهای تخمین فقط ابزاری برای شروع گفتگوی درست هستند:
چه چیزی میسازیم؟
چه مشکلاتی ممکن است پیش بیاید؟
چقدر مطمئن هستیم؟
ریسکها چیست؟
این اصل ماجراست! نه عددها.
وقتی تیمها این الگو را ببینند، دیگر روی امتیازها بحث نمیکنند. بلکه:
۱. کارها را شفاف میکنند (قابل بحث).
۲. به اندازه کافی ارزشمند میسازند (قابل تحویل).
۳. به اندازه کافی کوچک میکنند (قابل انجام در یک اسپرینت).
در این مرحله، تخمین محو میشود، چون کارها آنقدر شفاف و کوچک هستند که دیگر نیازی به بحث طولانی نیست!
به جای جنگیدن با پیچیدگی، آن را اندازه بگیرید:
زمان چرخه (Cycle Time): مدت زمان واقعی انجام کار.
زمان تأخیر (Lead Time): از درخواست تا تحویل.
حجم خروجی (Throughput): تعداد کارهای انجام شده در یک بازه زمانی.
نتایج:
بحثهای کمتر
پیشبینی بهتر
ارزش بیشتر
نه به خاطر تخمین بهتر، بلکه به خاطر کار بهتر!
این چیزی نیست که شما به تیم تحمیل کنید. آزمایش را انجام دهید، دادهها را نشان دهید، و بگذارید تیم خودش نتیجه بگیرد. وقتی خودشان ببینند، تغییر ذهنیت ماندگار میشود.
و تخمین به چیزی تبدیل میشود که همیشه باید باشد:
یک گفتگو، نه یک تعهد!
نویسنده: الکس براون (بریتانیا) | ۱۸ ژوئیه ۲۰۲۵
منبع: Scrum.org
مترجم و تحلیلگر: آرتا مکبری
"وقتی کارها کوچک، شفاف و باارزش باشند، دیگر نیازی به جنگیدن روی امتیازها نیست. تمرکز را بر ارزش واقعی و دادههای عینی بگذارید، نه حدسهای ذهنی!"
مقاله "Story Points vs Reality: What Estimation Really Shows" از Alex Brown در Scrum.org، نگاهی انتقادی به مفهوم تخمینهای سنتی (مثل Story Points) دارد و پیشنهاد میدهد که تیمها به جای تمرکز روی اعداد، به دادههای واقعی (مانند زمان چرخه یا Cycle Time) و مکالمات معنادار توجه کنند. در ادامه، این مقاله را به زبان ساده و کاربردی برای تیم خودتان تحلیل میکنیم:
مقاله با این ایده شروع میشود که Story Points (یا هر روش تخمین دیگر) لزوماً پیشبینی دقیقی از زمان انجام کار نیستند.
تیمها در ابتدا فکر میکنند که مثلاً:
Story Point ۱ برابر است با یک روز کاری.
Story Point ۵ برابر است با پنج روز کاری.
اما در عمل، دادهها نشان میدهند:
یک کار ۱ امتیازی ممکن است ۶ روز طول بکشد!
یک کار ۵ امتیازی ممکن است ۲ روز تمام شود!
یک کار ۱۳ امتیازی ممکن است اصلاً قابل انجام نباشد!
نتیجه:
تخمینها در فضای پیچیده (Complex Domain) دقیق نیستند، چون همیشه چالشهای غیرمنتظره وجود دارد.
۲. آزمایش ساده برای درک این موضوع
مقاله پیشنهاد میکند این آزمایش را انجام دهید:
۱. تخمین اولیه (Story Points) برای هر کار را یادداشت کنید.
۲. زمان واقعی انجام کار (Cycle Time) را اندازه بگیرید.
۳. این دو را مقایسه کنید.
چه اتفاقی میافتد؟
در ابتدا ممکن است برخی تخمینها درست باشند.
اما به مرور، تخمینها و واقعیت از هم فاصله میگیرند، چون:
وابستگیهای غیرمنتظره پیش میآید.
پیچیدگی کارها در حین انجام مشخص میشود.
برخی کارها سادهتر یا سختتر از حد انتظار هستند.
درس اصلی:
"شما نمیتوانید پیچیدگی را با دقتِ تخمین شکست دهید!"
۳. چرا تخمینهای سنتی کارایی ندارند؟
مقاله توضیح میدهد که مشکل از طبیعت پیچیده کارهای نرمافزاری است:
هرچه کار بزرگتر باشد، عدم قطعیت بیشتر است (مفهوم Cone of Uncertainty).
کارهای بالای ۵-۸ امتیاز معمولاً غیرقابل پیشبینی هستند (ممکن است خیلی سریع یا خیلی کند انجام شوند).
راهحل:
به جای بحث روی اعداد، کارها را کوچکتر کنید (Break Down).
کارها باید:
به اندازهای کوچک باشند که در یک اسپرینت انجام شوند.
ارزش مستقل داشته باشند.
قابل بحث و شفاف باشند.
۴. هدف واقعی تخمین: "مکالمه"، نه "عدد"!
مقاله تأکید میکند که اصلِ تخمین، گفتوگوی تیمی است، نه رسیدن به یک عدد خاص.
وقتی از Story Points یا Planning Poker استفاده میکنید، هدف این است که بپرسید:
این کار چیست؟
چه ریسکهایی دارد؟
آیا همه آن را درک کردهاند؟
آیا میتوانیم آن را کوچکتر کنیم؟
نتیجه:
"اگر کارها به اندازه کافی کوچک باشند، اصلاً نیازی به تخمین دقیق ندارید! فقط انجامشان دهید."
۵. حرکت از "تخمین" به "جریان کار" (Flow Metrics)
به جای تمرکز روی تخمینهای ذهنی، مقاله پیشنهاد میکند از دادههای واقعی استفاده کنید:
Cycle Time (مدت زمان واقعی انجام کار)
Throughput (تعداد کارهای انجامشده در یک بازه زمانی)
Lead Time (زمان از درخواست تا تحویل)
مزایای این روش:
پیشبینیهای واقعبینانهتر (بر اساس دادههای گذشته).
کاهش بحثهای بیفایده روی تخمین.
تمرکز روی ارزش، به جای تمرکز روی اعداد.
۶. جمعبندی: گامهای عملی برای تیم شما
۱. آزمایش مقاله را اجرا کنید:
تخمینها و زمان واقعی کارها را مقایسه کنید.
ببینید آیا الگویی وجود دارد؟ (مثلاً کارهای بالای ۸ امتیاز غیرقابل پیشبینی هستند؟)
۲. کارها را کوچکتر کنید:
اگر کارها بزرگ هستند، آنها را به قطعات قابل مدیریت تقسیم کنید.
۳. به جای بحث روی اعداد، روی مکالمه تمرکز کنید:
در پلنینگ پوکر، بپرسید: "آیا همه این کار را فهمیدهاند؟ چه ریسکهایی دارد؟"
۴. از معیارهای جریان کار (Flow Metrics) استفاده کنید:
Cycle Time و Throughput را اندازه بگیرید تا پیشبینی بهتری داشته باشید.
۵. ذهنیت تیم را تغییر دهید:
"تخمین یک تعهد نیست، یک گفتوگو است."
تمرکز بر Flow Metrics (مانند Cycle Time، Throughput و Lead Time) نهتنها ما را از دام بحثهای بیثمر روی تخمینها رها میکند، بلکه با اصل اسکرام یعنی "تحویل ارزش در بازههای کوتاه و بازخورد مداوم" همسو است. همانطور که مقاله «امتیازهای داستان در مقابل واقعیت» نشان میدهد، تخمینهای ذهنی (مثل Story Points) در فضای پیچیده نرمافزار اغلب گمراهکننده هستند، درحالی که دادههای واقعیِ جریان کار، شفافیت و پیشبینیپذیری را افزایش میدهند. با کوچکسازی کارها به اندازهای که در یک اسپرینت تکمیل و قابل بازبینی باشند (مطابق با مفهوم "Sprint Planning" در اسکرام)، به تدریج به No Estimation میرسیم؛ جایی که گفتگوهای تیم روی "چگونه ارزش را سریعتر تحویل دهیم؟" متمرکز میشود، نه "این کار چند امتیاز است؟". نتیجه نهایی، Gentle Flow of Value است: جریانی آرام و پیوسته از ویژگیهای باارزش که در هر اسپرینت با تکیه بر یادگیری تجربی (Empiricism) و شفافیت (Scrum Pillars) به کاربران واقعی میرسد.
«هدف، پیشبینی دقیق نیست، بلکه درک بهتر کارها و تحویل ارزش است.
وقتی کارها کوچک و شفاف باشند، نیازی به بحثهای بیپایان روی تخمین نیست!»
اگر تیم شما هم درگیر بحثهای طولانی روی تخمین است، این مقاله پیشنهاد میکند که
به جای تلاش برای دقیقتر کردن تخمینها، کارها را کوچکتر و شفافتر کنید و از دادههای واقعی برای پیشبینی استفاده نمایید.
آیا تیم شما هم درگیر بحثهای بیپایان روی تخمین است؟ این مقاله را با آنها به اشتراک بگذارید! 🚀