اسکرام (Scrum) یک چارچوب چابک برای مدیریت و توسعه محصولات پیچیده است که به تیمها کمک میکند کار را در دورههای کوتاهی به نام اسپرینت (Sprint) پیش ببرند، مرتب نتیجه را بررسی کنند و بر اساس بازخوردها مسیر خود را اصلاح کنند.
در Scrum، بهجای اینکه تمام مراحل پروژه از ابتدا با جزئیات ثابت برنامهریزی شوند، تیم روی مهمترین کارها تمرکز میکند و در هر اسپرینت تلاش میکند یک خروجی قابل استفاده و ارزشمند (Increment) ایجاد کند. این چرخه باعث میشود مشکلات زودتر شناسایی شوند و تیم بتواند سریعتر خود را با تغییر نیازها و شرایط تطبیق دهد.
اسکرام یک متدولوژی مدیریت پروژه نیست؛ بلکه چارچوبی است که مسئولیتها، رویدادها و مصنوعات مشخصی را تعریف میکند و در عین حال نحوه انجام جزئیات کار را به خود تیم میسپارد.
در ادامه این راهنما با نحوه کار اسکرام، نقشهای اعضای تیم، اسپرینت، بکلاگ، رویدادها و مصنوعات Scrum آشنا میشوید و در پایان نیز اجرای آن را با یک مثال عملی بررسی میکنیم.
فهرست مطالب
- اسکرام چگونه کار میکند؟
- اسکرام در یک نگاه
- اصول اساسی اسکرام: ۳ ستون و ۵ ارزش Scrum
- نقشهای اسکرام چیست؟
- رویدادهای اسکرام (Scrum Events)
- مصنوعات اسکرام (Scrum Artifacts)
- مثال اسکرام به زبان ساده
- تفاوت اسکرام و چابک (Agile) چیست؟
- مزایای استفاده از چهارچوب اسکرام
- محدودیتها و چالشهای چهارچوب اسکرام و راهحلهای پیشنهادی
- اجرای بهتر اسکرام به کمک نرمافزار بهتایم
اسکرام چگونه کار میکند؟
اسکرام کار را به چرخههای کوتاه و تکرارشوندهای به نام اسپرینت (Sprint) تقسیم میکند. در هر اسپرینت، تیم روی مجموعهای از کارهای مهم تمرکز میکند و تلاش میکند یک خروجی قابل استفاده و ارزشمند ایجاد کند. سپس نتیجه را بررسی میکند، بازخورد میگیرد و بر اساس آن برای ادامه مسیر تصمیم میگیرد.
بهطور ساده، چرخه کار در اسکرام را میتوان اینگونه خلاصه کرد:
Product Backlog → Sprint Planning → Sprint → Increment → Review & Feedback → Adaptation
۱. کارها در Product Backlog قرار میگیرند
نیازها، قابلیتها، اصلاحات و سایر کارهای موردنیاز محصول در بکلاگ محصول (Product Backlog) ثبت و مرتب میشوند.
مالک محصول (Product Owner) مسئول مدیریت مؤثر این بکلاگ است و کمک میکند مهمترین کارها در اولویت قرار گیرند.
۲. تیم برای اسپرینت برنامهریزی میکند
در ابتدای هر اسپرینت، تیم در جلسه Sprint Planning مشخص میکند چرا این اسپرینت ارزشمند است، روی چه کارهایی تمرکز خواهد کرد و چگونه آنها را انجام خواهد داد.
کارهای انتخابشده به همراه هدف اسپرینت (Sprint Goal) و برنامه انجام آنها، Sprint Backlog را تشکیل میدهند.
۳. اسپرینت اجرا میشود
اعضای تیم در طول Sprint روی کارهای انتخابشده فعالیت میکنند. هر اسپرینت حداکثر یک ماه طول میکشد و اسپرینت جدید بلافاصله پس از پایان اسپرینت قبلی آغاز میشود.
توسعهدهندگان در طول اسپرینت با استفاده از Daily Scrum پیشرفت خود را نسبت به هدف اسپرینت بررسی میکنند و در صورت نیاز برنامه کار را اصلاح میکنند.
۴. یک Increment ارزشمند ایجاد میشود
هدف تیم فقط تمام کردن تعدادی وظیفه نیست. کار انجامشده باید به یک Increment قابل استفاده منجر شود که شرایط Definition of Done را برآورده کند.
به این ترتیب در طول توسعه محصول، ارزش بهصورت تدریجی ایجاد میشود و تیم لازم نیست تا پایان یک پروژه بزرگ برای مشاهده نتیجه منتظر بماند.
۵. نتیجه بررسی و بازخورد دریافت میشود
در Sprint Review، تیم اسکرام همراه با ذینفعان نتیجه اسپرینت را بررسی میکند و درباره شرایط فعلی و اقدامات بعدی گفتگو میکند.
بازخوردهای دریافتشده میتوانند باعث تغییر یا مرتبسازی مجدد Product Backlog شوند.
۶. تیم روش کار خود را بهبود میدهد
در Sprint Retrospective، تیم نحوه همکاری و اجرای کار را بررسی میکند و فرصتهای بهبود را برای اسپرینت بعدی شناسایی میکند.
سپس اسپرینت بعدی آغاز میشود و این چرخه دوباره تکرار خواهد شد.
به همین دلیل، اسکرام یک فرآیند خطی نیست؛ بلکه چرخهای مستمر از برنامهریزی، اجرا، بررسی، یادگیری و اصلاح مسیر است که به تیم اجازه میدهد هم محصول و هم روش انجام کار خود را بهمرور بهبود دهد.
اسکرام در یک نگاه
تا اینجا با نحوه کار Scrum آشنا شدیم. پیش از بررسی جزئیتر اجزای این چارچوب، جدول زیر ساختار اسکرام را بهصورت خلاصه نشان میدهد:
| جزء اسکرام | تعداد | موارد |
|---|---|---|
| ستونهای اسکرام (Pillars) | ۳ | شفافیت (Transparency)، بازرسی (Inspection)، انطباق (Adaptation) |
| ارزشهای اسکرام (Values) | ۵ | تعهد، تمرکز، بازبودن، احترام، شجاعت |
| مسئولیتها (Accountabilities) | ۳ | Product Owner، Scrum Master، Developers |
| رویدادها (Events) | ۵ | Sprint، Sprint Planning، Daily Scrum، Sprint Review، Sprint Retrospective |
| مصنوعات (Artifacts) | ۳ | Product Backlog، Sprint Backlog، Increment |
| تعهدهای مصنوعات (Commitments) | ۳ | Product Goal، Sprint Goal، Definition of Done |
اصول اساسی اسکرام: ۳ ستون و ۵ ارزش Scrum
اسکرام بر تجربهگرایی (Empiricism) استوار است؛ یعنی دانش از تجربه به دست میآید و تصمیمها بر اساس آنچه واقعاً مشاهده و آموخته شده است، گرفته میشوند. به همین دلیل تیم اسکرام بهجای اینکه از ابتدا همه چیز را با جزئیات پیشبینی کند، کار را در چرخههای کوتاه انجام میدهد، نتیجه را بررسی میکند و بر اساس بازخوردها مسیر خود را بهبود میدهد.
این رویکرد بر سه ستون اصلی اسکرام یعنی شفافیت، بازرسی و انطباق بنا شده و در کنار آن، پنج ارزش اسکرام رفتار و تصمیمگیری اعضای تیم را هدایت میکنند.
سه ستون اصلی اسکرام
۱. شفافیت (Transparency)
افرادی که در انجام کار و تصمیمگیری مشارکت دارند باید درک مشترک و شفافی از وضعیت کار، اهداف و نتایج داشته باشند. اطلاعات مهم نباید فقط در اختیار مدیر یا یک عضو خاص تیم باشد.
برای مثال، بکلاگ محصول، هدف اسپرینت، وضعیت فعالیتها و تعریف انجامشده (Definition of Done) باید برای اعضای تیم قابل مشاهده و قابل درک باشند.
شفافیت کمک میکند مشکلات، تأخیرها و موانع زودتر دیده شوند و تصمیمها بر اساس وضعیت واقعی پروژه گرفته شوند.
۲. بازرسی یا بررسی (Inspection)
تیم اسکرام باید بهطور منظم پیشرفت کار، مصنوعات اسکرام و میزان حرکت به سمت اهداف تعیینشده را بررسی کند. هدف از این بررسی پیدا کردن انحرافها یا مشکلاتی است که ممکن است مانع دستیابی به نتیجه مطلوب شوند.
رویدادهایی مانند اسکرام روزانه، بررسی اسپرینت و بازنگری اسپرینت فرصتهایی برای این بررسی مستمر فراهم میکنند.
البته بررسی زمانی مفید است که شفافیت کافی وجود داشته باشد؛ زیرا بدون اطلاعات روشن و قابل اعتماد نمیتوان وضعیت واقعی کار را ارزیابی کرد.
۳. انطباق (Adaptation)
اگر در جریان بررسی مشخص شود که روش انجام کار، برنامه یا نتیجه در مسیر مناسبی قرار ندارد، تیم باید در سریعترین زمان ممکن تغییر لازم را ایجاد کند.
این تغییر ممکن است شامل اصلاح برنامه اسپرینت، تغییر نحوه انجام کار، بازنگری اولویتها یا بهبود فرآیند همکاری تیم باشد.
در اسکرام، هدف از بررسی صرفاً پیدا کردن مشکل نیست؛ بلکه تیم باید از آموختههای خود برای اصلاح مسیر و بهبود مستمر استفاده کند.
پنج ارزش اسکرام
در کنار سه ستون بالا، Scrum Guide پنج ارزش را برای موفقیت تیم اسکرام معرفی میکند:
۱. تعهد (Commitment)
اعضای تیم برای دستیابی به اهداف اسکرام و حمایت از یکدیگر متعهد هستند. این تعهد به معنای پذیرش مسئولیت مشترک برای رسیدن به نتیجه است، نه صرفاً انجام وظیفه فردی.
۲. تمرکز (Focus)
اعضای تیم در طول اسپرینت بر کاری تمرکز میکنند که بیشترین کمک را به دستیابی به هدف اسپرینت (Sprint Goal) میکند. این تمرکز از پراکندگی فعالیتها و انجام کارهای کماهمیت جلوگیری میکند.
۳. بازبودن (Openness)
اعضای تیم و ذینفعان باید درباره وضعیت کار، مشکلات، محدودیتها و چالشها شفاف باشند. پنهان کردن مشکل یا ارائه تصویری غیرواقعی از پیشرفت، امکان تصمیمگیری صحیح را از تیم میگیرد.
۴. احترام (Respect)
اعضای تیم به توانایی، تجربه و استقلال یکدیگر احترام میگذارند. این احترام زمینهای برای همکاری مؤثر، بیان دیدگاههای متفاوت و حل سازنده اختلافها فراهم میکند.
۵. شجاعت (Courage)
اجرای اسکرام گاهی نیازمند تصمیمهای دشوار است؛ از مطرح کردن یک مشکل گرفته تا تغییر روشی که مدتها مورد استفاده قرار گرفته است. اعضای تیم باید شجاعت انجام کار درست، مواجهه با مسائل دشوار و بیان واقعیتها را داشته باشند.

