جیم اس. میلر، درباره متریک میگه: مهمترین متریک ما اینه که از خودمون بپرسیم: آیا همون چیزی رو که میخواستیم، اجرا کردیم؟ و آیا همون محصولی که قول داده بودیم رو با تمام ارزشهاش تحویل دادیم؟
ممکنه عضوی از یه تیم اجایل باشید و بارها از خودتون پرسیده باشید چطور میشه عملکرد تیم رو اندازه گرفت؟ آیا ما در مسیر موفقیت هستیم؟
تقریبا هر چیزی رو میشه اندازه گرفت، اما در مورد اجایل روش اندازه گیری و تخمینها کمی متفاوته.
واقعیت اینه که تیمهای اجایل سبک کاریشو براساس تحویل افزایشیه (یعنی مثلا یه فیچر رو کم کم و به صورت پیوسته ریلیز میکنن). بر همین اساس هم برای ارزیابی عملکرد تیمهای اجایل از تخمین دلیوری استفاده میشه.
تخمینها در واقع نوعی پروکسی برای تعیین ارزش کار انجام شده هستند. مثلا استوری پوینت، به عنوان یه ارزش و یه شاخص برای اندازه گیری سختی و وزن تسک پذیرفته شده است.
اگه دقت کرده باشید، میبینید مواردی از نظر سهامداران پروژه به عنوان ارزش واقعی شناخته میشن، برای اینکه معیار اندازهگیری باشن، زیادی سخت هستن به همین دلیل به متریکهایی نیاز داریم که به اصطلاح کوک آید (cock-eyed) باشن. (فکر کنم معادل فارسیش می شه سریع به چشم بیان.)
این متریکها با توافق تیم اجایل به وجود میان و مثلا نشون میدن که تخمین تیم از میزان کار قابل دلیوریشون در هر اسپرینت چقدره؟
از این دادهها برای پیشبینی اینکه با کمک این تیم، محصول نهایی چه زمانی دلیور میشه استفاده میکنیم.
مزیت اصلیش هم اینه که تخمین دقیقتر و محصول با کیفیتتری خواهیم داشت. به خاطر اینکه در اجایل، محصول به صورت افزایشی تولید و تحویل مشتری میشه، در بازههای زمانی کوتاه قابل بازرسی و اصلاح هست و زمان تحویل مرتب آپدیت میشه.
امروز میخوام به دو تا از این متریکهای مهم که در اسکرام استفاده میکنیم، اشاره کنم:
اسپرینت برن داون (The Sprint Burndown)
اسپرینت برن داون یه مثال از متریکهای اجایله. اسپرینت برن داون یه نموداره و تا رسیدن به هدف در تمام اسپرینت، آپدیت میشه.
این نمودار از یه محور افقی تشکیل شده که بر اساس روزهای اسپرینت تقسیم بندی شده و یه محور عمودی که براساس استوری پوینت مرتب شده.
همونطور که میدونید در اسکرام به جای استفاده از زمان، از تخمینی به نام استوری پوینت استفاده میشه.
ماجراش هم اینه که در طول جلسه پلنینگ، توسعهدهندگان بعد از اینکه با پروداکت اونر صحبت کردن و براساس هدف اسپرینت، کار برداشتن و آوردن توی اسپرینت بک لاگ، به هر کدوم از این کارها یه امتیازی می دن و این امتیاز، اسمش استوری پوینت هست.
براساس شاخصهایی مثل ظرفیت تیم در اسپرینتهای گذشته، تعداد نیروها، روزهای تعطیل و ... عددی به عنوان ظرفیت اسپرینت پیشبینی میشه و با تقسیم اون به تعداد روزهای اسپرینت، یه خط فرضی به دست میاد. میزان تفاوت کارآیی تیم نسبت به اون خط فرضی سنجیده میشه.
برای اینکه بهتر بتونیم وضعیت دلیوری محصول رو فالو کنیم و همچنین روند رشد تیم رو بررسی کنیم، از اسپرینت برن داون استفاده میکنیم. اسپرینت برن داون نشون میده تیم با ظرفیتی که داره چقدر می تونه کار کنه و چطور باید بهتر برنامهریزی کنیم.
(اگه به توضیحات تکمیلی نیاز دارید، اینجا مفصل درباره برن داون توضیح دادم)
پروداکت برن داون (The Product Burndown)
یه نمودار مهم دیگه، نمودار پروداکت برن داونه که یه راه خیلی متداول برای تخمین زمان دلیوری پروژه براساس استوری پوینت به حساب میاد و خیلی هم پر کاربرده.
از نظر ظاهری این نمودار خیلی شبیه اسپرینت برن داون هست و جالبه که بدونید، مبنای رسمش هم براساس برن داونه با این تفاوت که نمودار افقی بر اساس اسپرینتهای مختلف و نمودار عمودی هم مثل قبل بر اساس استوری پوینته.
با شروع یه فیچر در اولین اسپرینت این نمودار رسم میشه و تا زمان دلیوری اون فیچر به مشتری، براساس تعداد استوری پوینتهای باقی مونده تا دلیوری کامل و میزان پوینتی که در هر اسپرینت انجام شده، نمودار رسم میشه.
تکمیل این نمودار ممکنه چند اسپرینت، ماه یا حتی سال طول بکشه و هدفش فالو کردن محصول از لحظه شروع تا دلیوری هست.
علاوه بر این، تفاوت دیگهش اینه که این نمودار برای تیم توسعه نیست، بلکه مخاطب اصلیش سهامداران و افراد بالادستی و مدیران سازمان هستند که تمایل دارن نتایج دلیوری محصول رو دنبال کنن.
سخن پایانی: چرا تخمین؟ چرا زمان نه؟ (بر وزن چرا تهران نه؟)
متریکهای اجایل و اسکرام به همین دو نمودار ختم نمیشه، اما سعی کردم خیلی خلاصه دوتا از پرکاربردترینها رو بهتون معرفی کنم. به عنوان حسن ختام هم شاید بد نباشه به این بپردازیم که چرا میریم سراغ استوری پوینت؟ جرا براساس ساعت برنامهریزی نمیکنیم؟
اگر دقت کرده باشید، ما گفتیم که توی اسکرام از تخمین استفاده میکنیم به جای زمان، اما چرا این کار رو میکنیم؟ دلیوری فیچرهای زود هنگام مهمتر از هرچیزیه و اینه که مشتری رو راضی نگه میداره. درسته؟
قطعا ما میدونیم و درک میکنیم که اندازهگیری پیشرفت اسپرینت براساس تخمینی مثل استوری پوینت، خیلی قطعی و قابل اتکا نیست و حتی ممکنه یه جاهایی نشه ازش استفاده کرد.
چیزی که استوری پوینت و نمودار برن داون به تیم میده در واقع، شفافیته و باعث میشه در هر لحظه از اسپرینت، تیم و هر کسی که به نمودار نگاه میکنه ببینه وضعیت چیه و اگه مشکلی هست، همونجا سریع حل کنیم. بر همین اساس هم استفاده از استوری پوینت میتونه به تیم کمک بیشتری کنه.
ترجمه آزاد از: scrum.org