ویرگول
ورودثبت نام
شایان شلیله
شایان شلیلهاز سال ۱۳۸۰ تقریبا به صورت حرفه ای دارم توی فضای اینترنت کار میکنم. او‌ال‌سی، ای‌نتورک. پایگاه خبری وب سایت های ایران، جشنواره وب و موبایل ایران برخی از کارهای من توی این سال ها بوده
شایان شلیله
شایان شلیله
خواندن ۱۷ دقیقه·۵ ماه پیش

اجایل و اسکرام و اسپرینت

اسکرام (Scrum) و اجایل (Agile) هر دو چارچوب‌هایی برای مدیریت پروژه‌ها و بهبود فرآیند توسعه نرم‌افزار هستند و هدف آنها افزایش کارایی و پاسخگویی تیم‌ها به تغییرات است.

اجایل (Agile) اجایل یک رویکرد مدیریت پروژه است که بر اصول و ارزش‌های خاصی تأکید دارد. مهمترین ویژگی‌های اجایل شامل موارد زیر است:

توسعه تدریجی: پروژه‌ها به صورت مراحل کوچک و تعدادی از تسک‌ها انجام می‌شوند.
تعامل مداوم با مشتری: بازخورد مشتری در طول فرآیند توسعه برای بهبود محصول نهایی بسیار مهم است.
تطبیق‌پذیری: تیم‌ها می‌توانند به سرعت به تغییرات نیازهای مشتری پاسخ دهند.
تیم‌های خود سازمان‌دهی: اعضای تیم مسئولیت‌هایی را برای انجام تسک‌ها بر عهده می‌گیرند و تصمیم‌گیری‌ها به صورت جمعی انجام می‌شود.

اجایل Agile چیست؟

مانیفست اجایل (Agile Manifesto) یک سند بنیادی است که اصول و ارزش‌های رویکرد اجایل را تعیین می‌کند. این مانیفست در سال ۲۰۰۱ توسط گروهی از توسعه‌دهندگان نرم‌افزار ایجاد شد و هدف آن تعیین چهار ارزش و دوازده اصل کلیدی است که به تیم‌ها کمک می‌کند تا به رویکرد اجایل پایبند باشند.

چهار ارزش مانیفست اجایل

۱) افراد و تعاملات بیشتر از فرآیندها و ابزارها (Individuals and interactions over processes and tools): ارتباط مؤثر و همکاری نزدیک بین اعضای تیم و ذینفعان برای موفقیت پروژه اهمیت بیشتری دارد تا ابزارها و فرآیندها.

۲) نرم‌افزار کاربردی بیشتر از مستندات جامع (Working software over comprehensive documentation): تمرکز بر تولید نرم‌افزارهای قابل بهره‌برداری و عملکردی به جای صرف زمان زیاد بر روی مستندات به منظور تسهیل توسعه و بازخورد سریع‌تر.

۳) همکاری با مشتری بیشتر از مذاکره بر سر قرارداد (Customer collaboration over contract negotiation): همکاری و ارتباط نزدیک با مشتریان برای درک بهتر نیازهای آنها و ارائه محصولی مطابق با توقعات آنها، به جای تکیه بر الزامات قراردادی و رسمی.

۴) پاسخ به تغییرات بیشتر از پیروی از یک طرح (Responding to change over following a plan): اجایل به تغییرات به عنوان فرصتی برای بهبود محصولات نگاه می‌کند و تیم‌ها باید انعطاف‌پذیر باشند تا بتوانند به نیازهای متغیر مشتریان پاسخ دهند.

دوازده اصل اجایل

