اسکرام – Scrum

اسکرام – Scrum

اسکرام

اسکرامScrum

اسکرام (scrum) یک روش گروهی برای تولید و توسعه نرم افزار است. این متدولوژی یک مدل تکراری (iterative) از متدولوژی  Agile برای حل مسایل پیچیده است. با اسکرام این امکان وجود خواهد داشت که مسایل پیچیده به راحتی مدیریت گردد.
در واقع اسکرام یک فرایند و یا تکنیک تولید محصول نیست، بلکه چارچوبی است که بوسیله آن می توان مدیریت تولید محصول را بهینه نمود.

متدولوژی اسکرام در سال ۱۹۸۶ در کشور ژاپن توسط Hirotaka Takeuchi و Ikujiro Nonaka برای اولین بار اختراع شد. اسکرام در دهه ۹۰ میلادی توسط Ken Schwober و Jeff Stherland توسعه داده شد و به عنوان یک متدولوژی رسمی جهت تولید محصولات نرم افزاری شناخته و به کار گرفته شد.

هسته اصلی اسکرام را اسپرینت ها تشکیل می دهند. در متدولوژی های تکرار شونده (iterative) دوره های زمانی تکراری (iteration)وجود دارد که در این دوره ها به تدریج محصول کامل می گردد. بدین صورت که در تولید یک محصول، تعدادی تکرار در نظر گرفته می شود که در پایان دوره زمانی هر تکرار، یک محصول قابل ارائه وجود دارد. به این دوره های زمانی تکرار شونده در اسکرام اسپرینت (sprint) می گویند. در پایان هر اسپرینت، محصول کامل تر شده و در نهایت محصول نهایی تولید می گردد. هر اسپرینت دارای تعریفی است که در آن باید مشخص شده باشد که چه چیزی قرار است ساخته شود، نیازمندی ها، راهنمای ساخت و محصول خروجی نیز باید مشخص باشند.

مجموعه نیازمندی های عملیاتی و غیر عملیاتی (Functional and NonFunctional Requirements) پروژه، که مستند شده است را backlog گویند. مجموعه نیازمندی هایی که در هر اسپرینت باید تمام شوند sprint Backlog نامیده می شود. هر sprintcycle تا زمانی ادامه پیدا می کند که محصول آماده release باشد. بعد از release محصول ممکن است صاحب پروژه نیازمندی های جدیدی به پروژه اضافه نماید که به آن ها Product Backlog گویند.
مدت زمان هر اسپرینت بستگی به نوع پروژه دارد. این مدت زمان می تواند از یک هفته تا یک ماه متغیر باشد. هر اسپرینت باید دقیقا سر وقت به اتمام برسد و اگر به هر دلیلی در پایان اسپرینت محصول آماده نبود باید نیازمندی های sprint backlog به product backlog منتقل شوند.

در ابتدا و در هنگام شروع اسپرینت، جلسه ای با حضور تمام اعضای تیم تشکیل می شود و به همه افراد هدف نهایی اسپرینت و وظایف هریک از اعضای تیم شرح داده می شود.

وظایف مشخص شده در هر اسپرینت شامل سه جنبه است:

  • Transparency: تمامی جنبه های فرایند برای همه اعضای تیم(مشتری و تیم برنامه نویس) باید مشخص و واضح باشد.
  • Inception: اگر در هر مرحله، فرایند دچار انحراف شد، باید انحراف سریع تشخیص داده شود.
  • Adaption: انحراف های شناسایی شده، در کم ترین زمان ممکن باید تعدیل شوند.

در هر اسپرینت، جلسه ای به صورت روزانه با حضور اعضای تیم(تیم تولید و ذینفعان) انجام می شود تا پیشرفت های پروژه بررسی گردد. در این جلسات باید به سه پرسش زیر پاسخ داده شود:

  • چه پیشرفت هایی حاصل شده است؟
  • چه موفقیت هایی در اسپرینت بعدی حاصل می گردد؟
  • چه موانعی برسر راه ادامه کار وجود دارد؟

در انتهای هر اسپرینت جلسه ای برگزار می شود تا محصول نهایی به ذینفع یا ذینفعان نشان داده شود و نتیجه نهایی کار بررسی گردد.

 

نقش اسکرام

  • اسکرام مستر (scrum master) :رهبر اسکرام وظیفه دارد تا تمامی اعضای تیم را هدایت و راهنمایی نماید تا هیچ یک از اعضای تیم از چارچوب و قوانین اسکرام خارج نشوند. رهبر اسکرام نقش مدیر را ندارد بلکه تنها وظیفه رهبری تیم را بر عهده دارد تا با رفع مشکلات و موانع پیش رو(در صورتی که اعضای تیم قادر به رفع موانع نباشند.) ، اجرای اسکرام را بهبود بخشد.
  • نماینده صاحب پروژه و یا ذینفع (product owner) :صاحب پروژه با اعلام دقیق نیازمندی های خود به تیم تولید، با راهبر اسکرام و تیم تولید همکاری می نماید. صاحب پروژه باید به سوالات تیم پاسخ داده و همواره در دسترس باشد.
  • تیم تولید و توسعه نرم افزار (development team) :افراد این تیم در چارچوب قوانین اسکرام، به تولید آن چه که صاحب پروژه درخواست کرده است، می پردازند. تعداد اعضای تیم تولید نه باید آن قدر کم باشد که همکاری گروهی و کار تیمی بی معنا شود و نه آن قدر زیاد باشد که هماهنگی بین اعضای تیم تبدیل به امری دشوار و وقت گیر گردد. تعداد اعضای تیم تولید، بستگی به پروژه دارد اما معمولا ۶ تا ۹ نفر اعضای این تیم را تشکیل می دهند.

 هدف اسکرام جلوگیری از شکست های معمول در حین فرایند تولید و توسعه است. بوسیله اسکرام می توان از حداکثر توان و خلاقیت تیم تولید بهره برد. این متدولوژی در تعداد زیادی پروژه در سراسر دنیا توسط شرکت های مختلف مورد استفاده قرار گرفته و موفق بوده است.

 

 

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

تائید دیدگاه فعال است. دیدگاه شما ممکن است کمی طول بکشد تا ظاهر شود.