فرض کنید میخواهید اتاقی از خانه خودتان را رنگ آمیزی کنید. برای شروع رنگ آمیزی ابتدا بر روی وسایل محافظ می اندازید و تا حد امکان وسایل را از اتاق تخلیه میکنید تا بعدا مجبور به تمیز کاری مجدد نشوید! اسپرینت مرحله صفر یا Sprint Zero در متد چابک درست مانند آماده شدن قبل از رنگ آمیزی است.
اسپرینت صفر عمل ساده ای است که تضمین میکند در هنگام شروع توسعه محصول، چیزی سر راه ایجاد یک working software قرار نگرفته است. اسپرینت صفر چند هدف اصلی داردإ
در اولین و مهمترین گام در اسپرینت مرحله صفر باید به سراغ ساختار چشم انداز محصول خودتان بروید. به این صورت که یک معمار نرم افزار یا یک رهبر فنی دیگر تعریف میکند که محصول چگونه باید ساخته شود. وقتی ویژگیها (features) و پوستهها (themes) تعریف شدند، تصمیمات ساختاری در مورد اینکه تیم چگونه محصول خواهد ساخت کمک میکند.
بعد از فهمیدن ساختار و معماری محصول، میتوانید تصمیم بگیرید که آیا به نرمافزار یا ابزار جدیدی برای تکمیل کار خود نیاز دارید یا نه. اگر به چیزی جدیدی در اسپرینت صفر نیاز دارید، در این مرحله وقت آن است که آن را تهیه کنید و یاد بگیرید چطور از آن استفاده کنید. ساختار و معماری محصول مورد نظر شما ممکن شما را مجبور کند با فروشندگان جدیدی کار کنید. اگر فروشنده جدیدی دارید که برای آماده سازی پروژه آزمایشی خود استفاده میکنید، باید قبل و یا در طول اسپرینت صفر قرارداد را با آنها تکمیل کنید.
یک عنصر حیاتی دیگر برای آمادهسازی پروژه آزمایشی شما آموزش همه اعضای تیم تان در چابک است. شما میتوانید این آموزش را قبل از اسپرینت صفر و یا به عنوان بخشی از آن انجام دهید. نحوه آن کاملا به شما و تیم تان بستگی دارد. اما زمانی که اسپرینت صفر تمام شود، تمرکز کامل بر تحویل working software خواهد بود، بنابراین تمام آموزش باید ابتدا انجام شود.
حالا که شما و تیمتان آموزشدیده اید، باید تصمیم بزرگ بعدی را بگیرید: هر اسپرینت چقدر طول خواهد کشید؟ یک اسپرینت دو هیچگاه بیشتر از چهار هفته نیست و اگر بخواهید حتی میتواند هفته طول بکشد. اکثر تیمها اسپرینتهای 2 یا 3 هفته ای دارند. اما چطور تصمیم میگیرید؟ خوب، ابتدا نگاهی دقیقتر به پروژه خود بیندازید. اگر پروژه شما دارای ریسک قابلتوجهی در آن باشد، اسپرینت باید یک یا دو هفته طول بکشد. ممکن است بر خلاف انتظارات عقلی باشد، اما واقعیت در مواجهه با ریسک زیاد است، شما باید سریع شکست بخورید. شکست خوردن با سرعت بالا تضمین میکند که زمان کافی برای بازیابی خود دارید، و هنوز میتوانید پروژه را با موفقیت کامل انجام دهید. اگر قرار نیست کاری انجام شود، بهتر است از همین الان جلوی آن گرفته شود.
حالا که طول مدت هر اسپرینت را مشخص کردید، میتوانید ریلیز پلن اولیه خود را تهیه کنید. اگر نقشه راه به یاد داشته باشید، گفتیم که road map نقشه سطح بالا از جایی است که در سه تا شش ماه آینده با استفاده از تمها که زمانبدی آنها مشخص شده است میخواهیم برویم. ریلیز پلن، سطح بعدی جزئیات ناشی از آن است. در واقع ریلیز پلن ارتباط بین نقشه راه و خود اسپرینتها است. همانطور که ریلیز پلن خود را بنا میکنید، میتوانید این کار را از یک ویژگی و یا یک دیدگاه برنامهریزی انجام دهید. یک ریلیز پلن ویژگی محور feature based release plan به این معنی است که شما تعیین میکنید کدام یک از ویژگیها باید با هم منتشر شوند، و تعیین میکنید چه زمانی ویژگیها بر اساس ریلیز پلن تحویل داده خواهند شد. یک ریلیز پلن زمانبندی شده schedule based release plan به این معنی است که یک تاریخ را انتخاب کرده و مشخص کنید که چه چیزی میتواند تا آن زمان تکمیل شود. وقتی با استفاده از ریلیز پلن کار میکنید، اگر ریسک قابلتوجهی در پروژه آزمایشی وجود دارد، باید آن ریسکها را در نظر بگیرید. همیشه ایده خوبی است که ریسکها را در ابتدای ریلیز پلن مشخص کنید.
دوباره، سریع شکست بخورید. این مرحله بهترین روش کاهش ریسک است. میتوان گفت، اسپرینت صفر برای موفقیت پروژه حیاتی است. زمانی که اسپرینت مرحله صفر و تمام عناصر اصلی آن تکمیل شدند، آماده اید که اولین اسپرینت چابک خود را شروع کنید.