مانیفست اجایل همچنین دوازده اصل کلیدی دارد که شامل موارد زیر است:

  • رضایت مشتری (Customer satisfaction): اولویت اول بهبود رضایت مشتری از طریق تحویل سریع و مداوم نرم‌افزارهای کاربردی است.

  • تغییرات قابل قبول (Welcome changing requirements): پذیرش تغییرات حتی در مراحل پایانی توسعه برای بهبود نسبت به نیازهای مشتری.

  • تحویل مکرر نرم‌افزار (Deliver working software frequently): تحویل نرم‌افزار کاربردی به صورت مکرر و در فواصل زمانی کوتاه.

  • همکاری نزدیک (Business people and developers must work together): همکاری و ارتباط نزدیک بین افرادی که کسب‌وکار را می‌شناسند و توسعه‌دهندگان.

  • پروژه‌های پایدار (Sustainable development): تیم‌ها باید به صورت پایدار کار کنند و سرعت آنها باید قابل حفظ باشد.

  • توجه به کیفیت (Attention to quality): توجه به کیفیت و مهندسی به عنوان بخشی از توسعه.

  • سادگی (Simplicity): سادگی و کمینه‌سازی کارهایی که باید انجام شوند (به ویژه در برنامه‌ریزی) برای افزایش کارایی.

  • خودسازمان‌دهی (Self-organizing teams): تیم‌های خودسازمان‌ده برای حل مشکلات و رسیدن به اهداف.

  • بازخورد مداوم (Continuous feedback): استفاده از بازخورد مداوم برای بهبود کارایی پروژه.

  • متدولوژی‌های کارآمد (Efficient methodologies): توجه به متدولوژی‌های کارآمد و مناسب که به تیم‌ها اجازه می‌دهد به شکل کارامدی کار کنند.

  • چشم‌انداز مشترک (Shared vision): تیم‌ها برای دستیابی به یک دیدگاه مشترک و اهداف اصلی همکاری کنند.

  • توجه به بهبود مداوم (Continuous improvement): تیم‌ها باید به طور مداوم بهبود یابند، به ویژه پس از هر تکرار یا تحویل.

این دوازده اصل اساس کارکرد اجایل هستند و به تیم‌ها کمک می‌کنند تا به طور مؤثرتری کار کنند و به نیازهای مشتریان پاسخ دهند.

این سایت اصلی که میشه گفت برای متالوژی اجایل هست ولی خیلی سایت زشتی هست سایت رو در لینک https://agilemanifesto.org مشاهده کنید

حالا اسکرام (Scrum) چیه؟

اسکرام یکی از چارچوب‌های مشهور اجایل است که ساختار و فرآیندهایی برای مدیریت پروژه‌ها و توسعه نرم‌افزار ارائه می‌دهد. این چارچوب به تیم‌ها کمک می‌کند تا کارهای خود را با رویکردی دینامیک و انعطاف‌پذیر انجام دهند. اسکرام شامل نقش‌های خاصی از جمله مالک محصول (Product Owner)، اسکرام مستر (Scrum Master) و تیم توسعه (Development Team) است. این چارچوب از رویدادهایی مانند اسپرینت، جلسات روزانه، بازبینی و دمو تشکیل شده است.

  • نقش‌ها: اسکرام شامل سه نقش اصلی است: مالک محصول (Product Owner)، اسکرام مستر (Scrum Master) و تیم توسعه (Development Team).

  • اسپرینت‌ها: پروژه به دوره‌های زمانی کوتاه (معمولاً ۲ تا ۴ هفته) به نام اسپرینت تقسیم می‌شود. در پایان هر اسپرینت، یک قسمت از محصول آماده عرضه می‌شود.

  • جلسات روزانه: تیم در جلسات روزانه (Daily Stand-up) می‌نشینند تا پیشرفت‌ها، موانع و وظایف آینده را بررسی کنند.

  • بازبینی و بازخورد: در پایان هر اسپرینت، تیم عملکرد خود را ارزیابی کرده و بازخوردی از ذینفعان می‌گیرد.

در نتیجه، اجایل یک فلسفه کلی برای مدیریت پروژه است در حالی که اسکرام یک چارچوب خاص برای پیاده‌سازی این فلسفه است.

در خصوص اسکرام پیشنهاد میکنم که راهنمای اسکرام رو از لینک https://scrumguides.org/index.html دانلود کنید و حتما نسخه انگلیسی اون رو هم پیشنهاد میکنم که بخونید.

در اسکرام، سه نقش اصلی وجود دارد: مالک محصول (Product Owner) که مسئول مدیریت بک لاگ محصول، تعریف و اولویت‌بندی نیازها و جمع‌آوری بازخورد از مشتریان است؛ اسکرام مستر (Scrum Master) که نقش تسهیل‌کننده را ایفا می‌کند و به حذف موانع، تسریع فرآیندها و آموزش اعضای تیم کمک می‌کند؛ و تیم توسعه (Development Team) که شامل اعضای فنی است که مسئول پیاده‌سازی ویژگی‌ها و تسک‌ها به صورت خودسازمان‌دهی شده و با تخصص‌های مختلف هستند. این سه نقش با همکاری یکدیگر فرآیند توسعه نرم‌افزار را به نحو مؤثری مدیریت می‌کنند و به دستیابی به اهداف پروژه کمک می‌نمایند.

