وقتی صحبت از مدیریت پروژههای چابک میشود، چیزی که تیمها را سرپا نگه میدارد و سرعتشان را تضمین میکند، فقط ابزارها یا چارچوبها نیستند؛ بلکه جلساتی هدفمند و منظم هستند که مثل ستون فقرات اسکرام عمل میکنند. «جلسات اسکرام» یا Scrum Meetings فرصتی هستند برای هماهنگی، همفکری و حل مسائل در لحظه.
اگر تازه با متد اسکرام آشنا شدهاید یا میخواهید درک عمیقتری از این جلسات داشته باشید، این مقاله نقطه شروع خوبی برای شماست. در ادامه، همه نکات درباره انواع جلسات اسکرام و نقش حیاتی هرکدام را در پیشبرد اهداف محصول یاد میگیریم.
منظور از جلسات اسکرام چیست؟
«جلسات اسکرام» که به آن رویدادهای اسکرام / Scrum Events یا حتی مراسمهای اسکرام / Scrum Ceremonies نیز میگویند، سلسله جلساتی هستند که در زمانهای مختلف بین تیمهای توسعه محصول برگزار میشوند تا تمام جوانب محصول را لحظه به لحظه رصد کنند و به پیش ببرند و در مورد جایجای اجرای پروژه با یکدیگر هماهنگ شوند.
بهتر است بدانید که متد اسکرام یک چارچوب کاری بر پایه روش مدیریت پروژه اجایل است. یکی از اصول Agile این است که اعضای تیم توسعه باید مرتباً با هم ارتباط حضوری داشته باشند یا حداقل در تیمهای دورکار، از طریق تماس ویدیویی یکدیگر را ملاقات کنند تا اطلاعات پروژه را به سرعت با هم رد و بدل کنند و از آن مهمتر به شکلی فرز و چابک نسبت به تغییرات لحظهای واکنش نشان دهند. بنابراین…
Scrum Meetings انواع مختلفی دارند؛ «برنامهریزی اسپرینت»، «جلسات روزانه»، «بازبینی اسپرینت» و تعدادی دیگر. هر جلسه هدف خاصی را دنبال میکند، اما در نهایت همه آنها قرار است به یک هدف مشترک کمک کنند؛ یعنی هماهنگی تیم، شناسایی و رفع سریع مشکلات و بهبود مستمر روند توسعه محصول در چارچوب اسکرام.
چه کسانی در جلسات اسکرام شرکت میکنند؟
میتوانیم بگوییم تقریباً تمام جلسههای اسکرام باید با حضور کامل همه اعضای تیم برگزار شوند. اگرچه ممکن است در بعضی از جلسات، برخی از ذینفعان / Stakeholders نیز بهعنوان ناظر در جلسه باشند، اما نقش اصلی در این جلسات با خود تیم اسکرام است.
تیم اسکرام معمولاً یک تیم کوچک و بسیار چابک است که نهایتاً از ۱۰ نفر تشکیل شده است (بهینهترین حالت 5 تا 9 نفر است). این تیم معمولاً چهار نقش مشخص دارد:
مالک محصول / Product Owner
مالک محصول در داخل تیم اسکرام، مسئول تعریف و اولویتبندی نیازهای محصول و طبقهبندی آنها در بک لاگ محصول است. مالک محصول تمرکز اصلیاش بر تیم توسعه و تحویل ارزش در هر اسپرینت است و با ذینفعان پروژه در ارتباط مستقیم است تا نیازهای آنها را به زبانی قابل اجرا و فنی تبدیل کند و به توسعهدهندگان انتقال دهد.
اسکرام مستر / Scrum Master
اسکرام مستر تسهیلکننده جلسههای اسکرام و حافظ رعایت اصول چارچوب اسکرام است. اسکرام مستر به اعضای تیم کمک میکند تا روی کارهای برنامهریزیشده تمرکز کنند، موانع پیشآمده را تاحدامکان برطرف میکند و مطمئن میشود که ارزشهای چابک در تیم حفظ میشوند و تیم از نظم مشخص شده پیروی کامل دارد.
توسعهدهندگان / Developers
توسعهدهندگان یک محصول، افرادی هستند که بهصورت مستقیم روی ساخت آن محصول کار میکنند. این افراد که معمولاً در قالب یک تیم فعالیت میکنند میتوانند برنامهنویسان یک پروژه نرمافزاری، طراحان گرافیک، طراحان محصول دیجیتال یا محصول فیزیکی، تحلیلگران یا هر کسی که وظایف عملیاتی بر عهده دارد باشند.
مدیر محصول / Product Manager
شاید منتظر معرفی این نقش نیز بودید اما بدانید که...
در سازمانهای بزرگتر یا پروژههای پیچیدهتر، مدیر محصول بهعنوان حلقه اتصال بین بازار، مشتری و تیم محصول عمل میکند. اما نقش رسمی تعریف شدهای در چارچوب اسکرام ندارد؛ البته ممکن است در جلساتی مثل بازبینی اسپرینت یا برنامهریزی اسپرینت (که در ادامه خواهیم گفت) شرکت کند و چشمانداز بازار، دادههای رقابتی یا استراتژیهای کلان محصول را با تیم و ذینفعان به اشتراک بگذارد.
او اغلب با مالک محصول همکاری نزدیک دارد تا اولویتهای درستی برای توسعه محصول تعیین شود.
همچنین برخی سازمانها نقش مالک محصول و مدیر محصول را در یک نقش ادغام کردهاند و یک فرد هر دو کار را انجام میدهد و در همه جلسات شرکت میکند.
اما برسیم به اینکه…
انواع جلسات اسکرام کداماند؟
آنچه به Agile Scrum Meetings معروف است، پنج نوع جلسه اصلیست. در ادامه، هر جلسه را با بیان هدف، زمان برگزاری و افراد شرکتکننده توضیح میدهیم.
-
جلسه برنامهریزی اسپرینت / Sprint Planning
جلسه برنامهریزی اسپرینت یا اسپرینت پلنینگ، برای برنامهریزی و مقدمهسازی اسپرینت آینده است که بهزودی فرا میرسد.
-
زمان برگزاری: در ابتدای هر اسپرینت برگزار میشود.
-
شرکتکنندگان: کل تیم اسکرام؛ شامل مالک محصول، اسکرام مستر و اعضای تیم توسعه.
-
مدتزمان: معمولاً برای هر هفته اسپرینت، حدود ۲ ساعت زمان نیاز دارد. یعنی برای یک اسپرینت دو هفتهای، این جلسه حدود ۴ ساعت طول میکشد.
-
هدف: مرور بک لاگ محصول، تعیین هدف اسپرینت و برنامهریزی برای کارهایی که باید در اسپرینت انجام شوند.
در این جلسه، مالک محصول جلسه را آغاز میکند. او بک لاگ محصول را ارائه و شرح میدهد، اهداف کلی سازمان یا مشتریان را مرور میکند و به سؤالات تیم پاسخ میدهد.
سپس تیم توسعه وظایف موجود در بک لاگ را بررسی میکند و با توجه به ظرفیت و زمان موجود، تخمین میزند که در این اسپرینت واقعاً چه مقدار کار را میتواند انجام دهد. در این فرایند از تکنیک های تخمین تلاش / Effort و استوری پوینت استفاده میشود تا تصمیمها، تخمینها و اولویتبندی درستی داشته باشند.
در پایان جلسه:
-
هدف اسپرینت / Sprint Goal مشخص میشود: نتیجهای شفاف و دقیق که تیم میخواهد در پایان این اسپرینت به آن برسد.
-
بک لاگ اسپرینت / Sprint Backlog تشکیل میشود: مجموعهای از وظایف و تسکهای تعیینشده و اولویتبندیشده برای انجام در این اسپرینت و رسیدن به هدف اسپرینت.
در نهایت، این اسکرام مستر است که باید مطمئن شود که همه اعضا تمام ابعاد اسپرینت را درک کردهاند و بر سر آن به توافق رسیدهاند.
-
جلسه روزانه اسکرام / Daily Scrum یا Stand-up
-
زمان برگزاری: هر روز، معمولاً در ابتدای صبح.
-
شرکتکنندگان: تمام اعضای تیم اسکرام؛ شامل مالک محصول، اسکرام مستر و توسعهدهندگان.
-
مدتزمان: حداکثر ۱۵ دقیقه.
-
هدف: یک جلسه کوتاه روزانه برای بهاشتراکگذاری پیشرفتهای روز قبل، شناسایی موانع پیش رو و هماهنگی کارهای روز جاری.
جلسه روزانه اسکرام، که به نام «استندآپ» یا «دیلی» هم شناخته میشود، کمک میکند تیم اهداف اسپرینت را مرور کند و گلوگاههای احتمالی را زودتر تشخیص دهد. گاهی اوقات (در مواقع نادر) سایر ذینفعان نیز ممکن است بهعنوان ناظر در جلسه حضور داشته باشند، ولی مشارکت نمیکنند.
همانطور که از اسمش پیداست (Standup)، این جلسه ایستاده برگزار میشود تا کوتاه و مؤثر باقی بماند و بیدلیل کش پیدا نکند. معمولاً صبحها برگزار میشود، ولی زمان آن میتواند بر اساس نیاز تیم تغییر کند.
بهطور مشابه، همچنان اسکرام مستر جلسه را هدایت میکند و معمولاً این سه سؤال کلیدی را از تیم میپرسد:
-
دیروز چه کاری انجام دادی؟
-
امروز قرار است روی چه آیتمی کار کنی؟
-
چه چیزی مانع پیشرفت کارت شده؟
با پاسخ به این سؤالها، کل تیم درباره وضعیت روز هماهنگ میشود و هیچکس از روند کار عقب نمیماند.
-
جلسه بازبینی اسپرینت / Sprint Review
-
زمان برگزاری: در پایان هر اسپرینت.
-
شرکتکنندگان: همه اعضای تیم اسکرام + ذینفعان کلیدی که توسط مالک محصول دعوت شدهاند.
-
مدتزمان: حدود یک ساعت برای هر هفته از اسپرینت (یعنی برای اسپرینت دو هفتهای، این جلسه حدود ۲ ساعت طول میکشد).
-
هدف: نمایش کارهای انجامشده و دریافت بازخورد از ذینفعان.
در جلسه بازبینی اسپرینت که بهاختصار به آن جلسه ریویو هم میگویند، تیم توسعه رهبری را به عهده دارد و نتیجه کارهای انجامشده در اسپرینت را به کل تیم اسکرام و گاهی به ذینفعان خارج از تیم ارائه میدهد.
این جلسه فرصتی است برای نشاندادن ارزش واقعیای که پروژه برای یک شرکت ایجاد کرده است. در این جلسه گاهی قابلیتهای جدید محصول که تیم آن را توسعه داده نمایش داده میشود. برای همین گاهی به آن جلسه «دموی اسپرینت» نیز گفته میشود.
در پایان هر جلسه ریویو، ذینفعان بازخوردشان را درباره فیچرهای محصول و داستانهای کاربری پیادهشده ارائه میدهند. اگر این بازخوردها توسط تیم پذیرفته شود، به بک لاگ محصول اضافه میشود و در جلسه ریویو بعدی اولویتبندی خواهد شد.
-
جلسه رترو اسپرینت / Sprint Retrospective
-
زمان برگزاری: در پایان هر اسپرینت.
-
شرکتکنندگان: تمام اعضای تیم اسکرام، شامل مالک محصول، اسکرام مستر و توسعهدهندگان.
-
مدتزمان: معمولاً حدود ۴۵ دقیقه برای هر هفته از اسپرینت (یعنی برای یک اسپرینت دو هفتهای، حدود ۹۰ دقیقه).
-
هدف: مرور و بررسی عملکرد تیم در اسپرینت گذشته، شناسایی نقاط قوت، نقاط ضعف و راهکارهای بهبود.
اصل «بهبود مستمر» یکی از ارکان اصلی اسکرام است و جلسه رترو (یا گاهی با نام جلسه گذشتهنگر) دقیقاً برای همین هدف برگزار میشود. تیم در این جلسه درباره موارد زیر صحبت میکند:
-
چه چیزهایی خوب پیش رفت؟
-
چه چیزهایی خوب نبود؟
-
برای همکاری بهتر در آینده چه تغییراتی میتوانیم ایجاد کنیم؟
هیچکس خارج از تیم اسکرام در این جلسه شرکت نمیکند، چون ممکن است مانع ایجاد فضای آزاد و شفاف برای گفتگو شود.
با جرأت میتوان گفت جلسه Retro یکی از پرچالشترین و پربرخوردترین جلسات تیمهای توسعه است. در این جلسه باید فضایی وجود داشته باشد که اعضا بتوانند با رویکردی سازنده و بدون سرزنشکردن یکدیگر، درباره ایرادات پیشآمده در اسپرینت گذشته بحث کنند تا تیم در اسپرینتهای بعدی، آن مشکلات را تکرار نکند و بهتر عمل کند.
اما گاهی این جلسات، محلی برای بیان چالشها و برخوردهای شخصی میشود. مثلاً وقتی مالک محصول و تیم توسعه به این دلیل که نتوانستهاند بهروشنی نیازها و انتظارات خود را در جلسات پلنینگ و دیلی بیان کنند، در این جلسه به یکدیگر میتازند و میخواهند فضا را به نفع خود تغییر دهند.
-
جلسه بک لاگ ریفاینمنت / Backlog Refinement
-
زمان برگزاری: پیش از جلسه برنامهریزی اسپرینت.
-
شرکتکنندگان: مالک محصول، اسکرام مستر و همه یا برخی از توسعهدهندگان.
-
مدتزمان: زمان مشخص و ثابتی ندارد.
-
هدف: بررسی، اولویتبندی و بهروزرسانی آیتمهای بک لاگ محصول.
جلسه بک لاگ ریفاینمنت که در گذشته با عنوان جلسه «گرومینگ / Grooming» آن را میشناختند، به تیم اسکرام این فرصت را میدهد که پیش از جلسه برنامهریزی اسپرینت، بک لاگ محصول را بررسی و سازماندهی کنند تا مطمئن شوند آیتمها کاملاً واضح و قابلمدیریت هستند.
در این جلسه ممکن است:
-
آیتمهای غیرضروری حذف شوند.
-
آیتمهای جدید اضافه شوند.
-
اولویتها بازنگری شوند.
-
آیتمهای بزرگ به بخشهای کوچکتر تقسیم شوند.
برخلاف جلسات زمانبندیشدهای مثل پلنینگ یا رترو، بک لاگ ریفاینمنت یک فرایند مستمر است و میتواند در طول اسپرینت بهدفعات و طبق نیاز تیم برگزار شود.
اگر بخواهیم جلسات اسکرام را خلاصه کنیم:
نوع جلسه |
زمان برگزاری |
شرکتکنندگان |
مدتزمان تقریبی |
هدف اصلی |
برنامهریزی اسپرینت |
ابتدای هر اسپرینت |
مالک محصول، اسکرام مستر، تیم توسعه |
حدود ۲ ساعت برای هر هفته اسپرینت |
تعیین هدف اسپرینت، مرور بک لاگ محصول، برنامهریزی کارهای قابل انجام در اسپرینت |
جلسه روزانه (دیلی) |
هر روز صبح |
تمام اعضای تیم اسکرام (گاهی ناظران بیرونی بدون مشارکت) |
حداکثر ۱۵ دقیقه |
هماهنگی فعالیتهای روزانه، بررسی پیشرفت دیروز و موانع پیش رو |
بازبینی اسپرینت (ریویو) |
پایان هر اسپرینت |
اعضای تیم اسکرام + ذینفعان دعوتشده توسط مالک محصول |
حدود ۱ ساعت برای هر هفته اسپرینت |
نمایش دستاوردهای اسپرینت و دریافت بازخورد ذینفعان |
بازنگری اسپرینت (رترو) |
پایان هر اسپرینت |
تمام اعضای تیم اسکرام |
حدود ۴۵ دقیقه برای هر هفته اسپرینت |
بررسی عملکرد تیم، شناسایی نقاط قوت و ضعف، یافتن راهکار برای بهبود در اسپرینتهای بعدی |
بک لاگ ریفاینمنت |
پیش از جلسه برنامهریزی اسپرینت |
مالک محصول، اسکرام مستر، برخی یا تمام اعضای تیم توسعه |
زمان مشخصی ندارد؛ بهصورت مستمر در طول اسپرینت |
بررسی و بهروزرسانی بک لاگ محصول، حذف آیتمهای غیرضروری، اصلاح اولویتها، تقسیم تسکها |
مثال عملی از انواع جلسات اسکرام
در ادامه این مقاله، یک مثال از توسعه یک فیچر نرمافزاری برای شما آوردهایم که هر پنج نوع جلسه اسکرام را به روشنی شرح دهد. این مثال به ما کمک میکند تا بفهمیم هر جلسه دقیقاً چه نقشی در روند توسعه محصول ما دارد و چطور تیم ما از آن استفاده میکند.
مثال: توسعه فیچر «ورود با اکانت گوگل» در یک اپلیکیشن مدیریت وظایف / Task Manager
مرحله 1: جلسه بک لاگ ریفیانمنت
محصول ما وارد فاز جدیدی از توسعه شده و یکی از نیازهای کاربران، امکان ورود به اپ با حساب کاربری گوگل هست.
در این جلسه:
-
مالک محصول نیاز کاربران به ورود با گوگل رو مطرح میکنه.
-
با کمک توسعهدهندگان آیتمهای زیر به بک لاگ اضافه میشن:
-
اتصال به API گوگل
-
طراحی صفحه ورود جدید
-
ذخیره توکن در سرور
-
تست امنیتی روی ورود با 0Auth
-
آیتمها تخمین زمانی زده میشن و آیتمهای خیلی بزرگ به چند بخش کوچکتر تقسیم میشن.
-
در نهایت، آیتمها اولویتبندی میشن که کدام در این اسپرینت و با چه اولویتی انجام شوند.
مرحله 2: جلسه اسپرینت پلنینگ
زمان: در ابتدای اسپرینت دو هفتهای.
در جلسه:
-
تیم توسعه بررسی میکنه که در دو هفته آینده چه حجمی از کار رو میتونه انجام بده.
-
از بین آیتمهای بک لاگ، موارد مربوط به «ورود با حساب گوگل» وارد اسپرینت میشن.
-
هدف اسپرینت مشخص میشه: «توسعه و تست فیچر ورود با حساب گوگل بهصورت کامل و قابلانتشار.»
-
اسکرام مستر اطمینان پیدا میکنه که همه اعضا علیالخصوص برنامهنویسان فرانتاند و بکاند درباره هدف اسپرینت توجیه هستند و توافق دارن.
مرحله ۳: جلسات دیلی (استندآپ)
در یکی از روزهای اسپرینت در یک جلسه روزانه:
-
توسعهدهنده بکاند میگه: «دیروز اتصال به API گوگل رو انجام دادم، امروز میخوام توکنها رو ذخیره کنم، مشکلی که دارم اینه که مستندات API گوگل برام مبهمه.»
-
توسعهدهنده فرانتاند میگه: «صفحه ورود رو طراحی کردم، امروز میخوام بخش ورود با گوگل رو بهش اضافه کنم.»
-
اسکرام مستر به مشکل بکاند توجه میکنه و قول میده تا ظهر با کمک تیم تحقیق، مستندات جدید رو پیدا کنه.
همانطور که دیدید، در این سبک جلسات، تیم با هم هماهنگ میمونه و موانع سریعاً شناسایی و رفع میشن. به همین ترتیب، تقریباً هر روز از اسپرینت با همین شیوه جلو میرود.
مرحله 4: جلسه اسپرینت ریویو
زمان: پایان اسپرینت
در جلسه:
-
تیم توسعه قابلیت ورود با گوگل رو بهصورت لایو برای مالک محصول و نمایندگان تیم پشتیبانی و مارکتینگ نمایش میده.
-
ورود به حساب با اطلاعات مختلف تست میشه و نحوه ذخیره دادهها نمایش داده میشه.
-
یکی از ذینفعان پیشنهاد میده که گزینه «ورود با اکانت اپل» هم در آینده اضافه بشه. این پیشنهاد وارد بک لاگ میشه تا در موقع مقتضی به آن پرداخته بشه. شاید به این زودی به آن پرداخته نشه.
مرحله ۵: جلسه رترو
در این جلسه:
-
تیم میگه که همکاری در این اسپرینت خیلی خوب بوده؛ ولی دریافت مستندات API ناقص و وقتگیر بوده.
-
تصمیم میگیرن از اسپرینت بعدی، هر ویژگیای که به API های خارجی وابستهست قبل از شروع اسپرینت، مستنداتش بررسی و آماده بشه.
-
همچنین توافق میکنن که تستهای امنیتی در اسپرینت بعدی، زودتر انجام بشه، نه در روزهای آخر.
در نهایت
آنچه گفتنیست این است که جلسات اسکرام تنها یک سری نشستهای روزمره نیستند؛ بلکه ابزارهایی کلیدی برای ایجاد شفافیت، همراستایی تیمی و پاسخ سریع به چالشها هستند. با شناخت دقیق Scrum Meetings و اجرای درست هر جلسه، میتوانیم بهرهوری تیم خود را افزایش دهیم و کیفیت محصولمان را بهبود ببخشیم.
اگر میخواهید تیمی چابک، منسجم و موفق داشته باشید، از قدرت این جلسات به هیچ وجه غافل نشوید.