در تیم های اجایل، هر یک از اعضاء میتواند یک یا بیش از یک نقش داشته باشد. توجه داشته باشیم که در پروژه های اجایل، Role یا «نقش» با Position یا «جایگاه» کاملاً فرق دارد. نقش اعضاء در تیم های اجایل کاملاً با جایگاه ایشان متفاوت است. اجایل کاملاً با تعریف یکسری جایگاه ثابت برای تک تک اعضاء مخالف است و تأکید دارد که تمامی اعضای تیم از جایگاه یکسانی برخوردار بوده و از هدف واحدی نیز برخوردارند که چیزی جز تحویل یک نرمافزار قابل استفاده و بهینه به مشتری نیست. به جز مشتری که داستان آن متفاوت است، مابقی اعضای تیم -از مدیر پروژه گرفته تا برنامه نویس، طراح، کپی رایتر و …- در سطح یکسانی قرار دارند و هیچکس بر دیگری برتری ندارد.
به منظور ایجاد فرهنگ اجایل در تیم های توسعه ی نرم افزاری، نیاز است تا با نقشهای متفاوتی که در یک تیم اجایل وجود دارد آشنا شویم و این همان چیزی است که در این آموزش قصد داریم به طور خلاصه مورد بررسی قرار دهیم.
Product Owner
معادل «ذی نفع» به نظر جایگزین خوب برای اصطلاح Product Owner می آید. ذی نفع کسی است که منافعش به طور مستقیم با خروجی محصول -یا نرم افزار- گره خورده است. ذی نفع را میتوان به عنوان یکی از اعضای تیم در نظر گرفت که از دید مشتری به پروژه نگاه کرده و نظرات مشتری را به سایر اعضاء منتقل می کند. این فرد، تمام تلاش خود را به کار خواهد بست تا نیازها و دغدغه های مشتری یا صاحب پروژه را به اعضای تیم برساند. از جمله مهم ترین وظایف این فرد میتوان موارد زیر اشاره کرد:
مشخص سازی جزئیات پروژه، اولویت بندی Task (تسک) یا کارها، تهیه ی گزارش از روند انجام کار و تحویل آن به مشتری، مشخص سازی استراتژی های لازم الاجرا برای پروژه، مشخص سازی اهداف بلند مدت و کوتاه مدت، جمع آوری، مدیریت و اولویت بندی نیازهای پروژه، هدف گذاری بودجه ی تخصیص داده شده و سود آوری پروژه، مشخص سازی تاریخ Release (ریلیس) یا عرضه ی نرمافزار به بازار، پاسخ به هرگونه سؤال و تصمیم گیری در مورد پروژه، پذیرش یا رد قسمتهای تکمیل شده ی پروژه و ارائه ی دستاوردهای سایر اعضاء در پایان هر فاز کاری.
Member
نقشی که یک Member یا «عضو» تیم دارد این است تا به تولید نرمافزار نهایی که قابل استفاده و بهینه باشد و تحول آن به ذی نفع کمک کند. اعضای تیم وظایفی همچون تحلیل، معماری، طراحی، برنامه ریزی، تخمین، کدنویسی تست و بسیاری وظایف دیگر دارند. آنچه می بایست مد نظر داشته باشیم این است که هر یک از اعضای تیم میتواند در آن واحد، بیش از یک نقش داشته باشد.
Agile Mentor
داشتن منتور در تیم های اجایل ایده ی بسیار خوبی برای حوزه هایی است که شما نیاز به توسعه ی مهارت های جدید دارید. Agile Mentor که گاهی هم تحت عنوان Agile Coach شناخته میشود وظیفه ی ارائه ی فیدبک سازنده و مشاوره به سایر اعضاء را دارا است. توجه داشته باشیم که منتور دخالت مستقیم در اجرای پروژه ندارد و صرفاً وظیفه ی منتورینگ را دارا است. به عبارت دیگر، منتور معمولاً فردی خارج از تیم -یا شرکت- است و بدون در نظر گرفتن ملاحظات فردی -مثلا نباید به Stakeholder تذکر دهد!- اقدام به ارائه ی بازخورد به تک تک اعضای تیم می کند.