مالک محصول (Product Owner) کیه؟

مالک محصول نماینده مشتریان و ذینفعان است و مسئول مدیریت بک لاگ محصول است. او نیازهای مشتریان را شناسایی، تعریف و اولویت‌بندی می‌کند و اطمینان حاصل می‌کند که همه تسک‌ها به وضوح مشخص شده‌اند. این نقش حیاتی موجب می‌شود که تیم توسعه بر روی ویژگی‌های مهم و موردنیاز کار کند و همواره با بازخورد مشتریان در فرآیند توسعه هماهنگ باشد. همچنین، مالک محصول در جلسات بازبینی اسپرینت شرکت کرده و بر اساس بازخوردهای دریافتی تصمیماتی را برای بهبود محصول اتخاذ می‌کند.

اسکرام مستر (Scrum Master) کیه؟

اسکرام مستر نقش تسهیل‌کننده را برای تیم ایفا می‌کند و مسئولیت حذف موانع و چالش‌هایی که ممکن است بر عملکرد تیم تأثیر بگذارد، را بر عهده دارد. او به تیم کمک می‌کند تا بر اساس اصول اسکرام کار کند و فرآیندها را بهبود بخشد. این نقش شامل آموزش اعضای تیم در مورد اصول و فرآیندهای اجایل و اسکرام است و همچنین اسکرام مستر به عنوان پل ارتباطی بین تیم توسعه و ذینفعان عمل می‌کند تا اطمینان حاصل کند که ارتباطات به درستی برقرار است و همه اعضای تیم به اطلاعات لازم دسترسی دارند.

تیم توسعه (Development Team) چیه؟

تیم توسعه شامل اعضای فنی و متخصص است که مسئولیت پیاده‌سازی ویژگی‌ها و تسک‌های مشخص شده در بک لاگ محصول را به عهده دارند. این تیم باید خودسازمان‌دهی شده و وظایف خود را به طور مستقل مدیریت کند. همچنین، اعضای تیم معمولاً از مهارت‌ها و تخصص‌های مختلف برخوردارند، که به آنها اجازه می‌دهد که به طور همزمان بر روی کارهای مختلف کار کنند. هدف تیم توسعه ارائه یک محصول قابل عرضه (Potentially Shippable Product Increment) در پایان هر اسپرینت است و همکاری و تعامل موثر در این تیم برای موفقیت اسکرام بسیار ضروری است.

تیم توسعه (Development Team) در اسکرام معمولاً شامل اعضای فنی و متخصصین با مهارت‌های متنوع است که به طور جمعی مسئول توسعه و تحویل محصول هستند. استندارد (Standard) اعضای تیم توسعه به طور معمول شامل پوزیشن‌های زیر می‌باشد:

  • توسعه‌دهندگان (Developers): افرادی که وظیفه برنامه‌نویسی و کدنویسی نرم‌افزار را بر عهده دارند. آنها باید تجربه کار با زبان‌ها و فناوری‌های مورد نیاز پروژه را داشته باشند و قادر به حل مسائل فنی باشند.

  • طراحان (Designers): این دسته از اعضا مسئول طراحی رابط کاربری (UI) و تجربه کاربری (UX) هستند. آنها بر روی طراحی بصری و کاربرپسند محصول کار می‌کنند تا اطمینان حاصل شود که محصول نهایی به خوبی با نیازهای کاربران هماهنگ باشد.

  • تسترها (Testers یا QA Engineers): این اعضا مسئول تست و تضمین کیفیت نرم‌افزار هستند. آنها اطمینان حاصل می‌کنند که محصول نهایی بدون خطا و با کیفیت مناسب به مشتری ارائه شود و نیز در مراحل مختلف توسعه، تست‌های لازم را انجام می‌دهند.

  • معماران نرم‌افزار (Software Architects): این افراد مسئول طراحی ساختار کلی نرم‌افزار و اطمینان از اینکه اجزای مختلف سیستم به درستی با یکدیگر کار می‌کنند، هستند. آنها معمولاً در پروژه‌های بزرگ و پیچیده نقش‌های کلیدی ایفا می‌کنند.

  • مدیران پایگاه داده (Database Administrators): این دسته اعضا مسئول مدیریت و بهینه‌سازی پایگاه‌های داده مورد استفاده در پروژه هستند و اطمینان حاصل می‌کنند که داده‌ها به درستی ذخیره و بازیابی شوند.

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

