‫مقایسه روش‌های MSF Agile و MSF CMMI

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

  • هر دو Process نشات گرفته از MSF هستند و به طور مادرزاد در TFS قرار داده شده‌اند. هر چند که می‌توان پروسس‌های دیگری را به TFS اضافه و از آنها استفاده کرد.
  • CMMI فقط خاص نرم افزار نیست بلکه در خیلی از صنایع دیگر مثل تولیدات الکترونیکی هم استفاده می‌شود.
  • توضیحی در سایت برنامه نویس (agile خلاصه‌تر از CMMI است): http://barnamenevis.org/forum/showthread.php?t=92169
  • جدالی بر سر تعاریف مربوط به agile و rup در سایت برنامه نویس: http://barnamenevis.org/forum/showthread.php?t=59278
  • در این مقاله سایت برنامه نویس گفته شده که agile سرعت بیشتری دارد و در پروژه‌های زیر ۳۰ نفر خیلی بهتر از RUP عمل می‌کند: http://www.barnamenevis.org/forum/showthread.php?t=20625
  • ظاهرا در متودولوژی‌هایی مثل xp نیازی نیست که همه دیاگرام‌های یوام‌الی از قبل در بیاید. و عملا کار برنامه نویس و تحلیل‌گر و… با هم پیش می‌رود. علی الظاهر agile نام یک مجموعه از روش‌های توسعه سریع نرم افزار است که یکی از مثال‌هایش xp (و حتی شاید MSF for Agile) است. http://www.barnamenevis.org/forum/showthread.php?t=67708
  • در اینجا هم گفته شده که MSF Agile تنها روش Agile Software Development نیست بلکه می‌شود از SCRUM، XP، Crystal Clear و Lean هم استفاده کرد. همچنین معلوم است که MSF Agile و MSF CMMI تنها قالب‌های قابل استفاده در TFS نیستند، بلکه می‌توان از قالب‌هایی که اشخاص دیگر هم تهیه کرده‌اند استفاده کرد. مثلا از قالب‌های Agile مثل XP یا SCRUM: باز هم گفته شده که افراد تیم باید راجع به روش‌های Agile مطالعه کرده و آموزش ببینند. و این طور نیست که هر کس با TFS MSF Agile کار کرد یعنی Agile Software Development بلد است!http://blogs.neudesic.com/blogs/phil_scott/archive/2005/12/16/14.aspx
  • مقایسه توضیحات ویکی‌پدیا راجع به agile software development: http://en.wikipedia.org/wiki/Agile_software_development و CMMI: http://en.wikipedia.org/wiki/CMMI هم نشان می‌دهد که CMMI خیلی عمومی و جنرال است و در صنایع غیر نرم افزار هم کاربرد دارد. در حالی که Agile فقط برای مباحث توسعه نرم افزار و احتمالا صنایعی کاربرد دارد.
  • اینجا گفته شده که MSF Agile زیرمجموعه‌ای از MSF CMMI هست به عبارت دیگر هر چیزی که در MSF Agile وجود دارد در MSF CMMI هم وجود دارد یعنی این که MSF CMMI همان MSF Agile است ولی گسترده‌تر و بزرگ‌تر. باز هم آمده که MSF CMMI برای پروژ‌های بزرگ‌تر و طولانی‌تر کاربرد دارد و MSF Agile برای پروژه‌های بین ۳ تا ۱۰ نفره خوب است. در حالی که MSF CMMI برای یکی تیم اقلا ۲۰ نفره مناسب است.  http://social.msdn.microsoft.com/Forums/en-US/vstsmsf/thread/f8e3d872-d815-4be6-96ff-fdefdaad1b47/
  • مقایسه RUP و MSF در یک نوشته فارسی http://www.nfgp.com/Portals/0/Download/Comparing%20the%20Rational%20Unified%20Process%20(RUP)%20and%20Microsoft%20Solutions%20Framework%20(MSF).pdf
  • مقایسه CMMI و Agile که فرصت خواندن آن را نداشتم: http://somamos.blogfa.com/post-254.aspx
  • دو منبع تکمیلی:http://msdn.microsoft.com/en-us/library/ms400752(vs.80).aspx و http://msdn.microsoft.com/en-us/vsts2008/aa718795.aspx