ارتباط ستونها و ارزشهای اسکرام
سه ستون و پنج ارزش اسکرام از یکدیگر جدا نیستند. شفافیت باعث میشود وضعیت واقعی کار قابل مشاهده باشد، بازرسی امکان شناسایی مشکلات و فرصتهای بهبود را فراهم میکند و انطباق باعث میشود تیم بر اساس آنچه آموخته است مسیر خود را اصلاح کند.
در همین حال، ارزشهایی مانند تعهد، تمرکز، بازبودن، احترام و شجاعت کمک میکنند اعضای تیم بتوانند این چرخه را بهدرستی اجرا کنند. نتیجه، تیمی است که بهطور مستمر از تجربههای خود یاد میگیرد و روش انجام کار و محصول خود را بهبود میدهد.
نقشهای اسکرام چیست؟
در اسکرام، واحد اصلی کار تیم اسکرام (Scrum Team) است. تیم اسکرام گروهی کوچک، چندمهارته و خودمدیریت است که برای دستیابی به یک هدف مشترک یعنی هدف محصول (Product Goal) فعالیت میکند.
در Scrum Guide جدید، بهجای اصطلاح «نقشهای اسکرام»، از مفهوم مسئولیتپذیریها (Accountabilities) استفاده میشود. با این حال، چون عبارت «نقشهای اسکرام» در فارسی رایجتر است، معمولاً برای توضیح این ساختار از همین اصطلاح استفاده میشود.
یک تیم اسکرام از سه مسئولیت اصلی تشکیل میشود:
- مالک محصول (Product Owner)
- اسکرام مستر (Scrum Master)
- توسعهدهندگان (Developers)
در تیم اسکرام زیرتیم یا سلسلهمراتب داخلی وجود ندارد و همه اعضا برای ایجاد یک خروجی ارزشمند در هر اسپرینت همکاری میکنند.
۱. مالک محصول (Product Owner)
مالک محصول مسئول بیشینهکردن ارزش محصول حاصل از کار تیم اسکرام است. او مشخص میکند محصول باید در چه مسیری حرکت کند و مسئول مدیریت مؤثر بکلاگ محصول (Product Backlog) است.
مهمترین مسئولیتهای مالک محصول عبارتاند از:
- تعریف و شفافسازی هدف محصول (Product Goal)
- ایجاد و توضیح آیتمهای بکلاگ محصول
- مرتبکردن آیتمهای بکلاگ بر اساس اهمیت و ارزش
- اطمینان از شفاف و قابلفهم بودن بکلاگ
- کمک به تیم برای درک صحیح اولویتها و نیازهای محصول
مالک محصول میتواند بخشی از فعالیتهای مربوط به مدیریت بکلاگ را به دیگران واگذار کند، اما مسئولیت نهایی آن همچنان بر عهده اوست.
همچنین Product Owner یک شخص است، نه یک کمیته. بنابراین تصمیم نهایی درباره ترتیب و جهت بکلاگ محصول باید مشخص و شفاف باشد.
۲. اسکرام مستر (Scrum Master)
اسکرام مستر مسئول کمک به استقرار و اجرای صحیح اسکرام مطابق Scrum Guide است. وظیفه او مدیریت افراد یا تقسیم کار بین اعضای تیم نیست؛ بلکه کمک میکند تیم و سازمان اسکرام را بهتر درک و اجرا کنند.
مهمترین مسئولیتهای اسکرام مستر عبارتاند از:
- آموزش اصول و شیوه صحیح استفاده از اسکرام
- کمک به اعضای تیم برای خودمدیریتی و همکاری مؤثر
- کمک به تیم برای تمرکز بر ایجاد خروجیهای ارزشمند
- کمک به برطرف شدن موانعی که پیشرفت تیم را مختل میکنند
- اطمینان از اینکه رویدادهای اسکرام برگزار میشوند و هدف خود را دنبال میکنند
- کمک به مالک محصول در مدیریت مؤثر بکلاگ و هدف محصول
- کمک به سازمان برای پذیرش و اجرای بهتر Scrum
بنابراین، اسکرام مستر را نباید با مدیر پروژه سنتی یکی دانست. او معمولاً به تیم دستور نمیدهد که چه کاری را چگونه انجام دهد، بلکه شرایطی ایجاد میکند که اعضای تیم بتوانند بهتر تصمیم بگیرند و کار خود را مدیریت کنند.
۳. توسعهدهندگان (Developers)
توسعهدهندگان اعضای تیم اسکرام هستند که در هر اسپرینت برای ایجاد یک Increment قابل استفاده و ارزشمند فعالیت میکنند.
واژه Developers در اسکرام فقط به برنامهنویسان اشاره ندارد. بسته به نوع محصول یا پروژه، این افراد میتوانند تخصصهای متفاوتی داشته باشند و مهارتهای موردنیاز برای ایجاد خروجی را در اختیار تیم قرار دهند.
مهمترین مسئولیتهای توسعهدهندگان عبارتاند از:
- ایجاد برنامه اسپرینت یا همان Sprint Backlog
- رعایت Definition of Done برای حفظ کیفیت خروجی
- تطبیق روزانه برنامه خود با هدف اسپرینت
- پذیرش مسئولیت حرفهای در برابر یکدیگر
- همکاری برای ایجاد یک خروجی قابل استفاده در هر اسپرینت
توسعهدهندگان خودشان درباره نحوه انجام کار تصمیم میگیرند و مسئول سازماندهی فعالیتهای موردنیاز برای دستیابی به هدف اسپرینت هستند.
تیم اسکرام چه ویژگیهایی دارد؟
مالک محصول، اسکرام مستر و توسعهدهندگان در کنار یکدیگر Scrum Team را تشکیل میدهند. تیم اسکرام باید:
- چندمهارته (Cross-functional) باشد؛ یعنی مهارتهای لازم برای ایجاد ارزش را در اختیار داشته باشد.
- خودمدیریت (Self-managing) باشد؛ یعنی اعضای تیم درباره اینکه چه کسی، چه کاری، چه زمانی و چگونه انجام دهد تصمیم بگیرند.
- بر یک هدف محصول مشترک تمرکز کند.
- برای ایجاد یک Increment ارزشمند در هر اسپرینت مسئولیت مشترک داشته باشد.
Scrum Guide توصیه میکند تیم اسکرام بهاندازهای کوچک باشد که چابکی خود را حفظ کند و در عین حال بتواند کار قابلتوجهی را در یک اسپرینت انجام دهد؛ معمولاً ۱۰ نفر یا کمتر.
رویدادهای اسکرام (Scrum Events)
در چارچوب اسکرام، پنج رویداد رسمی وجود دارد که به تیم کمک میکنند بهطور منظم پیشرفت را بررسی کند، بازخورد بگیرد و در صورت نیاز برنامه خود را اصلاح کند.
این پنج رویداد عبارتاند از:
- اسپرینت (Sprint)
- برنامهریزی اسپرینت (Sprint Planning)
- اسکرام روزانه (Daily Scrum)
- بررسی اسپرینت (Sprint Review)
- بازنگری اسپرینت (Sprint Retrospective)
اسپرینت رویداد اصلی و ظرف چهار رویداد دیگر است؛ یعنی Sprint Planning، Daily Scrum، Sprint Review و Sprint Retrospective همگی درون یک اسپرینت اتفاق میافتند.
۱. اسپرینت (Sprint)
اسپرینت قلب اسکرام است. در هر اسپرینت، ایدهها و برنامهها به یک خروجی قابل استفاده و ارزشمند تبدیل میشوند.
اسپرینت یک بازه زمانی ثابت با طول حداکثر یک ماه است. طول اسپرینتها معمولاً ثابت نگه داشته میشود تا تیم بتواند ریتم کاری قابل پیشبینی داشته باشد. بلافاصله پس از پایان یک اسپرینت، اسپرینت بعدی آغاز میشود.
در طول اسپرینت:
- تغییری که هدف اسپرینت (Sprint Goal) را به خطر بیندازد انجام نمیشود.
- کیفیت کار کاهش پیدا نمیکند.
- بکلاگ محصول در صورت نیاز پالایش و شفافتر میشود.
- با افزایش اطلاعات تیم، محدوده کار میتواند با همکاری مالک محصول شفافتر یا بازتنظیم شود.
هدف اسپرینت این نیست که صرفاً تعدادی فعالیت انجام شود؛ تیم باید در پایان آن یک Increment ارزشمند و قابل استفاده ایجاد کرده باشد.
۲. برنامهریزی اسپرینت (Sprint Planning)
هر اسپرینت با Sprint Planning آغاز میشود. در این رویداد، کل تیم اسکرام برای مشخص کردن هدف و برنامه اسپرینت همکاری میکند.
برنامهریزی اسپرینت به سه سؤال اصلی پاسخ میدهد:
چرا این اسپرینت ارزشمند است؟
تیم با همکاری مالک محصول یک هدف اسپرینت (Sprint Goal) تعریف میکند که مشخص میکند این اسپرینت چه ارزشی ایجاد خواهد کرد.
در این اسپرینت چه کاری انجام میشود؟
توسعهدهندگان با همکاری مالک محصول، آیتمهای مناسب را از Product Backlog برای اسپرینت انتخاب میکنند.
کارها چگونه انجام میشوند؟
توسعهدهندگان درباره نحوه انجام کارها و تبدیل آیتمهای انتخابشده به یک Increment قابل استفاده تصمیم میگیرند.
خروجی این فرآیند، Sprint Backlog است که شامل هدف اسپرینت، آیتمهای انتخابشده و برنامه انجام آنها میشود.
برای یک اسپرینت یکماهه، Sprint Planning حداکثر ۸ ساعت زمان دارد و برای اسپرینتهای کوتاهتر معمولاً زمان کمتری نیاز است.
۳. اسکرام روزانه (Daily Scrum)
Daily Scrum رویدادی ۱۵ دقیقهای برای توسعهدهندگان تیم اسکرام است که در هر روز کاری اسپرینت برگزار میشود.
هدف این جلسه ارائه گزارش وضعیت به مدیر یا اسکرام مستر نیست؛ بلکه توسعهدهندگان پیشرفت خود را نسبت به Sprint Goal بررسی میکنند و برنامه کار پیشرو را در صورت نیاز تنظیم میکنند.
اسکرام روزانه به تیم کمک میکند:
- پیشرفت به سمت هدف اسپرینت را بررسی کند.
- مشکلات و موانع را سریعتر شناسایی کند.
- برنامه روزانه خود را با شرایط واقعی تطبیق دهد.
- هماهنگی و ارتباط بین اعضای تیم را افزایش دهد.
- سریعتر تصمیم بگیرد.
تیم میتواند ساختار Daily Scrum را خودش تعیین کند، به شرط آنکه جلسه بر پیشرفت به سمت Sprint Goal متمرکز باشد و در پایان، برنامه مشخصی برای ادامه کار شکل بگیرد.
۴. بررسی اسپرینت (Sprint Review)
Sprint Review در بخش پایانی اسپرینت برگزار میشود تا نتیجه کار انجامشده بررسی و درباره اقدامات بعدی تصمیمگیری شود.
در این رویداد، تیم اسکرام نتیجه اسپرینت را به ذینفعان کلیدی ارائه میکند و همراه با آنها بررسی میکند:
- چه چیزی در اسپرینت انجام شده است؟
- محصول چه تغییری کرده است؟
- شرایط بازار، کاربران یا محیط چه تغییری کرده است؟
- در ادامه چه کاری میتواند بیشترین ارزش را ایجاد کند؟
بر اساس این گفتگوها، Product Backlog نیز ممکن است تغییر کند.
بنابراین Sprint Review صرفاً یک جلسه نمایش یا ارائه محصول نیست؛ بلکه جلسهای کاری برای دریافت بازخورد و تصمیمگیری درباره مسیر آینده محصول است.
برای اسپرینت یکماهه، این رویداد حداکثر ۴ ساعت زمان دارد و برای اسپرینتهای کوتاهتر معمولاً کوتاهتر است.
۵. بازنگری اسپرینت (Sprint Retrospective)
آخرین رویداد رسمی اسپرینت Sprint Retrospective است.
در این جلسه، تیم بهجای تمرکز بر خود محصول، نحوه انجام کار را بررسی میکند تا راههایی برای افزایش کیفیت و اثربخشی پیدا کند.
تیم بررسی میکند:
- در اسپرینت گذشته چه چیزهایی خوب پیش رفت؟
- چه مشکلاتی ایجاد شد؟
- علت مشکلات چه بود؟
- تعامل و همکاری اعضای تیم چگونه بود؟
- فرآیندها و ابزارها چقدر مؤثر بودند؟
- چه چیزی را میتوان در اسپرینت بعدی بهتر انجام داد؟
در پایان، تیم مهمترین اقدامهای بهبود را مشخص میکند و ممکن است بعضی از آنها را حتی وارد Sprint Backlog اسپرینت بعدی کند.
برای اسپرینت یکماهه، Sprint Retrospective حداکثر ۳ ساعت زمان دارد و برای اسپرینتهای کوتاهتر معمولاً کوتاهتر است.
پالایش بکلاگ محصول (Product Backlog Refinement) چیست؟
Product Backlog Refinement یکی از پنج رویداد رسمی اسکرام نیست.
پالایش بکلاگ یک فعالیت مستمر است که در طول اسپرینت و در صورت نیاز انجام میشود. در این فرآیند، آیتمهای Product Backlog بررسی و شفافتر میشوند و ممکن است به بخشهای کوچکتر و دقیقتر تقسیم شوند.
در جریان Refinement معمولاً مواردی مانند موارد زیر روشنتر میشوند:
- شرح و هدف آیتم
- اندازه یا میزان کار موردنیاز
- ترتیب و اولویت نسبی
- جزئیات لازم برای درک بهتر کار
هدف این است که آیتمهای مهم Product Backlog برای اسپرینتهای آینده به اندازه کافی شفاف و قابل بررسی باشند.
رویدادهای اسکرام در یک نگاه
| رویداد | هدف اصلی | زمانبندی |
|---|---|---|
| Sprint | تبدیل ایده به ارزش | حداکثر یک ماه |
| Sprint Planning | تعیین هدف و برنامه اسپرینت | ابتدای اسپرینت |
| Daily Scrum | بررسی پیشرفت نسبت به Sprint Goal | هر روز کاری، ۱۵ دقیقه |
| Sprint Review | بررسی نتیجه و دریافت بازخورد | نزدیک پایان اسپرینت |
| Sprint Retrospective | بهبود روش کار تیم | پایان اسپرینت |