در تیم توسعه (Development Team) معمولاً توسعه‌دهندگان به چندین زیرمجموعه تقسیم می‌شوند که به تخصص‌ها و فناوری‌های مختلف مرتبط هستند. این تقسیم‌بندی به تیم کمک می‌کند تا بتوانند به طور مؤثرتر بر روی پروژه‌ها کار کنند. زیرمجموعه‌های اصلی توسعه‌دهندگان عبارتند از:

  • توسعه‌دهندگان فرانت‌اند (Front-End Developers): این افراد مسئول طراحی و پیاده‌سازی رابط کاربری (UI) و تعاملات کاربری (UX) هستند. آنها با استفاده از زبان‌های برنامه‌نویسی مانند HTML، CSS و JavaScript، قسمت‌های بصری وب‌سایت یا برنامه‌های کاربردی را ایجاد می‌کنند و بر تجربه کاربر تمرکز دارند.

  • توسعه‌دهندگان بک‌اند (Back-End Developers): این دسته از توسعه‌دهندگان مسئول پیاده‌سازی منطق سرور، مدیریت پایگاه داده و ارتباطات بین کلاینت و سرور هستند. آنها معمولاً با زبان‌های برنامه‌نویسی مانند Python، Java، Ruby، PHP و SQL کار می‌کنند و بر روی عملکرد و امنیت سمت سرور تمرکز دارند.

  • توسعه‌دهندگان موبایل (Mobile Developers): این افراد به توسعه برنامه‌های کاربردی برای دستگاه‌های موبایل مشغول هستند و معمولاً با استفاده از فناوری‌هایی مانند Swift (برای iOS) و Kotlin یا Java (برای Android) کار می‌کنند. آنها باید به جزئیات خاص هر پلتفرم توجه کنند و مطمئن شوند که تجربه کاربری عالی را فراهم کنند.

سطح تجربه: Junior و Senior

در هر یک از این زیرمجموعه‌ها، توسعه‌دهندگان ممکن است در سطوح مختلفی از تجربه قرار بگیرند:

  • توسعه‌دهندگان Junior: این افراد معمولاً در مراحل ابتدایی کار خود هستند و تجربه کمتری دارند. آنها ممکن است تازه فارغ‌التحصیل شده باشند یا به تازگی وارد بازار کار شده باشند و به دنبال یادگیری و کسب تجربه بیشتر در زمینه توسعه هستند.

  • توسعه‌دهندگان Senior: این دسته معمولاً دارای تجربه قابل توجهی هستند و توانایی‌های پیشرفته‌تری در زمینه‌های فنی و مدیریتی دارند. آنها معمولاً مسئولیت‌های بیشتری را بر عهده دارند و می‌توانند به عنوان راهنما برای توسعه‌دهندگان جوان‌تر عمل کنند.

آیا در یک تیم استارتاپی کوچک به وجود یک CTO نیاز است یا یک Tech Lead کافی است؟

در یک تیم استارتاپی ۵ تا ۱۰ نفره، معمولاً وجود نقش CTO (Chief Technology Officer) ضروری نیست و به جای آن، وجود یک Tech Lead می‌تواند کافی باشد. در تیم‌های کوچک، اعضا به راحتی می‌توانند با یکدیگر همکاری کنند و ارتباطات مستقیم به سرعت صورت می‌گیرد، به همین دلیل نیازی به رهبری در سطح عالی که معمولاً CTO در سازمان‌های بزرگ‌تر ایفا می‌کند، احساس نمی‌شود. Tech Lead می‌تواند به طور عملیاتی بر روی جنبه‌های فنی پروژه تمرکز کند و تصمیم‌گیری‌های فنی را انجام دهد. همچنین، او می‌تواند مسئولیت هدایت تیم فنی را بر عهده بگیرد و به توسعه‌دهندگان جوان‌تر کمک کند تا مهارت‌های خود را تقویت کنند.

