اسکرام چیست؟
مقدمه
اسکرام چارچوبی است که به تیم ها کمک می کند تا با هم کار کنند. اسکرام مانند یک تیم راگبی (جایی که نام اصلی خود را از آن گرفته است) که برای یک بازی بزرگ تمرین می کند، تیم ها را تشویق می کند تا از طریق تجربیات یاد بگیرند، در حین کار بر روی یک مشکل خود سازماندهی کنند و در مورد برد ها و باخت های خود برای بهبود مستمر فکر کنند.
در حالی که اسکرامی که ما در مورد آن صحبت می کنیم، بیشتر توسط تیم های توسعه نرم افزار استفاده می شود، اصول و درس های آن را می توان برای انواع کار تیمی به کار برد. این یکی از دلایل محبوبیت اسکرام است. اسکرام که اغلب به عنوان یک چارچوب مدیریت چابک در نظر گرفته میشود، مجموعهای از جلسات، ابزارها و نقش هایی را توصیف میکند که برای کمک به تیمها در ساختار و مدیریت کارشان هماهنگ تر و چابک عمل میکنند. در این مقاله، چگونگی تشکیل چارچوب اسکرام سنتی را مورد بحث قرار خواهیم داد.
مردم اغلب فکر می کنند اسکرام و چابک یک چیز هستند زیرا اسکرام حول محور بهبود مستمر است، که یک اصل اصلی چابکی است. با این حال، اسکرام چارچوبی برای انجام کار است، در حالی که که چابکی یک ذهنیت است. شما واقعاً نمیتوانید «چابک» باشید، زیرا برای تغییر طرز فکر آنها در مورد ارائه ارزش به مشتریان، نیاز به تعهد کل تیم است. اما میتوانید از چارچوبی مانند اسکرام استفاده کنید تا به شما کمک کند تا اینگونه فکر کنید و اصول چابکی را در ارتباطات و کار روزمره خود تمرین کنید.
چرا اسکرام؟
چارچوب اسکرام خود، ساده است. قوانین، مصنوعات، رویدادها و نقش ها به راحتی قابل درک هستند. رویکرد نیمه تجویزی آن در واقع به رفع ابهامات در فرآیند توسعه کمک می کند، در حالی که فضای کافی را برای شرکت ها فراهم می کند تا تعریف فردی خود را به آن معرفی کنند.
سازماندهی وظایف پیچیده در داستان های کاربر قابل مدیریت، آن را برای پروژه های دشوار ایده آل می کند. همچنین، تعیین مشخص نقش ها و رویدادهای برنامه ریزی شده، شفافیت و مالکیت جمعی را در سراسر چرخه توسعه تضمین می کند. انتشار سریع تیم را با انگیزه نگه می دارد و کاربران را خوشحال می کند زیرا می توانند پیشرفت را در مدت زمان کوتاهی مشاهده کنند.
ارزش های کلیدی اسکرام
اسکرام بر ۵ ارزش کلیدی شجاعت، تمرکز، تعهد، احترام و گشودگی تاکید دارد که جزئیات آن در شکل ۱، نشان داده شده است:
شکل 1: ارزش های کلیدی اسکرام
ساختار اسکرام
چارچوب اسکرام اکتشافی و تجربه محور است. مبتنی بر یادگیری مستمر و سازگاری با عوامل متغیر است. اسکرام اعتراف می کند که تیم در شروع یک پروژه همه چیز را نمی داند و از طریق تجربه تکامل می یابد. اسکرام به گونهای طراحی شده است که به تیمها کمک میکند تا به طور طبیعی با شرایط در حال تغییر و نیازهای کاربر سازگار شوند، با اولویتبندی مجدد در فرآیند و چرخههای انتشار کوتاه تا تیم شما بتواند دائماً یاد بگیرد و بهبود یابد.
شکل 2: شماتیک مراحل اسکرام
در حالی که اسکرام ساختار یافته است، اما منعطف است. اجرای آن می تواند متناسب با نیازهای هر سازمانی باشد.
اصطلاحات و تعاریف اسکرام
بیایید با شناسایی سه آرتیفکت یا مصنوع در اسکرام شروع کنیم. مصنوعات چیزی هستند که ما می سازیم، مانند ابزاری برای حل یک مشکل. در اسکرام، این سه آرتیفکت عبارتند از بک لاگ محصول، بک لاگ اسپرینت و تعریف شما از انجام شد (DoD: Definition of Done). اینها سه مصنوع ثابت در یک تیم اسکرام هستند که همچنان به بازبینی و اصلاح و بهبود نیاز دارند.
- بک لاگ محصول: لیست اولیه کارهایی است که باید انجام شوند و توسط مالک محصول نگهداری می شود. این فهرستی پویا از ویژگیها، نیازمندیها، پیشرفتها و اصلاحات است که به عنوان ورودی برای بک لاگ اسپرینت عمل میکند. این اساساً لیست “کارهای” تیم است. این لیست دائماً توسط مالک محصول مورد بازبینی، اولویت بندی و نگهداری قرار می گیرد، زیرا، همانطور که پیشتر می آموزیم، با تغییر بازار، ممکن است موارد دیگر مرتبط نباشند یا مشکلات به روش های دیگر حل شوند.
- اپیک: یک ابتکار فراگیر که شامل استوری های متعدد است و ممکن است اسپرینت های زیادی را در بر گیرد. مثلا در بازاریابی چابک، یک کمپین چند مرحله ای یک اپیک در نظر گرفته می شود.
- بک لاگ اسپرینت: لیستی از آیتم ها، داستان های کاربر یا رفع اشکال ها است که توسط تیم توسعه برای پیاده سازی در چرخه اسپرینت فعلی انتخاب شده است. قبل از هر اسپرینت، در جلسه برنامه ریزی اسپرینت تیم انتخاب می کند که روی چه مواردی از لیست بک لاگ محصول برای اسپرینت کار کند. یک بک لاگ اسپرینت ممکن است انعطافپذیر باشد و در طول یک اسپرینت تکامل یابد. با این حال، هدف اصلی اسپرینت – چیزی که تیم می خواهد از اسپرینت فعلی بدست آورد – نباید به خطر بیفتد.
- خروجی افزایشی (هدف اسپرینت): محصول نهایی قابل استفاده از یک اسپرینت است. ما معمولاً «افزایش» را در طول نمایش پایانی اسپرینت نشان میدهیم، جایی که تیم نشان میدهد چه چیزی در اسپرینت کامل شده است. ممکن است کلمه “افزایش” را در دنیا نشنیده باشید، زیرا اغلب به عنوان تعریف تیم از “انجام شد”، نقطه عطف، هدف اسپرینت، یا حتی یک نسخه کامل ارسال شده از آن یاد می شود. این فقط به این بستگی دارد که تیم شما چگونه «انجام شد» را تعریف میکند و شما چگونه اهداف اسپرینت خود را تعریف میکنید.
- به عنوان مثال، برخی از تیم ها تصمیم می گیرند در پایان هر اسپرینت، چیزی را برای مشتریان خود عرضه کنند. بنابراین تعریف آنها از “انجام شد” “ارسال شده” خواهد بود. با این حال، این ممکن است در مورد سایر تیم ها صدق نکند. فرض کنید روی یک محصول مبتنی بر سرور کار می کنید که فقط می تواند هر سه ماه یک بار برای مشتریان شما ارسال شود. هنوز هم ممکن است انتخاب کنید که در اسپرینت ۲ هفتهای کار کنید، اما تعریف شما از «انجام شد» ممکن است تکمیل بخشی از نسخه بزرگتری باشد که قصد دارید با هم ارسال کنید. مسلماً، هر چه زمان بیشتری برای انتشار نرمافزار طول بکشد، احتمال اینکه نرمافزار دیگر ارزشمند نباشد، بیشتر میشود.
حتی در درون این اصطلاحات نیز، تغییرات زیادی وجود دارد که تیم شما می تواند آنها را تعریف کند. به همین دلیل مهم است که تعاریف شما و تیم شما از ابتدا مشخص و همگام با روحیات تیم باشد.
شکل 3: چارچوب اسکرام
جلسات یا رویدادهای اسکرام
برخی از اجزای شناخته شده چارچوب اسکرام مجموعه ای از رویدادها، مراسم یا جلسات متوالی است که تیم های اسکرام به طور منظم انجام می دهند. جلسه جایی است که ما بیشترین تنوع را برای تیم ها می بینیم. به عنوان مثال، برخی از تیم ها انجام همه این جلسات را دست و پا گیر و تکراری می دانند، در حالی که برخی دیگر از آنها به عنوان یک بررسی ضروری یاد می کنند. توصیه ما این است که از همه جلسات برای اسپرینت استفاده کنید و ببینید چه حسی دارد. سپس میتوانید یک یکپارچه سازی با روند توسعه سریع انجام دهید و ببینید که در کجا ممکن است نیاز به تنظیم داشته باشید.
در زیر لیستی از تمام جلسات کلیدی که یک تیم اسکرام ممکن است در آنها شرکت کند آورده شده است:
- بک لاگ را سازماندهی کنید: گاهی اوقات این رویداد به عنوان نظافت بک لاگ یا Backlog Refinement شناخته می شود، مسئولیت این رویداد به عهده مالک محصول است. شغل اصلی مالک محصول هدایت محصول به سمت چشم انداز محصول و داشتن نگاه دقیق به بازار و مشتری است. بنابراین، او این لیست را با استفاده از بازخورد کاربران و تیم توسعه تهیه می کند تا به اولویت بندی و تمیز نگه داشتن و آماده نگه داشتن لیست در هر زمان معین کمک کند.
- برنامه ریزی اسپرینت: کاری که قرار است در طول اسپرینت فعلی انجام شود. این جلسه توسط کل تیم توسعه برنامه ریزی شده است. این جلسه توسط اسکرام مستر هدایت می شود و جایی است که تیم در مورد هدف اسپرینت تصمیم می گیرد. سپس داستانهای کاربر خاص از بک لاگ محصول به اسپرینت اضافه میشوند. این داستان ها همیشه با هدف اسپرینت هماهنگ هستند و همچنین توسط تیم اسکرام توافق میشوند تا در طول اسپرینت اجرا شوند.در پایان جلسه برنامه ریزی، هر عضو اسکرام باید بداند چه چیزی می تواند در اسپرینت ارائه شود و چگونه پیشرفت میکند.در اسکرام و برای یک اسپرینت یک ماهه، برنامه ریزی اسپرینت خود را حداکثر تا ۸ ساعت تنظیم کنید و با همین نسبت این زمان را اصلاح کنید..
- اسپرینت: دوره ی زمانی واقعی است که تیم اسکرام با هم کار می کند تا یک افزایش را به پایان برساند. دو هفته طول معمولی برای اسپرینت است، اگرچه برخی از تیمها یک هفته یا یک ماه را برای ارائه یک افزایش، ارزشمند میدانند. دیو وست، از Scrum.org توصیه می کند که هر چه کار پیچیده تر و ناشناخته تر باشد، اسپرینت باید کوتاه تر باشد. اما این واقعاً به تیم شما بستگی دارد، و اگر کار نکرد، نباید از تغییر آن بترسید. در این مدت، در صورت لزوم، می توان محدوده را دوباره بین مالک محصول و تیم توسعه مورد مذاکره قرار داد. این امر ماهیت تجربی اسکرام را تشکیل می دهد.همه رویدادها در طول اسپرینت اتفاق می افتد.
هنگامی که یک فاصله زمانی مشخص برای یک اسپرینت ایجاد شد، باید در طول دوره توسعه، ثابت باقی بماند. این به تیم کمک می کند تا از تجربیات گذشته بیاموزد و این بینش را در اسپرینت های آتی به کار گیرد.
- اسکرام روزانه یا جلسات ایستاده: این یک جلسه فوق العاده کوتاه روزانه است که معمولا صبح ها و در مکانی ساده و بصورت ایستاده اتفاق می افتد. بسیاری از تیم ها سعی می کنند جلسه را در 15 دقیقه کامل کنند، اما این فقط یک دستورالعمل است. این جلسه همچنین “استندآپ روزانه” نامیده می شود و تأکید دارد که باید سریع باشد. هدف اسکرام روزانه این است که همه اعضای تیم در یک جهت باشند، با هدف اسپرینت همسو باشند و برای 24 ساعت آینده برنامه ریزی کنند.
– جلسات ایستاده زمانی است که هر گونه نگرانی در مورد رسیدن به هدف اسپرینت یا هر مسدود کننده ای را بیان کنید.
یک راه متداول برای برگزاری جلسات ایستاده این است که هر عضو تیم به سه سوال در زمینه دستیابی به هدف اسپرینت پاسخ دهد:
- دیروز چه کار کردم؟
- امروز قصد دارم چه کار کنم؟
- آیا موانعی وجود دارد؟
(در نسخه اسکرام 2020، انتخاب سوالات جلسه ایستاده بر عهده تیم میباشد.)
- بازنگری اسپرینت: در پایان اسپرینت، تیم برای یک جلسه غیررسمی گرد هم میآید تا یک نسخه نمایشی ازخروجی افزایشی را مشاهده کند یا آن را بررسی کند. تیم توسعه اقلام عقب مانده که اکنون «انجام شد» هستند را به مالک محصول یا سایر ذینفعان دعوت شده از سوی وی و همچنین هم تیمی ها، برای بازخورد نشان می دهد. مالک محصول می تواند تصمیم بگیرد که آیا این افزایش را منتشر یا تائید کند یا خیر.این جلسه بازنگری همچنین زمانی است که مالک محصول بر اساس اسپرینت فعلی، بک لاگ محصول را دوباره تنظیم می کند، که می تواند به جلسه برنامه ریزی اسپرینت بعدی وارد شود.در اسکرام و برای یک اسپرینت یک ماهه، بررسی اسپرینت خود را حداکثر تا 4 ساعت تنظیم کنید و با همین نسبت این زمان را اصلاح کنید.
- جلسه اسپرینت گذشته نگر یا :Retro این جلسه جایی است که تیم گرد هم می آیند تا مستندسازی کنند و درباره مواردی که در یک اسپرینت، یک پروژه، افراد یا روابط، ابزارها یا حتی برای مراسم خاص مؤثر بوده و یا نبوده، بحث کنند. ایده این است که مکانی ایجاد شود که در آن تیم بتواند روی چیزهایی که خوب پیش رفته و برای دفعه بعد باید بهبود یابد تمرکز کند و همچنین به این فکر کند کهچه اصلاحاتی برای رفع اشتباهات باید انجام گیرد.
شکل 4: چرخه جلسات اسکرام
سه نقش اساسی برای اسکرام
یک تیم اسکرام به سه نقش خاص نیاز دارد: مالک محصول، اسکرام مستر و تیم توسعه. از آنجایی که تیمهای اسکرام دارای عملکرد متقابل هستند، تیم توسعه علاوه بر توسعهدهندگان شامل آزمایشکنندگان، طراحان، متخصصان و مهندسان عملیات میشود.
(در نسخه اسکرام ۲۰۲۰، این سه نقش، در قالب یک نقش و آن هم تیم اسکرام، یکپارچه شده است.)
مالک محصول
مالکان محصول برای محصول خود قهرمان هستند. آنها بر درک نیازهای کسب و کار، مشتری و بازار متمرکز هستند، سپس بر این اساس کاری را که باید توسط تیم توسعه انجام شود، اولویت بندی می کنند. مالکان محصول موثر:
- بک لاگ محصول را می سازند و مدیریت میکنند.
- از نزدیک با کسب و کار و تیم دز ازتباط هستند تا مطمئن شوند که همه، موارد کاری موجود در بک لاگ محصول را درک می کنند.
- به تیم، راهنمایی روشنی در مورد اینکه کدام ویژگیها را باید در مرحله بعد ارائه نمایند، میدهند.تصمیم می گیرند که چه زمانی محصول را با توجه به درخواست های دریافتی، ارسال کنند.
تمرکز صاحبان محصول بر این است که تیم توسعه بیشترین ارزش را برای کسب و کار ارائه دهد. همچنین، مهم است که مالک محصول یک فرد باشد. هیچ تیم توسعهای نمیخواهد از چندین مالک محصول راهنمایی شود.
اسکرام مستر
اسکرام مسترها قهرمان اسکرام در تیم خود هستند. آنها تیم ها، صاحبان محصول و کسب و کار را در فرآیند اسکرام راهنمایی می کنند و به دنبال راه هایی برای تنظیم دقیق عملکرد تیم هستند.
یک استاد اسکرام کارآمد، عمیقاً کار انجام شده توسط تیم را درک می کند و می تواند به تیم کمک کند تا شفافیت و جریان تحویل خود را بهینه کند. او منابع مورد نیاز (اعم از انسانی و تدارکاتی) را برای برنامهریزی اسپرینت، استندآپ، بازبینی اسپرینت، و اسپرینت گذشته نگر برنامهریزی میکند.
تیم توسعه
تیم توسعه کارها را انجام می دهند. آنها قهرمانان شیوه های توسعه پایدار هستند. مؤثرترین تیمهای اسکرام، گروههای فشرده، در محل مشترک و معمولاً کمتر از 10 نفر هستند. یک راه برای تعیین اندازه تیم استفاده از قانون معروف «دو پیتزا» است که توسط جف بزوس، مدیر عامل آمازون ابداع شده است: (تیم باید به اندازه کافی کوچک باشد که بتواند با دو پیتزا سیر شود.)
اعضای تیم مجموعه مهارتهای متفاوتی دارند و به یکدیگر آموزش میدهند تا هیچ فردی در تحویل کار به نقطه ضعف تیم تبدیل نشود. تیمهای اسکرام قوی، خود سازمانده و خود مدیریتی کار میکنند و با نگرش واضح «ما» به پروژههای خود نزدیک میشوند. همه اعضای تیم به یکدیگر کمک می کنند تا از اتمام موفقیت آمیز اسپرینت اطمینان حاصل کنند.
تیم اسکرام برای هر اسپرینت برنامه را اجرا می کند. آنها پیشبینی میکنند که چقدر کار را میتوانند در طول اسپرینت با استفاده سرعا کار تیمی که از اسپرینت قبلی خود به عنوان راهنما میدانند، تکمیل کنند. ثابت نگه داشتن طول اسپرینت به تیم توسعه بازخورد مهمی در مورد تخمین و فرآیند تحویل می دهد، که به نوبه خود باعث می شود پیش بینی های آنها در طول زمان دقیق تر شود.
شکل 5: ارتباط نقش های کلیدی در اسکرام
تغییرات اسکرام 2020
اسکرام ۲۰۲۰، که آخرین نسخه منتشر شده چارچوب اسکرام توسط شوابر و ساترلند (طراحان اسکرام) می باشد تغییرات وسیعی کرده است.
در این نسخه، تمرکز اصلی چارچوب اسکرام بر اهداف و ارزش ها و ارایه راهکارهای کمتر و تاکید بیشتر بر تجربه محوری و کشف کردن توسط تیم می باشد. علاوه بر آن دیگر همه نقش های اسکرام در قالب یک تیم واحد، یعنی تیم اسکرام فعال هستند.
در اسکرام ۲۰۲۰، عبارت نقش یا Role حذف شده و جایگزین آن از عبارات پاسخگو و مسئول استفاده شده است تا از بوجود آمدن سیلوهای انسانی جلوگیری شده و انسجام و تمرکز تیم، بر روی کار تیمی بماند.
در واقع، اکنون فقط یک تیم اسکرام وجود دارد که روی یک هدف مشترک متمرکز شده است، با سه نوع مسئولیت متفاوت: مالک محصول، اسکرام مستر، توسعه دهندگان. پس از این به بعد مفهومی به نام، تیم توسعه وجود ندارد.
اسکرام ۲۰۲۰، از فضای IT خارج شده است و در صنایع دیگر مانند صنایع داروئی، حمل و نقل، آموزش و …هم استفاده می شود. لذا در اسکرام ۲۰۲۰، عبارت توسعه دهنده فقط به برنامه نویس اشاره ندارد و منظور همه افرادی هستند که مسئولیت توسعه محصول و ایجاد ارزش را دارند.
در راهنمای اسکرام ۲۰۲۰، از عبارت تیم خودمدیریتی به جای خودسازماندهی استفاده می شود. این به این معنی است که در داخل تیم تصمیم گرفته می شود که چرا،چه چیزی را، چه کسی و چگونه اجرا کند و افراد خارج تیم اجازه دخالت و کنترل بر تیم اسکرام را ندارند.
یکی از نقص های اسکرام، نداشتن مفهومی به عنوان هدف محصول بود. در واقع غافل شدن از استراتژی و چیستی محصول که در این نسخه برطرف شد.
راهنمای اسکرام ۲۰۲۰ مفهوم یک هدف محصول را ارائه داد تا تیم اسکرام را به سمت هدف با ارزش بزرگتر متمرکز کند. هر اسپرینت باید محصول را به هدف کلی محصول نزدیک کند. هدف محصول، توصیفی از وضعیت آینده محصول است که تیم اسکرام هنگام برنامه ریزی میتواند از آن به عنوان یک جهت و راهنما استفاده کند. بکلاگ محصول پدید آمده است تا مشخص نماید «چه» چیزی باعث برآورده شدن هدف محصول خواهد شد.
براساس اسکرام ۲۰۲۰، لازم نیست تعهدات جلسه اسپرینت گذشته نگر،در بک لاگ اسپرینت آورده شود و همچنین جزئیات کمتری راجع به کنسل کردن اسپرینت ارایه شده است. این به این معنی است که تیم ها می توانند براساس تجربه ای که کسب می کنند، تصمیم بگیرند و پیش بروند.
جمع بندی
درک کامل اسکرام زمان می برد، بخصوص اگر تیم توسعه مدل های آبشاری سازگار شده باشد. مفاهیم تکرارهای کوچکتر، جلسات روزانه اسکرام، بررسی های اسپرینت، و شناسایی اسکرام مستر می تواند یک تغییر فرهنگی چالش برانگیز برای یک تیم جدید باشد.
اما، مزایای دراز مدت اسکرام، بسیار بیشتر از منحنی یادگیری اولیه آن است. موفقیت اسکرام در توسعه محصولات سخت افزاری و نرم افزاری پیچیده در صنایع مختلف و بخش های متفاوت، آن را به چارچوبی قانع کننده برای پذیرش در سازمان شما تبدیل خواهد کرد.
دیدگاهتان را بنویسید