کمی عمیقتر از جلسه برنامهریزی اسپرینت بدانیم

در فریمورک (چارچوب) اسکرام، اسپرینت پلنینگ یا جلسه برنامهریزی اسپرینت، رویدادیست که هدف اصلی آن برنامهریزی برای توسعه افزایشی محصول در اسپرینت پیشرو از راه به حداکثر رساندن سرعت حرکت تیم بر پایه نیازمندیهای مهمتر مشتریست .
در این جلسه که با همکاری و مشارکت تمامی اعضای تیم اسکرام برگزار میشود؛ اعضای تیم توسعه محصول از طریق مالک محصول به درک بهتری از کارهای مهمتر و پر اهمیتتر برای مشتری رسیده و با زمانبندی مناسب و تخمینهای خود، متعهد میشوند تا قابلیتهای مورد نیاز مشتری را در اسپرینت پیشرو به انجام رسانند.
در این جلسه مشخص میشود که؛
- کدامیک از کارهای بکلاگ محصول از اولویت بالاتری برای مشتری برخوردار است
- و با هدفگذاری درست از طریق تخمینهای خود متعهد میشوند که کدامیک از آنها را به مشتری تحویل خواهند داد.
در اسکرام، اسپرینت یک دوره زمانی مشخص است که تمامی کارهای برنامهریزی شده میبایست در آن بازه زمانی ثابت به انجام رسند.
جلسه برنامهریزی اسپرینت هم مانند سایر ایونتهای اسکرام از تایمباکس پیروی کرده و برای اسپرینتی که قرار است یک ماه بهطول بیانجامد، ۸ ساعت به برنامهریزی اختصاص یافته و طبیعا برای بازههای زمانی کوتاهتر، از این زمان کاسته خواهد شد.
جلسه برنامهریزی اسپرینت میبایست با تنظیم یک دستور جلسه مشخص آغاز شده و اگر تمام ملاحظات برگزاری یک جلسه پلنینگ به درستی اجرا شده باشد میتواند انگیزه تیم را برای حرکت سریعتر به سمت موفقیت و تکمیل اقلام تحویلدادنی در پایان اسپرینت دو چندان کند.
افراد درگیر در جلسه برنامهریزی اسپرینت
جلسه برنامهریزی یا پلنینگ اسپرینت به طور معمول شامل تمامی اعضای تیم اسکرام است. مالک محصول، موارد اولویتبندی شده از بکلاگ محصول را که پیشتر مشخص کرده است برای تیم خوانده و ابهامات اعضای تیم را مرتفع میکند.
اعضای تیم با تخمینهای خود از کارهای اعلام شده توسط مالک محصول، پیشبینی میکنند (و البته خود را متعهد میدانند) که چه میزان از این کارها در این اسپرینت به انجام خواهند رساند.
اسکرام مستر نیز در تسهیل برگزاری این جلسه تلاش کرده و اطمینان پیدا میکند که بحثهای انجام شده در این جلسه با هدف به حداکثر رساندن سرعت تیم و شفافیت کامل داستانهای کاربری برای تمامی اعضای تیم صورت گرفته است.
محل برگزاری جلسه
ترجیحا محلی خلوت و مناسب برای برگزاری جلسه نسبتا مفصل و طولانی برنامهٰریزی اسپرینت توسط تیم انتخاب شده و به این نکته توجه میشود که تمامی اعضای تیم به اطلاعات مرتبط و مورد نیاز دسترسی داشته باشند.
در تیمهای توزیع شده و از راه دور جلسه برنامهریزی اسپرینت میتواند فرصت مناسبی برای گردهم آمدن افراد تیم برای تقویت تعاملات آنها با یکدیگر باشد.
زمان برگزاری جلسه
این رویداد بلافاصله پس از جلسه بازاندیشی اسپرینت (ریتروسپکتیو) گذشته برگزار میشود و بهتر است که زمان مشخصی را برای برگزاری این جلسه از قبل برنامهریزی شود تا تمام افراد تیم به شکل مناسبتری بتوانند برای آن برنامهریزی کنند.
ساختار جلسه برنامهریزی اسپرینت
این جلسه به طور معمول به دو بخش تقسیم میشود؛
- بخش اول مربوط به دامنه یا اسکوپ کار است که در آن داستانهای کاربری توسط مالک محصول برای اعضای تیم توسعه تشریح میشود
- و بخش دوم مربوط به برنامهریزی و تخمیندهی و برآورد حجم کارها از سوی اعضای تیم توسعه خواهد بود.
لازم است پیش از برگزاری این جلسه مدت زمان در دسترس بودن اعضای تیم توسعه در بازه زمانی اسپرینت برای تمامی اعضای تیم اسکرام شفاف باشد.
از منافع اصلی این جلسه درک درست کارهای قابل انجام در بازه زمانی مشخص شده توسط تمامی اعضای تیم شمرده میشود.
ورودی جلسه برنامهریزی شامل باقیمانده موارد موجود در بکلاگ محصول است که توسط مالک محصول و براساس نیازمندی مشتری اولویتبندی شده و خروجی این جلسه مشخص بودن برنامه کاری اعضای تیم توسعه در اسپرینت پیشرو است.
در این جلسه تلاش میشود تا بر روی نتایج متمرکز شوند نه کارها؛ چرا که اسکرام یک فرایند تجربی است و این بدان معناست که شما نمیتوانید با یک پیشفرض ثابت برنامهریزی کنید بلکه باید از اسپرینتها و اتفاقات گذشته درس گرفته و خود را با حداکثر سرعت بهبود دهید.
شفافیت از مهمترین مواردیست که در این راه میتواند به اعضای تیم اسکرام کمک کرده و یکی از راههای افزایش شفافیت در اسکرام نیز درست بودن اولویتها و داستانهای کاربری نوشته شده است.
نکته مهم:
ندانستن یک مساله با مبهم بودن آن متفاوت است. ناشناختهها در طول انجام کار را نادیده نگیرید اما آنها را پشت کلمات مبهم مخفی نکنید. وقتی چیزی را نمیدانید واضح باشید و سعی کنید کار را به درستی درک کنید.
تخمینها در انجام کارها ضروریاند
اما نباید وانمود کنید که بیشتر از یک تخمین در مورد یک کار میدانید. برنامهریزی اسپرینت به سطحی از تخمین نیاز دارد تا تیم بتواند آنچه را که میتواند یا نمیتواند در طول بازه زمانی اسپرینت به انجام برساند تعریف کند. برآورد تلاش در برابر ظرفیت مهمترین بخش تخمین کارها در جلسه برنامهریزیست. تخمینها اغلب با تعهدات اشتباه گرفته میشوند. براوردها طبق پیشبینیها ماهیتی مبتنی بر دانش دارند و تکنیکهایی مانند اندازه تیشرت (تیشرت سایزینگ) این امکان را به تیم میدهند تا بتوانند حقیقت اندازه کارها را با دید بهتری درک کنند.
تخمینهای خوب نیازمند یک فضای مبتنی بر اعتماد است که در آن اطلاعات به صورت آزادانه و بدون خودسانسوری و با درنظر گرفتن فرضیات مبتنی بر بهبود مستمر بین اعضا تبادل شود.
اسکرام یک چارچوب فرایندی و با هدف حل مشکلات پیچیده است. مشکلات پیچیده نیازمند یادگیری با انجام است و برنامهریزی فرایندهای تجربی بسیار سخت است. شما نمیتوانید یک طرح عالی داشته باشید و همیشه به آن پایبند باشید. باید روی نتایج تمرکز کنید و از تجارب خود برای بهبود مستمر استفاده کنید.
در هر جلسه برنامهریزی این موارد را به خود و تیمتان یادآور شوید؛
- یک تصویر بزرگ از اهداف تیم
- تعریف تیم از تکمیل بودن تسک را براساس فناوری و مهارت اعضای تیم بازنگری کنید
نکته مهم:
تیم میبایست انتخاب کند که در این اسپرینت چه کارهایی را میتواند انجام دهد. مالک محصول نباید بگوید که ما چهار اسپرینت داریم بنابراین باید در این اسپرینت یک چهارم کارها را به انجام برسانید. ما امیدواریم که تیم این کارها و حتی بیشتر را هم به انجام برساند اما این وظیفه تیم است که مشخص کند چقدر میتواند در اسپرینت کار قابل تحویل انجام دهد.
یک دستور کار نمونه برای برگزاری موثر جلسه برنامهریزی اسپرینت
کارهای لازم پیش از برگزاری جلسه
- مالک محصول میبایست اطمینان حاصل کند که همه موارد لازم برای جلسه پلنینگ در بکلاگ محصول وجود دارند
- موارد موجود در بکلاگ محصول به درستی اولویتبندی شده، وابستگیها مشخص شده، موارد مربوط به پذیرش در داستانهای کاربری ذکر شده و موارد مرتبط با تست نیز به درستی ثبت شده است
- مالک محصول و تیم توسعه میزان پیچیدگی هر داستان را بررسی کردهاند
- مالک محصول میبایست اطمینان پیدا کند که داستانهای کاربری نوشته شده از اندازه درست (نه خیلی بزرگ و نه خیلی کوچک) برخوردارند
- اسکرام مستر از میزان در دسترس بودن اعضای تیم در بازه زمانی اسپرینت پیشرو اطلاع داشته باشد
- از اندازه سرعت تیم آگاهی داشته باشید. اگر برای اولین اسپرینت از این آیتم استفاده میکنید نگران نباشید این سرعت را در پایان اسپرینت بهدست خواهید آورد
کارهایی لازم در طول جلسه برنامهریزی اسپرینت
- اهداف یا چشمانداز اسپرینت را مشخص کنید
- اطلاعات جدیدی که ممکن است سرعت تیم را تحت تاثیر قرار دهد بررسی کنید
- نگرانیها و دغدغههای اعضای تیم را ثبت کنید
- سرعت فعلی و سرعت پیشنهادی برای انجام حداکثر کار را درنظر داشته باشید
در مطلب بعدی در مورد اسکرام پوکر، خواهم نوشت. اینکه اسکرام پوکر دقیقا چه چیزی هست و چطور باید ازش برای تخمین داستانهای کاربری در جلسه برنامهریزی اسپرینت استفاده کنیم.
اگر علاقمند بودید این مطالب را هم بخوانید:
- زمانبندی درست یک اسپرینت یا چطوری به همه کارهامون برسیم؟
- سه نکته مهم در برگزاری جلسات برنامهریزی اسپرینت