مصنوعات اسکرام (Scrum Artifacts)
مصنوعات اسکرام (Scrum Artifacts) اطلاعات مهم مربوط به کار و ارزش ایجادشده را به شکلی شفاف در اختیار تیم قرار میدهند. این مصنوعات کمک میکنند اعضای تیم و ذینفعان درک مشترکی از هدف، کارهای در حال انجام و نتیجه بهدستآمده داشته باشند.
در اسکرام سه مصنوع اصلی وجود دارد:
- بکلاگ محصول (Product Backlog)
- بکلاگ اسپرینت (Sprint Backlog)
- افزایش محصول (Increment)
هرکدام از این مصنوعات یک تعهد (Commitment) نیز دارند که باعث ایجاد تمرکز و امکان سنجش پیشرفت میشود:
| مصنوع اسکرام | تعهد مرتبط |
|---|---|
| Product Backlog | Product Goal؛ هدف محصول |
| Sprint Backlog | Sprint Goal؛ هدف اسپرینت |
| Increment | Definition of Done؛ تعریف انجامشده |
۱. بکلاگ محصول (Product Backlog)
Product Backlog فهرستی مرتب و پویا از کارهایی است که برای بهبود محصول موردنیاز هستند. این بکلاگ منبع اصلی کارهای تیم اسکرام است و با تغییر نیازهای کاربران، شرایط بازار و اطلاعات جدید، بهطور مستمر تکامل پیدا میکند.
آیتمهای بکلاگ محصول میتوانند شامل قابلیتهای جدید، بهبودها، اصلاح مشکلات یا سایر کارهای لازم برای افزایش ارزش محصول باشند.
در طول کار، آیتمهای مهمتر Product Backlog بهتدریج پالایش میشوند؛ یعنی به بخشهای کوچکتر و دقیقتر تقسیم شده و جزئیات بیشتری مانند توضیح، ترتیب و اندازه آنها مشخص میشود.
تعهد Product Backlog: هدف محصول (Product Goal)
تعهد مرتبط با بکلاگ محصول، Product Goal یا هدف محصول است.
هدف محصول وضعیت یا هدفی در آینده را مشخص میکند که تیم اسکرام قصد دارد به آن برسد. Product Backlog مسیر رسیدن به این هدف را شکل میدهد.
به بیان ساده:
Product Goal مشخص میکند به کجا میخواهیم برسیم و Product Backlog کارهایی را نشان میدهد که برای حرکت در این مسیر باید بررسی و انجام شوند.
تیم اسکرام در هر مقطع روی یک Product Goal تمرکز میکند و پیش از انتخاب هدف بعدی، باید هدف فعلی را محقق یا کنار بگذارد.
۲. بکلاگ اسپرینت (Sprint Backlog)
Sprint Backlog برنامه کاری توسعهدهندگان برای یک اسپرینت است.
این بکلاگ شامل سه بخش اصلی است:
- هدف اسپرینت (Sprint Goal)
- آیتمهای Product Backlog انتخابشده برای اسپرینت
- برنامهای برای تبدیل این آیتمها به یک Increment قابل استفاده
Sprint Backlog در جلسه Sprint Planning شکل میگیرد، اما یک برنامه ثابت و تغییرناپذیر نیست. توسعهدهندگان با کسب اطلاعات جدید در طول اسپرینت آن را بهروزرسانی میکنند.
این بکلاگ باید به اندازهای شفاف باشد که تیم بتواند پیشرفت خود به سمت هدف اسپرینت را در Daily Scrum بررسی کند.
تعهد Sprint Backlog: هدف اسپرینت (Sprint Goal)
تعهد مرتبط با بکلاگ اسپرینت، Sprint Goal یا هدف اسپرینت است.
هدف اسپرینت مشخص میکند تیم چرا این اسپرینت را انجام میدهد و قرار است چه ارزش یا نتیجهای ایجاد کند.
Sprint Goal باعث میشود اعضای تیم بهجای تمرکز بر مجموعهای از فعالیتهای پراکنده، روی یک هدف مشترک تمرکز کنند.
ممکن است در طول اسپرینت جزئیات Sprint Backlog تغییر کند، اما این تغییرات نباید هدف اسپرینت را به خطر بیندازند.
۳. افزایش محصول (Increment)
Increment نتیجه قابل استفادهای است که تیم اسکرام در مسیر دستیابی به Product Goal ایجاد میکند.
هر Increment روی نتایج قبلی ساخته میشود و باید با Incrementهای گذشته سازگار باشد تا محصول در وضعیت قابل استفاده باقی بماند.
در یک اسپرینت میتوان بیش از یک Increment ایجاد کرد و حتی ممکن است یک Increment پیش از پایان اسپرینت در اختیار کاربران قرار گیرد. بنابراین ارائه محصول الزاماً به Sprint Review محدود نمیشود.
اما یک کار تنها زمانی بخشی از Increment محسوب میشود که معیارهای Definition of Done را برآورده کرده باشد.
تعهد Increment: تعریف انجامشده (Definition of Done)
تعهد مرتبط با افزایش محصول، Definition of Done یا تعریف انجامشده است.
Definition of Done مجموعهای از معیارهاست که مشخص میکند یک Increment چه زمانی واقعاً کامل و مطابق استانداردهای کیفی محصول است.
برای مثال، در یک تیم نرمافزاری Definition of Done ممکن است شامل مواردی مانند:
- تکمیل توسعه قابلیت
- انجام تستهای لازم
- برطرف شدن خطاهای ضروری
- انجام بازبینی موردنیاز
- آماده بودن قابلیت برای استفاده
باشد.
این معیارها در هر محصول و سازمان میتوانند متفاوت باشند.
اگر یک آیتم Product Backlog شرایط Definition of Done را برآورده نکرده باشد، نمیتوان آن را بخشی از Increment در نظر گرفت و حتی نباید در Sprint Review بهعنوان کار تکمیلشده ارائه شود. چنین کاری برای بررسیهای بعدی به Product Backlog بازمیگردد.
ارتباط مصنوعات اسکرام با یکدیگر
سه Artifact اسکرام در واقع سه سطح از کار تیم را نشان میدهند:
Product Goal → Product Backlog → Sprint Goal → Sprint Backlog → Increment → Definition of Done
برای مثال، فرض کنید هدف محصول یک فروشگاه اینترنتی این باشد که فرآیند خرید برای کاربران سریعتر و سادهتر شود.
Product Backlog میتواند شامل بهبود صفحه محصول، سادهسازی سبد خرید و ایجاد پرداخت سریع باشد.
در یک اسپرینت، تیم ممکن است هدف «کاهش مراحل پرداخت» را بهعنوان Sprint Goal انتخاب کند و فعالیتهای لازم را در Sprint Backlog قرار دهد.
در پایان کار، اگر قابلیت پرداخت جدید شرایط Definition of Done را داشته باشد، به یک Increment قابل استفاده تبدیل میشود.
به این ترتیب، مصنوعات و تعهدهای مرتبط با آنها کمک میکنند کار روزانه تیم همواره به هدف اسپرینت و در نهایت به هدف اصلی محصول متصل باقی بماند.