بکارگیری Tech Lead در یک استارتاپ کوچک همچنین به صرفه‌تر است، زیرا استخدام یک CTO ممکن است هزینه‌های راه‌اندازی را افزایش دهد. اعضای تیم در استارتاپ‌های کوچک معمولاً نقش‌های چندگانه‌ای دارند و به این ترتیب نیاز به یک مقام مدیریتی اضافی کمتر حس می‌شود. تیم می‌تواند با بهره‌گیری از یک Tech Lead که بر جنبه‌های فنی نظارت و هدایت می‌کند، به سرعت بر روی توسعه محصول متمرکز شود و قابلیت‌های خود را به بهترین نحو استفاده کند. در صورت رشد و نیاز به استراتژی‌های فناوری در آینده، این تیم می‌تواند به سمت استخدام یک CTO حرکت کند، اما در مراحل ابتدایی، وجود یک Tech Lead به طور مؤثری نیازهای فنی تیم را برآورده می‌کند.

حالا بیشتر بدونیم که اسپرینت (Sprint) چیه؟

اسپرینت یک بخش کلیدی از فرآیند اسکرام است و به دوره‌های زمانی کوتاه و معین اشاره دارد که در آنها تیم بر روی یک مجموعه مشخص از تسک‌ها کار می‌کند. هر اسپرینت معمولاً بین ۱ تا ۴ هفته به طول می‌انجامد و در پایان آن، تیم باید یک محصول قابل عرضه (Potentially Shippable Product Increment) ارائه دهد.

جزئیات جلسات مربوط به اسپرینت:

جلسه برنامه‌ریزی اسپرینت (Sprint Planning):

یکی از مراحل کلیدی در متدولوژی اسکرام است که برای تعیین اهداف و برنامه کاری تیم در طول یک اسپرینت جدید برگزار می‌شود. این جلسه معمولاً در ابتدای هر اسپرینت و با حضور تمامی اعضای تیم برگزار می‌گردد. هدف اصلی این جلسه، تعیین کارهایی است که تیم می‌تواند در طول مدت معین (معمولاً 2 تا 4 هفته) انجام دهد و به نتایج مشخصی برسد.

اهداف جلسه برنامه‌ریزی اسپرینت

  • تعریف اهداف اسپرینت: تیم باید اهداف مشخصی برای اسپرینت تعیین کند تا بر اساس آن‌ها کار کند. این اهداف باید قابل سنجش و قابل دستیابی باشند.

  • انتخاب کارهای مرتبط: تیم و Product Owner به بررسی backlog (فهرست کارها و ویژگی‌های مورد نیاز) پرداخته و کارهای مناسب را انتخاب می‌کنند که می‌توانند در طول اسپرینت انجام شوند.

  • تعیین وظایف: اعضای تیم باید وظایف مشخصی را برای هر کار تعیین کنند و اطمینان حاصل کنند که هر نفر به وضوح وظایف خود را درک کرده است.

جلسه برنامه‌ریزی اسپرینت (Sprint Planning) با تعیین اهداف اسپرینت آغاز می‌شود که تیم درباره نتایجی که می‌خواهد به دست آورد، گفت‌وگو می‌کند. پس از آن، اعضای تیم به بررسی backlog پرداخته و با همکاری Product Owner، کارهای مناسب را انتخاب می‌کنند. تیم وظایف مرتبط با هر کار را تجزیه و تحلیل کرده و زمان مورد نیاز برای انجام هر وظیفه را تخمین می‌زند.

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

در جلسه برنامه‌ریزی اسپرینت (Sprint Planning)، اعضای اصلی که حضور دارند شامل تیم توسعه، Product Owner و اسکرام مستر هستند. با این حال، افرادی که به این جلسه نمی‌آیند معمولاً شامل ذینفعان غیرضروری، مدیران غیر مرتبط با پروژه و هر کسی که به طور مستقیم در فرآیند توسعه تیم دخالت ندارد، می‌باشد. این کار به حفظ تمرکز جلسه و جلوگیری از حواس‌پرتی کمک می‌کند و به تیم اجازه می‌دهد تا بدون وقفه به تعیین اهداف و برنامه‌ریزی برای اسپرینت جدید بپردازند.