خلاصه این که با توجه به توضیحات و لینک‌های بالا و زیر ۲۰ نفر بودن تیم توسعه نرم افزار ما و اکثر قریب به اتفاق تیم‌های برنامه نویسی ایران و مبتذل شدن نام RUP در بین خیلی از هم سنگران، استفاده از یکی از متدولوژی‌ها (روش‌های) Agile توصیه می‌شود. از بین روش‌های توسعه نرم افزار چابک (Agile) هم با توجه به دم دست بودن مایکروسافت، ویژوال استودیو، TFS و علاقه و راحتی خیلی از تیم‌های ایرانی و خود ما، روش MSF Agile توصیه می‌گردد. امید آنکه بتوانم مطالعه کاملی راجع به این نکات کرده و بتوانم نرم افزار بهتری تولید کنم.
و حالا نکاتی راجع به خود Agile و MSF Agile:

  
پ. ن. ۱: ممکن است من مفاهیمی مثل پروسس، روش، متود، متودولوژی و temaplte را به خاطر کم آگاهی اشتباها به جای یکدیگر به کار برده باشم.
پ. ن. ۲: خیلی دوست بدانم که آیا هیچ جایی در ایران به طور واقعی و -نه خالی‌بندی- از روش‌های Agile برای توسعه نرم افزار استفاده کرده است یا نه.

Comments

  1. hajloo

    فکر کنم این مطالب برای کسی مناسب بود که پیشینه ذهنی از agile و cmmi داره و صرفا دنبال انتخاب بین یکی از این دو روش هست .
    از این نظر مطلب خوبی بود ( گرچه لیننکها رو ندیدم )
    ولی ای کاش توضیحاتی در مورد خود agile و اینکه اصلا به چه دردی می خوره کجا کاربرد داره و …. می نوشتی .

  2. صادق قنبری

    سلام.
    اینکه در باره نکته اخرت که ایا واقعا کسی حالا داره از این تکنولوژی ها استفاده می کنه یا نه .نمیدونم ولی ترم پیش که من این درس رو در کلاش مهندسی نرم افزارپاس کردم نه با نمره خوب.اونقدری که یادم هست استاد از روش agileخیلی تعریف می کرد وخیلی هم روش مانور می رفت و به عنوان روشی که در اون برنامه نویس ارتباط بیشتری با مشتری داره (بهتره بگه مستقیم)بیشتر مورد استفاده است به نطچظر من هم همین حالا ما تو شرکت هم داریم از این روش استفاده می کنید ولی نه اینکه اسمش رو به کار ببریم.
    یعنی نا خواسته با ابن همه ارتباطی که با مشتری هست یعنی در هر مرحله از پروژه.

  3. افشار محبی

    البته من هنوز خودم مطالعه درست و حسابی روی روش‌های Agile نداشتم ولی به با این همه ارتباط روز به روزی که با مشتری داریم به نظر می‌آید که حرفت درست باشه.

  4. علی فاتحی

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

    اجاز نامه وبلاگ

    می شه توضیح بدید چیست ؟ بعلاوه ایا این اجازه نامه رایگان هست و برای مقلات هم صادق است .

  5. افشار محبی

    @علی فاتحی: ممنون!
    در مورد اجازه نامه: من تمام نوشته‌ها و قسمت‌های مختلف وبلاگم را تحت اجازه نامه GFDL قرار دادم. این یعنی این که هر کس می‌خواهد از مطالب این وبلاگ استفاده کند باید مفاد اجازه‌نامه GFDL را رعایت کند. استفاده از مطالب منتشر شده تحت اجازه‌نامه GFDL رایگان هست ولی باید بعضی قواعد دیگر هم در مورد آن رعایت شود. مثلاً آنجایی که شما از مطالب این وبلاگ استفاده می‌کنید (وبلاگ، کتاب، روزنامه و…) خودش هم باید تحت اجازه‌نامه GFDL باشد. برای کسب اطلاعات بیشتر به مطلب زیر مراجعه کنید: http://afsharm.blogspot.com/2009/04/gfdl.html

  6. ناشناس

    [url=http://oakleyorder.blogspot.com/]オークリー アウトレットショップ[/url]

    [url=http://oakleybaseballa.blogspot.com/]オークリー ポロシャツ[/url]

    [url=http://oakleyjersey.blogspot.com/]オークリー wisdom[/url]

    [url=http://oakleygolfpants.blogspot.com/]オークリー ゴルフ[/url]

    [url=http://cheapoakleygoggless.blogspot.com/]スノーボード ゴーグル オークリー[/url]

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

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