توسعه سریع نرم‌افزار
تاریخچه

توسعه سریع نرم‌افزار در پاسخ به فرایندهای توسعه یافته در دهه‌های ۱۹۷۰ و ۱۹۸۰ مانند روش‌های ساختاری تجزیه و تحلیل سیستم و دیگر مدل‌های آبشاری به وجود آمد. یکی از مشکلات این روش‌ها این است که آن‌ها بر اساس مدل سنتی مهندسی مورد استفاده برای طراحی و ساخت چیزهایی مانند پل‌ها و ساختمان‌ها، پایه‌گذاری شده‌اند. نرم‌افزار ذاتاً نوع دیگری از محصول است. نرم‌افزار می‌تواند شدیداً کل فرایند مورد استفاده برای حل یک مشکل را تغییر دهد. در نتیجه، دانش به دست آمده از فرایند توسعه خود می‌تواند بازخوردی باشد برای تعیین نیازمندی‌ها و طراحی راه حل. راه‌حل روش آبشاری برای حل این مسئله این بود که نیازمندی‌ها و برنامه‌ریزی برای پیاده‌سازی آن‌ها به شکل صلبی تعیین شوند و فرایندی داشته باشیم که از تغییر هر یک از آن‌ها اجتناب کند. رویکرد جدید RAD از سوی دیگر فرایند توسعه نرم‌افزار را به عنوان فرایندی دانش محور به رسمیت می‌شناسد؛ و به دنبال توسعه فرایندهای انعطاف‌پذیری است که دانش به دست آمده در طول عمر پروژه را برای ابداع دوباره راه‌حل مورد استفاده قرار می‌دهد.
اولین RAD جایگزین توسعه Barry Boehm توسعه داده شد و به عنوان مدل مارپیچ شناخته می‌شود. روش Boehm و دیگر روش‌های RAD پس از آن تاکیید بیشتری بر توسعه نمونهٔ اولیه به جای مشخصات صلب طراحی دارند و در مواردی هم نمونهٔ اولیه را جایگزین این مشخصات صلب طراحی می‌دانند. نمونه‌های اولیه مزایای زیادی نسبت به مشخصات سنتی دارند:
کاهش ریسک. یک نمونه اولیه می‌تواند برخی از سخت‌ترین قطعات سیستم را در اوایل چرخهٔ زندگی، تست کند. این می‌تواند اطلاعات ارزشمندی در خصوص امکان‌سنجی طراحی در اختیار قرار دهد و از در نظر دنبال کردن راه‌حل‌هایی که خیلی پیچیده یا خیلی زمانبر هستند جلوگیری کند. اینکه در روش RAD مشکلات در مراحل زودتری از چرخه زندگی نمایان می‌شوند نکتهٔ اصلی مزیت رویکرد RAD است. هدایت یک مشکل هرچه سریعتر شناسایی شود ارزانتر است.
کاربران در استفاده کردن و بازخورد نشان دادن بهتر از تعیین مشخصات عمل می‌کنند. رایج بود که در مدل آبشاری کاربر مجموعه‌ای از نیازمندی‌ها را مورد تأیید قرار دهد ولی زمانی که با سیستم پیاده‌سازی شده مواجه می‌شود، ناگهان پی می‌برد که آنچه طراحی شده برخی قابلیت‌های حیاتی را ندارد یا بسیار پیچیده است به‌طور کلی، اکثر کاربران زمانی که تجربه کار با یک نمونه اولیه در حال کار را دارند بازخورد بسیار بهتری می‌دهند تا زمانی که به‌طور انتزاعی تعریف می‌کنند که سیستم باید چگونه عمل کند.
نمونه‌های اولیه می‌تواند قابل استفاده باشند و به یک محصول کامل تکامل یابند. یکی از روش‌های مورد استفاده در برخی از روش‌های RAD ساخت این سیستم به عنوان یک سری از نمونه‌های اولیه است؛ که از تکامل یک نمونه اولیه با حداقل قابلیت‌ها شروع و به‌طور مناسب به سمت یک سیستم کامل تکامل میابد. استفاده از این علاوه بر دو مزیت بالا، مزیت دیگری هم دارد که کاربران می‌تواند قابلیت‌های کاربردی را بسیار زودتر در این فرایند در اختیار داشته باشند.
با شروع از ایده‌های بری بوهم و دیگران، James Martin رویکرد توسعه سریع نرم‌افزار را در طول دههٔ ۱۹۸۰ در IBM توسعه داد و در نهایت آن را توسط چاپ کتابی به عنوان توسعه سریع نرم‌افزار در ۱۹۹۱ بیان کرد. این موضوع منجر به برخی سردرگمی‌ها در خصوص عبارت RAD شد، این سردرگمی در میان متخصصان IT هم دیده می‌شد. این مهم است که بین RAD به‌طور کلی و به یک جایگزین برای مدل آبشاری و مدل RAD به عنوان روش خاص ایجاد شده توسط مارتین، تفکیک قائل شویم. روش مارتین برای سیستم‌های کسپ و کاری با بار دانشی و رابط کاربری فشرده طراحی شده‌است.
با تلاش پشگامان روش RAD این ایده بیشتر توسعه یافت و بهینه شد. افرادی مانند James Kerr و Richard Hunter که کتاب اولیه‌ای در خصوص موضوع نگاشته‌اند تحت عنوان Inside RAD که روند یه مدیر پروژه RAD را در پیشبرد و پالایش RAD، دنبال می‌کند. روش‌شناسی در زمان واقعی بر روی یک پروژه حقیقی RAD. این متخصصین و افرادی مشابه آن‌ها کمک کردند تا RAD به عنوان یک جاگزین نسبت به روش سنتی محبوبیت پیدا کند.
در دورانی که مهندسی دوباره کسب و کار رونق یافت، روبکرد RAD به بلوغ رسید. ایده مهندسی مجدد کسب و کار این بود که با توجه به ظرفیت‌های فناوری اطلاعات به‌طور رادیکال به فرایندهای اصلی سازمانی دوباره فکر شود. فرایندهایی نظیر فروش و پشتیبانی از مشتریان. RAD اغلب یک بخش ضروری از برنامه مهندسی مجدد در کسب و کارهای بزرگ بود. رویکرد نمونه سازی سریع در RAD شد یک ابزار کلیدی برای کمک به کاربران و تحلیلگران بود تا بتوانند «ذهن خود را فراتر ببرند» در مورد روش‌های نوآورانه در تکنولوژی که ممکن است اساساً اختراع دوباره یک هسته کسب و کار را موجب شود.