خلاصه:

  • این جلسه در ابتدای هر اسپرینت برگزار می‌شود.

  • هدف این جلسه تعیین اهداف اسپرینت و انتخاب تسک‌هایی است که تیم در طول اسپرینت باید به اتمام برساند.

  • اعضای تیم و مالک محصول درباره نیازها بحث می‌کنند و برنامه‌ریزی می‌کنند که چگونه تسک‌ها را انجام دهند.

  • بررسی و انتخاب کارهای مناسب از backlog به اولویت‌بندی نیازهای مشتری و پروژه می‌انجامد.

  • همکاری نزدیک میان Product Owner و تیم توسعه اطمینان می‌دهد که نیازهای واقعی مشتری در نظر گرفته می‌شود.

  • اسکرام مستر به عنوان تسهیل‌گر به برگزاری مؤثر جلسه و حفظ تمرکز و نظم کمک می‌کند.

  • این فرآیند به تیم‌ها اجازه می‌دهد تا با برنامه‌ای منسجم و هدفمند به سمت نتایج مطلوب حرکت کنند.

جلسات روزانه (Daily Stand-up):

جلسه روزانه یا Daily Stand-up یکی از اجزای کلیدی متدولوژی اسکرام است که معمولاً هر روز و در یک زمان معین برگزار می‌شود. هدف این جلسه کوتاه، معمولاً 15 دقیقه‌ای، ارتقاء هماهنگی و شفافیت در تیم است. در این جلسه، اعضای تیم به صورت ایستاده دور هم جمع می‌شوند و هر کدام به نوبت به سه سوال جواب می‌دهند: چه کار کرده‌ام؟ چه کاری می‌خواهم انجام دهم؟ و آیا موانعی برای کارم وجود دارد؟ این فرآیند به تیم کمک می‌کند تا به یکدیگر آگاه باشند و به گسترش همکاری و حل مشکلات به صورت سریع بپردازند.

  • این جلسه به صورت روزانه و معمولاً کوتاه (۱۵ دقیقه) برگزار می‌شود. در این جلسه، هر عضو تیم سه سؤال اصلی را پاسخ می‌دهد: "دیروز چه کار کردم؟ امروز چه کاری انجام می‌دهم؟ آیا موانعی پیش‌رو دارم؟"

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

در جلسه روزانه، اعضای تیم باید به سه سوال کلیدی پاسخ دهند: 1) چه کارهایی را در روز گذشته انجام داده‌اند؟ 2) چه کارهایی را در روز پیش رو برنامه‌ریزی کرده‌اند؟ و 3) آیا موانع یا چالش‌هایی در مسیرشان وجود دارد؟ همچنین، اعضای تیم باید به یکدیگر احترام بگذارند و به روشنی و صراحت صحبت کنند. جلسات باید مختصر و مفید باشند و از بحث‌های طولانی یا جزئیات اضافی دوری شود، چرا که هدف اصلی ارتقاء اطلاعات و تسهیل همکاری است. همچنین، اگر کسی موانعی را شناسایی کند، باید آن را به اسکرام مستر گزارش دهد تا در صورت نیاز راهکارهایی برای حل مشکل اندیشیده شود.

نباید های جلسه روزانه (Daily Stand-up)

در جلسه روزانه (Daily Stand-up) نباید مباحثه‌های طولانی یا گفتگوهای عمیق درباره مسائل فنی را انجام دهیم، چرا که این کار باعث از دست رفتن زمان و تمرکز جلسه می‌شود. همچنین، باید از بیان جزئیات زیاد در مورد کارهایی که انجام می‌دهیم خودداری کنیم و فقط به آگاهی از پیشرفت و شناسایی موانع بپردازیم. اگر عضوی موانعی را شناسایی کند، جلسه نباید به حل این مشکلات تبدیل شود، بلکه باید به اسکرام مستر منتقل شود تا در جلسات جداگانه بررسی گردد.

حضور افراد غیرضروری که جزو تیم اسکرام نیستند نیز باید جلوگیری شود، زیرا این کار به حواس‌پرتی و از دست رفتن تمرکز جلسه منجر می‌شود. نهایتاً، استفاده از تکنولوژی‌های پیچیده بهتر است محدود شود تا فرآیند برگزاری جلسه ساده و سریع باقی بماند.

جلسه بازبینی اسپرینت (Sprint Review):

جلسه بازبینی اسپرینت (Sprint Review) یکی از جلسات کلیدی در فرآیند اسکرام است که در پایان هر اسپرینت برگزار می‌شود. این جلسه فرصتی برای تیم توسعه، Product Owner و ذینفعان است تا به بررسی و ارزیابی نتیجه کار انجام شده در طول اسپرینت بپردازند و محصول نهایی را تحلیل کنند. هدف اصلی این جلسه ارزیابی پیشرفت پروژه و جمع‌آوری بازخورد از ذینفعان است.

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

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

جلسه بازنگری اسپرینت (Sprint Retrospective):

  • این جلسه نیز در پایان هر اسپرینت برگزار می‌شود و معمولاً بعد از جلسه بازبینی اسپرینت انجام می‌شود. اعضای تیم بر روی فرآیند کار خود بحث می‌کنند و عواملی که کارایی تیم را تحت تأثیر قرار می‌دهد، شناسایی می‌کنند.

  • تیم می‌تواند موفقیت‌ها و دستاوردهای اسپرینت را بررسی کرده و به اعضا انگیزه بدهد تا ادامه دهند.

  • این جلسه فضایی امن برای بحث در مورد مشکلات و چالش‌هایی است که تیم در طول اسپرینت مواجه شده است.

  • در متدولوژی اجایل، به ویژه در چارچوب اسکرام، جلسه Retrospective (بازنگری) به عنوان یکی از مهم‌ترین و حیاتی‌ترین جلسات شناخته می‌شود. این جلسه در پایان هر اسپرینت برگزار می‌شود و هدف اصلی آن بررسی عملکرد تیم در طول اسپرینت و شناسایی نقاط قوت و نقاط ضعفی است که می‌توانند به بهبود فرآیندها و همکاری کمک کنند.

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

کیا به جلسه Retrospective (بازنگری) دعوت میشن؟

در جلسه Retrospective (بازنگری)، افرادی که معمولاً حضور دارند شامل اسکرام مستر، توسعه‌دهندگان، Product Owner هستند. اسکرام مستر نقش تسهیل‌گر را ایفا می‌کند و اطمینان حاصل می‌کند که جلسه به درستی برگزار شود و اهداف آن محقق گردد. او کمک می‌کند تا اعضای تیم به راحتی نظرات و بازخوردهای خود را بیان کنند. توسعه‌دهندگان، که اعضای تیم توسعه هستند و در اسپرینت کار کرده‌اند، در این جلسه حضور دارند تا تجربیات و چالش‌های خود را به اشتراک بگذارند و نظراتشان را درباره جنبه‌های مختلف پروژه و کارایی تیم بیان کنند. همچنین، Product Owner نیز ممکن است در جلسه شرکت کند تا نظراتی درباره اولویت‌ها و نیازهای کاربران ارائه دهد و به تیم در درک بهتر نیازهای مشتری کمک کند.

در مجموع، اجایل یک فلسفه کلی برای مدیریت پروژه است، اسکرام یک چارچوب خاص برای پیاده‌سازی این فلسفه است و اسپرینت‌ها به عنوان دوره‌های زمانی مشخص در چارچوب اسکرام، ابزاری کارآمد برای مدیریت کار و ارائه محصولات با کیفیت محسوب می‌شوند.

برای اطلاعات بیشتر به سایت اسکرام www.scrum.org مراجعه کنید. به نظر من دوره های فارسی و ایرانی اون ساختار مندی که شما برای این پوزیشن ها لازم دارید رو به شما نمیده. و فکر میکنم که از مطالعه مفهوم اسکرام بهترین جایی هست که می تونید شروع کنید. راهنما اصلی رو بخونید و بعد با منابع این سایت دانش خودتون رو بیشتر کنید. بعد به سمت درک بهتر و بیشتر اجایل برید و ادامه مسیر.

تیم توسعهمالک محصولاسکرام مستر
۸
۰
شایان شلیله
شایان شلیله
از سال ۱۳۸۰ تقریبا به صورت حرفه ای دارم توی فضای اینترنت کار میکنم. او‌ال‌سی، ای‌نتورک. پایگاه خبری وب سایت های ایران، جشنواره وب و موبایل ایران برخی از کارهای من توی این سال ها بوده
شاید از این پست‌ها خوشتان بیاید