با ما در تماس باشید: info@scrumfarsi.ir

توسعه دهنده چیست؟

مسئولیت های یک توسعه دهنده (Developer)

همانطور که در راهنمای اسکرام گفته شد، توسعه دهندگان افرادی در تیم اسکرام هستند که متعهد به ایجاد افزایش های (Increment) قابل استفاده مجدد در هر اسپرینت هستند.

یک توسعه دهنده چه کاری انجام می دهد؟

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

مهارت های مورد نیاز توسعه دهندگان بر حسب کاری که انجام می دهند بسیار متفاوت خواهد بود. با این حال توسعه دهندگان همیشه مسئولیت های زیر را خواهند داشت:

  • ایجاد یک برنامه (Plan) برای هر اسپرینت یا همان بک لاگ اسپرینت (Sprint Backlog)
  • تامین کیفیت محصول ایجاد شده با رعایت تعریف کار انجام شده (Definition of Done)
  • بازبینی و تطبیق برنامه اسپرینت با هدف اسپرینت (Sprint Goal) به‌صورت روزانه
  • کمک به دیگر اعضای تیم برای پذیرش مسئولیت به عنوان یک متخصص

در کنار این مسئولیت ها، توسعه دهندگان ممکن است در برخی موارد نقش هایی مانند تسهیل گر (Facilitation)، راهنما (Mentoring)، آموزگار (Teaching) و مربی (Coaching) را بر عهده بگیرند. بعنوان مثال:

  • جلسه روزانه اسکرام رویدادی برای توسعه دهندگان است و نیاز به یک تسهیل گر (Facilitator) دارد. تیم به طور خودکار و بدون نیاز به مدیریت خارجی، فردی را به عنوان تسهیل گر انتخاب و تعیین می‌کند.
  • ممکن است یک توسعه دهنده مهارت هایی را داشته باشد که باقی توسعه دهندگان آن را ندارند. این توسعه دهنده می تواند آن مهارت ها را به دیگر اعضای تیم آموزش داده و یا آنها را راهنمایی کند تا آن مهارت را یاد بگیرند. به عنوان مثال Pair Programming یک فرصت عالی برای استفاده از این مهارت هاست. در Pair Programming توسعه دهندگان ضمن همکاری با یکدیگر، مهارت های خود را به اشتراک گذاشته و از یکدیگر یاد می گیرند.

بسیار مهم است که توسعه دهندگان و تمامی اعضای تیم اسکرام، ارزش های اسکرام را بپذیرند. ممکن است شرایطی به‌وجود بیاید که به عنوان مثال توسعه دهندگان نیاز داشته باشند به:

  • شجاعت (Courage) برای مطرح کردن تعارضات میان اعضای تیم و تلاش برای حل آن‌ها به صورت مشترک.
  • پذیرا بودن (Openness) برای قبول ایده های یکدیگر
  • متمرکز بودن (Focus) بر روی کار در حال انجام بدون حواس پرتی
  • تعهد (Commitment) به ایجاد یک افزایش (Increment) با رعایت تعریف کار انجام شده (Definition of Done)
  • احترام (Respect) به تمامی اعضای تیم اسکرام و ایده های آنها

متن اصلی این نوشته در سایت Scrum.org را اینجا بخوانید.