Story Point معادل نفر ساعت نیست

در پروژه های نرم افزاری روش های تخمین زدن متفاوتی وجود دارد؛ ساده ترین روش این است از نفری که می خواهد کار را انجام بدهد بپرسید “این چند ساعت طول می کشد؟” و او بر اساس تجربه قبلی یک ساعتی را اعلام می کند.  اما اکثر تیم های چابک از واحدی به نام Story Point استفاده می کنند. تیم های جدید یا نفرات جدیدی که برای اولین بار سراغ این روش تخمین زدن می آیند دقیقا سعی می کنند ساعت را به پوینت ربط دهند یعنی هر پوینت معادل هشت ساعت می شود.

Story Point معادل نفر ساعت نیست

علت اینکه ما از Story Point استفاده می کنیم این است که می خواهیم به خرد جمعی مراجعه کنیم. یعنی آدم های مختلف در کنار هم بتوانند به صورت تعاملی در مورد اندازه یک کار نظر بدهند. زمانی که شما پوینت را به ساعت نسبت می دهید بزرگترین قابلیت آن یعنی “نسبیت” را از بین می برید.

وقتی به یک کاری می گوییم سه پوینت، سه پوینت به تنهایی هیچ معنی ندارد، سه پوینت نسبت به چه چیز؟ در نسبیت شما همیشه باید یک پایه داشته باشید. مثلا اگر فرض کنیم یک صفحه Add/Edit ساده 8 پوینت است. پس سری بعد  قرار باشد  یک صفحه Add/Edit  داشته باشیم که کمی نیز قوانین تجاری در آن دخیل است، احتمالا پوینت آن 13 است.

چرا ساعت همان پوینت نیست؟

شاید یک صفحه Add/Edit برای من هشت ساعت طول بکشد، پس باید پوینت بشود 1 اما برای همکارم که کمی کند تر است، این کار دو روز طول می کشد پس این پوینت باید بشود 2. حالا فرض کنید این دونفر چگونه می خواهند در مورد اینکار با هم از روش پوینت استفاده کنند؟ اما اگر کل تیم، فرای اینکه چه کسی می خواهد این کار را انجام بدهد در نظر بگیرند که هر  Add/Edit مثلا 8 پوینت است، پس همه تعریف مشترکی از پوینت خواهند داشت.

اما در غیر اینصورت بهتر است از لفظ پوینت استفاده نکنید.

آیا ما مجبور هستیم از پوینت استفاده کنیم؟

اصولا نه. اصلا نیازی به استفاده از این روش نیست. اکثر تیم ها در ایران به اسم از پوینت استفاده می کنند ولی همان سیستم ساعتی است.

بهترین حالت چه چیز است؟

بهترین حالت این است که شما User Story ها را از روش پوینت استفاده کنید، بدلیل اینکه همه تیم بر روی این کار تعامل داشته باشند. اما وقتی این User Story به چندین Task شکست، آنها باید ساعتی تخمین زده شوند. چرا؟ چون قرار است تسک را یک نفر خاص انجام بدهد و آن نفر بر اساس مهارت ها و تجربیات قبلی آن کار را تخمین می زند.

چابک و موفق باشید

اسد صفری

اگر به تازگی با چابک یا اسکرام آشنا شده اید پیشنهاد می کنم این کتابچه چند صفحه را بخوانید و اگر مطالب بیشتری نیاز داشتید شاید این مطلب اول تا آخر چابک برای شما مفید باشد.

مطالب را هم دوست داشتید می توانید از طریق این لینک عضو فید دنیای چابک شوید تا مطالب جدید برای شما ارسال شود

در ضمن دوره های آموزشی نیز برگزار می کنیم که شاید برای شما یا تیم شما نیز مفید باشند اگر اینگونه بود خوشحال می شوم با من تماس بگیرید

اسد صفری

اسد صفری – مربی تحول چابک سازمان و تیم های نرم افزاری. مدارک حرفه ای: CSP - CSM - PSM - PSPO - CDA - Management 3.0 برخی تجربیات: رئیس دفتر تحول چابک شرکت داده ورزی سداد(بیشتر از ده تیم نرم افزاری) - مربی چابک شرکت رامند (تیم های موبایل و گیم سازی) - مدیر تولید نرم افزار SimplyDesk برای شرکت فرانسوی PCI - مربی مشاور شرکت های:خدمات انفورماتیک، ارکید فارمد، فراداده، الفبا برخی از سوابق مشاوره کوتاه مدت و تدریس : علی بابا، فناپ، تجارت الکترونیک پارسیان، بیمه سامان، انیستیتو ایزایران، مهندسین مشاور تجارت (بانک تجارت)، بیمه ایران، پارس آنلاین، شرکت رهنما، ورانگر، انتشارات پزشکی کوثر و صنایع ارتباطی آوا، فولا آلیاژی یزد، پارک علم فناوری کردستان و ... . عضو انجمن های بین المللی Agile Alliance - Scrum Alliance

3 دیدگاه

  1. سلام جناب صفری،
    نسبت بین کارها رو چطور می‌شه سنجید؟ فرض کنید داستان کاربری الف، یک روز برای کل تیم (سطح توانایی‌ها یکسان) زمان می‌برد و داستان کاربری ب، ۵ روز. می‌شه حالتی رو متصور بشین که به هر دو داستان کاربری الف و ب، تیم میزان پوینت یکسانی را برای هر دو تسک انتخاب کند؟

    • اسد صفری   •     Author

      وقتی در مورد پوینت صحبت می کنیم “بزرگی و اندازه و زمان” در هم آمیخته شدند، نه امکان نداره کاری که یک روز طول میکشه با کاری که 5 روز طول میکشه هم پوینت باشند، حداقل فقط از نظر بزرگی 5 برابر هست، یعنی اگر به اولی 2 بدهیم دومی شاید در سری فیبوناچی بشود 13 یا 21. در واقع فقط پوینت می شود یک ابزار مشترک برای صحبت در مورد اندازه کارها.
      اما مشکل دیگری که هست و در مورد آن صحبت نشد، ظرفیت تیم است، با جمع زدن پوینت های انجام شده تیم در آخر اسپرینت باید به ظرفیت تیم برسیم. این ظرفیت سنجی کمک میکنه ما بتونیم برآوردی در مورد کل پروژه نیز داشته باشیم.

  2. Pingback: دنیای چابک – چگونه در عمل تست اتوماتیک را پیاده سازی کنیم؟

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *