بعنوان مدیر تیم نرم افزاری با تعداد متوسط (6-7 نفر) با متدولوژی اسکرام، کدام روش را بیشتر می پسندید و استفاده می کنید؟
و یا اگر تجربه مدیریت یک تیم را نداشته‌اید، تشخیص می‌دهید تیمتان به کدام روش کار کند؟ 
  • تقسیم کار بصورت وظیفه‌ای و سپردن یک قسمت از منطق برنامه به یک نفر و پیاده سازی همه لایه ها توسط او
  • اعضاء با تخصص‌های خاص و تقسیم افراد بین لایه‌ها (برنامه نویس backend،برنامه نویس ui و ...)
  • روش ترکیبی و سفارشی شده (لطفا در نظرات توضیح دهید)
  • تاریخ انقضاءندارد

نتایج نظر سنجی

اعضاء با تخصص‌های خاص و تقسیم افراد بین لایه‌ها (برنامه نویس backend،برنامه نویس ui و ...)
۷۲.۷ %
با ۱۶ رای
تقسیم کار بصورت وظیفه‌ای و سپردن یک قسمت از منطق برنامه به یک نفر و پیاده سازی همه لایه ها توسط او
۱۳.۶ %
با ۳ رای
روش ترکیبی و سفارشی شده (لطفا در نظرات توضیح دهید)
۱۳.۶ %
با ۳ رای
  • #
    ‫۹ سال قبل، پنجشنبه ۲۶ شهریور ۱۳۹۴، ساعت ۰۵:۰۲
    وقتی حرف از متدولوژی میشه باید از قوانین متدولوژی تبعیت بشه. معمولا متدولوژی‌ها تمام چرخه عمر تولید یک نرم افزار را پوشش میدن. از تعیین نیازمندیهای اولیه گرفته تا تعیین و تشریح معماری نرم افزار و پیاده سازی و تست.معمولا در متدولوژی‌ها هم هر شخصی میتونه یک یا چند نقش ایفا کنه. مثلا هم میتونه تحلیلگر باشه و هم معمار نرم افزار. یا مثلا هم معمار باشه و برنامه نویس. ولی سوال شما بیشتر حول پیاده سازیه تا کل چرخه تولید. به نظر من این 7 نفر باید به 3 گروه تقسیم بشن. 2 نفر کار تحلیلگری و تجمیع نیازمندیهای اولیه رو انجام بدن. و بعدش 2 نفر که از همه با تجربه‌تر هستن به عنوان معمار نرم افزار . و 3 نفر آخر هم کار پیاده سازی رو انجام بدن.حالا بستگی به تخصص اون 3 نفر میتونید کار رو بین اونها تقسیم کنید. این عمل بصورت چرخشی و تکراری تا پایان چرخه تولید نرم افزار باید رعایت بشه. البته همون طور هم که قبلا گفتم چون در متدولوژی‌ها هر شخصی میتونه چندین نقش داشته باشه بنابراین هر کدام از اشخاص تحلیلگر یا معمار هم میتونن در امر پیاده سازی و برنامه نویسی ایفای نقش کنن.
  • #
    ‫۸ سال و ۵ ماه قبل، دوشنبه ۱۳ اردیبهشت ۱۳۹۵، ساعت ۰۳:۴۹
    در مورد اسکرام تا جایی که بنده اطلاعات دارم و مطالعه کردم، اسکرام یک فریم ورک هست در واقع نه متدولوژی. یکی از اساتیدی که در ایران تدریس میکنند آقای صفری هستند که کتابی هم در این زمینه نوشتند که میتونید مطالعه بفرمایید. ایشان هرجایی که از اسکرام حرف زدند لفظ فریم ورک را هم در آن آورده اند. بنابراین بر اساس تفاوت فریم ورک و متدولوژی میتوانیم اینگونه برداشت کنیم که تمامی روش‌ها میتوانند بر اساس نیاز سیستم شما درست باشند، اما باید توجه داشته باشید که در اسکرام ما چیزی به عنوان role به معنای مستحکم و خشک خودش نداریم. در اسکرام حتی تحلیل هم جزئی از یک وظیفه (task) در نظر گرفته میشود. به همین دلیل وقتی که در افقی بلندتر به پروژه نگاه میکنیم، بک لاگ‌ها را مشاهده میکنیم که در یک بکلاگ تمامی فرایند‌های تحلیل و حتی تست را هم باید در وظایف در نظر بگیریم. بر اساس سخن آقای نواصری، این روش بیشتر به RUP و مدل‌های نرم افزاری سنتی شبیه است که البته بنده نقض نمیکنم. چون غول نرم افزاری دنیا به نام IBM پشت این قضیه است.
    و اما در مورد نظرسنجی باید عرض کنم، به نظر بنده در گزینه 1 تقسیم کار به صورت وظیفه ای و سپردن یک قسمت از برنامه چیزی است که در اسکرام تعریف شده، اما لزومی ندارد که تسک شما (مثلا یک تسک تراکنش بانکی) که شامل view و design و تحلیل و backend میشود همگی در یک تسک دیده شود. بنابراین حس میکنم شما در شکاندن تسک‌ها باید تسک‌ها را به قسمت‌های کوچکتری تقسیم کنید. به این صورت ادامه گزینه 1 هم درست میشود، چون دیگر تمامی لایه‌ها را یک نفر انجام نمیدهد. و یک تسک تراکنش بانکی به 3 یا 4 تسک تقسیم میشود.
    و در آخر اینکه اسکرام بنای تمامی این تحلیل‌ها را روی یک عبارت استوار کرده و آن هم "تعامل بین اعضا" است.
    • #
      ‫۸ سال و ۴ ماه قبل، پنجشنبه ۱۳ خرداد ۱۳۹۵، ساعت ۱۸:۰۴
      در تمامی تعاریف رسمی که از متدولوژی‌ها اومده، اونها رو در واقع به عنوان یک فریم ورک ( چهارچوب ) یا پروسس (فرآیند) کاری معرفی کرده. چرا؟ چونکه تیم نرم افزاری رو مجبور میکنه که از قوانین مربوط به خودش تبعیت کنه و برای اونها یک چهارچوب کاری تعریف میکنه تا تیم بر اساس اون فریم ورک یا چهارچوب حرکت کنن. مثلا خود RUP مخفف کلمات Rational Unified Process هست . RUP یک متدولوژی هست. اما در عنوان اصلی از اون به عنوان یک فرآیند یا فریم ورک عنوان شده. چرا میگن فرآیند؟ چون هر فرآیند به صورت مرحله مرحله اجرا میشه. و تیم از یک مرحله وارد مرحله جدید میشه. هم اسکرام و هم RUP به عنوان روشهای Agile شناخته میشن و هر دوتاشون بر مبنای تکرار Iteration هستن.
      منابع برای مطالعه بیشتر :
      • #
        ‫۸ سال و ۳ ماه قبل، دوشنبه ۱۷ خرداد ۱۳۹۵، ساعت ۱۴:۱۸
        بله، خیلی ممنون از پیگیری و ارجاع به منبع. من هم کمی در این مورد جستجو کردم. راستش کمی گیج شدم چون هر دو لفظ فریم ورک و متدولوژی برای اسکرام آورده شده برای مثال در وب سایت ویکی پدیا:
        Scrum  is an iterative and incremental  agile software development  framework for managing product development. 
        که البته دوباره در همین صفحه باز از لفظ متدولوژی هم استفاده شده. بنده طی تجربه شخصی که داشتم چون یک چارچوب کلی از اسکرام را در محل کارم شخصی سازی کردیم، حس کردم اسکرام میتونه کمی منعطف هم باشه. به همین علت فرض کردم که میتونه یک چارچوب کلی باشه که اساس اون تعاملات بین افراد هست (درست یا غلط بودن کارمون را نمیدونم البته). اما جوابی که ما از این روش گرفتیم جواب قابل قبولی بود.
      • #
        ‫۸ سال و ۳ ماه قبل، سه‌شنبه ۱۸ خرداد ۱۳۹۵، ساعت ۰۹:۲۵
        به نظرم مرجع اصلی، برای حل این اختلاف نظر‌ها کمک کند؛ مطلب کامل
        خود مبدع اسکرام هم بیشتر برروی فریمورک تأکید دارد. دلایلی هم برای این مورد بیان کرده است. 
        به معنی : اسکرام یک فریم وورک (چارچوب) می‌باشد. پس به جای اینکه اسکرام جزئیات دقیق و کاملی در مورد اینکه کارها در پروژه چگونه باید انجام شوند ,  بیشتر آن را به تیم واگذار می‌کند. این کار عملی خواهد بود زیرا تیم خواهد فهمید که چگونه به بهترین نحو مشکل خود را حل نماید . 
        برای مثال می‌توان جلسه Sprint Planning را درنظر گرفت : در اسکرام آمده است که خروجی این جلسه می‌تواند (بایدی در کار نیست ) تعدادی آیتم باشد که آن‌ها در اسپرینت بعدی پیاده سازی خواهند شد. اما در متدولوژی‌های دیگر, ضوابط ورودی , تعیین وظایف , ضوابط خروجی و دیگر مسائل جلسه توسط متدولوژی تعیین می‌شوند و همه آنها لازم الاجرا هستند .
        به عبارت ساده‌تر , در فریم وورک نسخه پیچی نداریم ولی در متدولوژی نسخه‌های پیچیده شده لازم الاجرا می‌باشند.