مثال اسکرام به زبان ساده
برای درک بهتر Scrum، فرض کنید یک تیم نرمافزاری قصد دارد قابلیت یادآوری سررسید وظایف را به یک نرمافزار مدیریت پروژه اضافه کند.
۱. تعیین هدف محصول و ثبت نیازها در Product Backlog
مالک محصول یا Product Owner بر اساس نیاز کاربران مشخص میکند که یکی از اهداف محصول، کاهش فراموششدن فعالیتهای مهم و سررسیدهاست.
برای رسیدن به این هدف، چند آیتم در Product Backlog قرار میگیرند؛ برای مثال:
- ارسال یادآوری قبل از سررسید فعالیت
- امکان انتخاب زمان یادآوری
- نمایش یادآوریهای فعال
- امکان لغو یا تغییر یادآوری
- ارسال اعلان برای فعالیتهای عقبافتاده
این موارد بر اساس ارزش و اهمیت مرتب میشوند.
۲. برنامهریزی اسپرینت
در جلسه Sprint Planning، تیم تصمیم میگیرد در اسپرینت دو هفتهای آینده روی مهمترین بخش این قابلیت تمرکز کند.
هدف اسپرینت میتواند این باشد:
«کاربر بتواند برای فعالیتهای دارای سررسید، یادآوری دریافت کند.»
سپس توسعهدهندگان تعدادی از آیتمهای Product Backlog را برای این اسپرینت انتخاب میکنند و آنها را در Sprint Backlog قرار میدهند.
برای مثال:
- طراحی تنظیمات یادآوری
- امکان انتخاب زمان ارسال یادآوری
- پیادهسازی ارسال اعلان
- تست سناریوهای مختلف
- نمایش وضعیت یادآوری در فعالیت
۳. اجرای اسپرینت
با شروع Sprint، توسعهدهندگان کار روی آیتمهای انتخابشده را آغاز میکنند.
در طول این مدت، اعضای تیم ممکن است طراحی رابط کاربری، برنامهنویسی، تست و سایر فعالیتهای لازم را انجام دهند.
Sprint Backlog نیز در صورت کسب اطلاعات جدید میتواند جزئیتر یا اصلاح شود، اما تغییرات نباید Sprint Goal را به خطر بیندازند.
۴. برگزاری Daily Scrum
در هر روز کاری، توسعهدهندگان یک Daily Scrum کوتاه برگزار میکنند و پیشرفت خود را نسبت به هدف اسپرینت بررسی میکنند.
برای مثال ممکن است مشخص شود:
- بخش تنظیم زمان یادآوری تکمیل شده است.
- ارسال اعلان هنوز با یک مشکل فنی مواجه است.
- یکی از اعضای تیم برای حل این مشکل به همکاری فرد دیگری نیاز دارد.
تیم بر اساس این اطلاعات، برنامه کار خود را برای ادامه اسپرینت تنظیم میکند.
۵. ایجاد Increment
در پایان کار، قابلیت یادآوری باید مطابق معیارهای Definition of Done تکمیل شده باشد.
برای مثال، Definition of Done این تیم میتواند شامل موارد زیر باشد:
- قابلیت بهطور کامل پیادهسازی شده باشد.
- تستهای لازم انجام شده باشند.
- خطای مهمی باقی نمانده باشد.
- قابلیت روی محیط موردنظر قابل استفاده باشد.
- مستندات ضروری تکمیل شده باشند.
اگر این شرایط رعایت شده باشند، قابلیت یادآوری به یک Increment قابل استفاده تبدیل میشود.
۶. Sprint Review
در جلسه Sprint Review، تیم قابلیت جدید را به ذینفعان نمایش میدهد و بازخورد دریافت میکند.
برای مثال کاربران یا مدیر محصول ممکن است پیشنهاد دهند:
- امکان ارسال چند یادآوری برای یک فعالیت اضافه شود.
- یادآوری از طریق ایمیل نیز ارسال شود.
- کاربر بتواند زمان پیشفرض یادآوری را تعیین کند.
این بازخوردها میتوانند به آیتمهای جدیدی در Product Backlog تبدیل شوند.
۷. Sprint Retrospective
در پایان اسپرینت، اعضای تیم در جلسه Sprint Retrospective درباره نحوه انجام کار صحبت میکنند.
برای مثال ممکن است به این نتیجه برسند که:
- هماهنگی بین توسعه و تست دیر انجام شده است.
- تعریف آیتمهای Sprint Backlog باید دقیقتر باشد.
- بهتر است تست برخی قابلیتها از روزهای ابتدایی Sprint شروع شود.
تیم یکی یا چند اقدام مشخص برای بهبود روش کار در اسپرینت بعدی انتخاب میکند.
نتیجه این مثال
در این مثال، Scrum به تیم کمک کرد یک قابلیت بزرگ را به بخشهای کوچکتر تقسیم کند، در یک بازه کوتاه روی مهمترین بخش تمرکز کند، مرتب پیشرفت را بررسی کند و پس از دریافت بازخورد، مسیر توسعه محصول را بهبود دهد.
به همین دلیل در اسکرام هدف فقط «انجام تعدادی وظیفه» نیست؛ بلکه تیم در هر Sprint تلاش میکند یک نتیجه قابل استفاده و ارزشمند ایجاد کند و همزمان از تجربه خود برای بهتر شدن استفاده کند.
تفاوت اسکرام و چابک (Agile) چیست؟
اسکرام و چابک یا Agile ارتباط نزدیکی با یکدیگر دارند، اما مترادف نیستند. Agile یک رویکرد و مجموعهای از ارزشها و اصول برای انجام کار بهصورت انعطافپذیر، تدریجی و مبتنی بر بازخورد است؛ در حالی که Scrum یک چارچوب مشخص برای بهکارگیری این تفکر در عمل محسوب میشود.
به بیان ساده:
Agile میگوید چگونه درباره انجام کار و ایجاد ارزش فکر کنیم؛ Scrum ساختاری مشخص ارائه میدهد که تیم بتواند بسیاری از این اصول را در عمل اجرا کند.
Agile چیست؟
تفکر چابک بر همکاری با مشتری، پاسخگویی به تغییرات، تحویل مستمر ارزش و یادگیری از بازخورد تأکید دارد.
در یک رویکرد Agile، تیم تلاش میکند بهجای برنامهریزی سنگین و ثابت برای کل مسیر، کار را در بخشهای کوچکتر پیش ببرد، مرتب نتیجه را بررسی کند و با کسب اطلاعات جدید، مسیر خود را اصلاح کند.
یکی از اصول مهم Agile نیز تحویل زودهنگام و مستمر خروجی ارزشمند است. بنابراین برخلاف تصور رایج، در Agile قرار نیست حتماً تا پایان کل پروژه برای تحویل نتیجه منتظر بمانیم.
Scrum چیست؟
Scrum یکی از چارچوبهایی است که میتوان برای اجرای کار به شیوه چابک از آن استفاده کرد.
این چارچوب ساختار مشخصی برای کار تیمی ایجاد میکند و مفاهیمی مانند موارد زیر را تعریف میکند:
- Scrum Team
- Sprint
- Product Backlog
- Sprint Backlog
- Sprint Planning
- Daily Scrum
- Sprint Review
- Sprint Retrospective
در Scrum، کار در دورههای زمانی کوتاهی به نام اسپرینت انجام میشود و تیم در هر Sprint تلاش میکند حداقل یک Increment قابل استفاده و ارزشمند ایجاد کند.
تفاوت Agile و Scrum در یک نگاه
| موضوع | Agile | Scrum |
|---|---|---|
| ماهیت | مجموعهای از ارزشها و اصول | چارچوبی مشخص برای انجام کار |
| دامنه | مفهوم گستردهتر | یکی از چارچوبهای سازگار با تفکر Agile |
| ساختار | ساختار واحد و الزامی تعیین نمیکند | رویدادها، مصنوعات و مسئولیتهای مشخص دارد |
| دورههای کاری | به روش انتخابشده بستگی دارد | کار در Sprintهای حداکثر یکماهه انجام میشود |
| نقشها | نقش مشخصی را الزامی نمیکند | Product Owner، Scrum Master و Developers را تعریف میکند |
| بازخورد | بر دریافت مستمر بازخورد تأکید دارد | بازخورد بهصورت ساختاریافته، از جمله در Sprint Review، دریافت میشود |
| تغییرات | استقبال از تغییر یکی از اصول مهم آن است | تغییرات پذیرفته میشوند، اما نباید Sprint Goal را به خطر بیندازند |
| تحویل ارزش | تحویل زودهنگام و مکرر ارزش را تشویق میکند | در هر Sprint برای ایجاد Increment ارزشمند تلاش میشود |
آیا Scrum و Agile یک چیز هستند؟
خیر. Scrum زیرمجموعه یا معادل کامل Agile نیست به این معنا که Agile فقط Scrum باشد.
Agile مجموعه گستردهتری از ارزشها و اصول است و برای اجرای آن میتوان از رویکردها و چارچوبهای مختلف استفاده کرد. Scrum یکی از شناختهشدهترین چارچوبهایی است که با اصول چابک سازگاری زیادی دارد.
بنابراین ممکن است یک تیم Agile باشد، اما الزاماً از Scrum استفاده نکند.
تفاوت اسکرام و کانبان چیست؟
Scrum و Kanban هر دو میتوانند به تیمها برای مدیریت بهتر جریان کار کمک کنند، اما ساختار آنها متفاوت است.
در Scrum، کار معمولاً در Sprintهای با طول ثابت سازماندهی میشود و Scrum دارای مسئولیتها، رویدادها و مصنوعات مشخصی است. در Kanban تمرکز اصلی بر جریان پیوسته کار، محدودکردن کار در حال انجام (WIP) و شناسایی گلوگاهها است و الزاماً Sprint یا نقشهای Scrum وجود ندارد.
به همین دلیل، انتخاب بین Scrum و Kanban به نوع کار، میزان تغییرات و شیوه فعالیت تیم بستگی دارد.
مزایای استفاده از چهارچوب اسکرام
روش اسکرام برای تیمهایی که نیاز به تحویل مکرر محصولات دارند، چه محصولاتی مانند کد و ویژگیهای نرمافزاری و چه پروژههایی مانند کمپینهای بازاریابی یا طراحیهای خلاقانه، مزایای متعددی به همراه دارد:
- سازگاری و انعطافپذیری بالا
اسکرام بهگونهای طراحی شده که امکان تطبیق با تغییرات بازار و درسهای آموخته شده از اسپرینتهای قبلی را فراهم کند. این ویژگی به تیمها اجازه میدهد مسیر خود را بهراحتی تنظیم کرده و از بازخوردها بهرهمند شوند.
- وضوح در نقشها و انتظارات
از آنجایی که در اسکرام نقشها و مسئولیتها بهطور شفاف تعریف شدهاند، هر عضو تیم دقیقاً میداند چه کاری باید انجام دهد. این شفافیت، سردرگمی را کاهش داده و همکاری را بهبود میبخشد.
- تمرکز بر اولویتها و بازگشت سرمایه (ROI)
اسکرام به تیمها کمک میکند تا کارهایی را انجام دهند که بیشترین ارزش را برای مشتری یا کسبوکار دارند. با توجه به ماهیت افزایشی فرآیند، بخشهای حیاتی و تأثیرگذار پروژه میتوانند زودتر منتشر شوند.
- کاهش ریسک پروژه
اجرای تدریجی پروژه و دریافت مداوم بازخورد باعث میشود که مشکلات زودتر شناسایی شوند و از بروز اشتباهات بزرگ جلوگیری شود. این موضوع موجب بهبود کیفیت نهایی محصول خواهد شد.
درباره مدیریت ریسک پروژه بیشتر بخوانید.
محدودیتها و چالشهای چهارچوب اسکرام و راهحلهای پیشنهادی
با وجود مزایای زیاد، اسکرام نیز بدون چالش نیست. در ادامه به برخی از محدودیتهای رایج و راهحلهای آنها اشاره شده است:
- خطر خزش از محدوده (Scope Creep)
از آنجایی که اسکرام پذیرای تغییرات است، در صورت نبود هدفگذاری و مدیریت صحیح، ممکن است پروژه وارد چرخهای از تکرارهای بدون خروجی مشخص شود.
راهحل: اهداف هر اسپرینت را بهروشنی تعریف کنید و درباره مفهوم کار انجام شده بین اعضای تیم توافق حاصل کنید. همچنین میتوانید فرآیند مدیریت تغییر را برای کنترل ورودیها پیادهسازی کنید.
- تعداد زیاد جلسات
جلسات برنامهریزی، بررسی، بازنگری و استندآپهای روزانه میتوانند وقتگیر باشند و باعث خستگی تیم شوند.
راه حل: جلسات را هدفمندتر برگزار کنید. میتوانید مسئولیت مدیریت جلسات را بین اعضای تیم بچرخانید تا از دیدگاههای متنوع بهرهمند شوید.
- سختی پیادهسازی در تیمهای غیر فنی
اجرای اسکرام در تیمهایی خارج از حوزه توسعه نرمافزار (مانند منابع انسانی یا بازاریابی) میتواند دشوار باشد.
راهحل: پیش از شروع، بررسی کنید که اسکرام چگونه میتواند به حل مشکلات خاص تیم شما کمک کند. جلسات آموزشی و تمرینی در ابتدای مسیر میتواند تطبیق با این چهارچوب را آسانتر کند.
اجرای بهتر اسکرام به کمک نرمافزار بهتایم
در دنیای پرشتاب امروز، استفاده از چهارچوبهایی مانند اسکرام میتواند به تیمها کمک کند تا با سرعت، دقت و انعطاف بیشتری پروژههای خود را به انجام برسانند. اما برای اجرای مؤثر این چهارچوب، تنها دانستن اصول آن کافی نیست، ابزار مناسب نیز نقش مهمی ایفا میکند.
نرمافزار مدیریت پروژه بهتایم یک راهکار کاربردی است که بهخوبی میتواند از اجرای اسکرام پشتیبانی کند. این ابزار با مجموعهای از قابلیتهای هوشمند، تمام آنچه را که یک تیم اسکرام برای هماهنگی، برنامهریزی و پیگیری نیاز دارد، فراهم میکند:
چرا بهتایم برای اسکرام مفید است؟
- تسک بورد: بهتایم امکان ایجاد بوردهای بصری برای مدیریت وظایف اسپرینت را فراهم میکند تا تیمها مراحل انجام کار را بهوضوح دنبال کنند.
- تقویم و گانت چارت: به کمک تقویم کاری و نمودار گانت، تیم میتواند برنامهریزی زمانی دقیقی برای اسپرینتها، جلسات و وظایف داشته باشد.
- برگزاری جلسات: بهتایم امکان برنامهریزی، ثبت و پیگیری جلسات مهم اسکرام را دارد.
- گفتوگوی آنلاین: ارتباط در لحظه و تعامل بین اعضای تیم با ابزار گفتوگوی داخلی بهتایم تقویت میشود.
- مدیریت و گزارشدهی: مدیر محصول یا اسکرام مستر میتوانند از طریق داشبوردهای مدیریتی، روند پیشرفت وظایف و تحقق اهداف اسپرینت را بهراحتی پیگیری کنند.
- دربارهی مفاهیم مدیریت پروژه بیشتر بخوانید.
- دربارهی راهکارهای مدیریت وظایف هم بخوانید.
مراجع:
