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

یکی از دلیلاش می تونه این باشه که بیشتر افراد اصلا هیچ آشنایی (حتی در حد اسم هم) با این موارد ندارن. شاید این عدم آشنایی به خاطر اینه که کمتر توی سایتهایی مثل این سایت در این مورد صحبت میشه.

در هر صورت امروز داشتم یه کتاب می خوندم، یه دسته بندی و معرفی خوبی در رابطه با این روشها داشت. توی این کتاب 10 روش رو فقط معرفی کرده بود و یه مقدار خیلی جزئی هم راجع بهشون صحبت کرده بود (آخه مطلب اصلی کتاب در این رابطه نبود).

این کتاب روشهای توسعه ی نرم افزار رو از روشهای سنتی که بیشتر به درد برنامه های استاتیک می خوردن معرفی کرده بود (روشهایی مثل Waterfall) تا روشهای جدید که برای برنامه های دینامیک استفاده میشه، مثل Adaptive Software Development، Scrum، XP و ... که جمعا ده روش میشد.

روشهای قدیمی و استاتیک که بررسی شده بود شامل موارد زیر میشد:

Code and Fix
Waterfall
V
Spiral
Staged Delivery
Evolutionary Prototyping

روشهای دینامیک هم شامل موارد زیر بود:

Scrum
Adaptive Software Development
Unified Process
Extreme Programming

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

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

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

موفق باشید.