مروری بر مفاهیم و مراحل RUP

RUP (مخفف عبارت Rational Unified Process) چارچوبی کلی است برای تشریح فرآیند ساخت نرم‌افزار. پس از آنکه تیم سه نفره‌ی شرکت Rational ساخت UML را (به عنوان یک شیوه‌ی نمایشnotation/ یکتا برای تشریح مدل شیء) به آخر رساند، تلاش خود را متوجه فرآیند تولید نرم‌افزار نمود.

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

مدل آبشاری

مدل تکراری

در RUP کل فرآیند تولید نرم‌افزار به چهار فاز اصلی تقسیم می‌شود، که هر فاز می‌تواند شامل یک یا چند تکرار باشد. هر فاز شامل مسیری است که بین دو گردنه (milestone) قرار دارد. این چهار فاز عبارتند از:

· آغاز (inception)

· جزییات (elaboration)

· ساخت (construction)

· انتقال (transition)

1- فاز آغاز

در این فاز مدل تجاری سیستم رسم و دورنمای پروژه ترسیم می‌شود. برای این کار باید همه‌ی موجودیت‌هایی که سیستم با آنها تعامل دارد (بازیگران /Actors) شناخته شوند و نحوه تعاملشان با سیستم مشخص گردد. این شامل تعیین همه‌ی موارد کاربرد (use case) و توضیح برخی از موارد مهم است. مدل تجاری شامل شرایط موفقیت، برآورد ریسک‌ها و تخمین منابع مورد نیاز است. همچنین یک برنامه‌ی کلی که زمانبندی مراحل انجام پروژه را نشان دهد.

اهداف فاز آغاز

در انتهای این فاز اهداف چرخه‌ی حیات پروژه را تعیین می‌کنید و تصمیم می‌گیرید که آنرا ادامه بدهید یا نه. هدف اصلی این فاز بدست آوردن هماهنگی بین تمام افراد درگیر با پروژه درباره‌ی اهداف پروژه است. اهداف فرعی دیگر این‌هایند:

· تعیین حدود و دورنمای پروژه

· تعیین موارد کاربرد حییاتی سیستم و سناریور اولیه آنها

· تعیین سناریوهای جایگزین

· تخمین هزینه و زمان پروژه

· تخمین ریسک‌های احتمالی

خروجیهای فاز آغاز

· سند نمای کلی (vision) : دید کلی به هسته‌ی اصلی نیازهای پروژه، قابلیت‌های کلیدی و حدود اصلی

· مدل مورد کاربرد: مشخص کردن همه‌ی موارد کاربردی که در این مرحله‌ی مقدماتی می‌توانند شناسایی شوند)

· لغتنامه‌ی اولیه

· مدل تجاری اولیه، شامل زمینه‌ی تجارت، شرایط موفقیت، الزامات تجاری

· تخمین خطای اولیه

· برنامه‌ی اولیه که فازها و تکرارها را نشان می‌دهد.

2- فاز جزییات

در این فاز تعریف محصول تصحیح می‌شود و معماری آن مشخص می‌گردد. همچنین خلاصه برنامه‌ی توسعه و گسترش محصول تدوین می‌گردد. در انتهای این فاز اهداف و نمای پروژه دقیقتر تعیین می‌شوند و انتخاب یک معماری و تبیین ریسک‌های عمده انجام می‌گیرد. این فاز مهمترین در بین چهار فاز ذکر شده است. فشار کار «مهندسی» نرم‌افزار در این فاز است.

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

اهداف فاز جزییات

هدف این فاز آنالیز دامنه‌ی مساله و ایجاد یک پایه‌ی درست برای معماری، توسعه‌ی برنامه‌ی پروژه و برطرف کردن عمده‌ترین ریسک‌های پروژه است. تصمیم‌ها در مورد معماری باید بر اساس درکی از کل سیستم اتخاذ شوند. این متضمن آن است که بیشتر موارد کاربرد توصیف شوند. اهداف اولیه این فاز عبارتند از:

· تعریف و تصحیح معماری، با بیشترین سرعت ممکن

· به دست آوردن یک برنامه‌ی درست برای فاز ساخت

· اثبات اینکه معماری مورد نظر، نیاز پروژه را با هزینه و زمان معقولی تامین می‌کند.

خروجیهای فاز جزییات

· مدل مورد کاربرد

· دیدن نیازهای اضافی و غیرکارکردی که به مورد کاربرد خاصی وابسته نیستند.

· یک نسخه‌ی قابل اجرا از معماری و مستندات پیوست (سند معماری نرم‌افزار) شامل طراحی زیر مجموعه‌ای از موارد کاربرد و لغتنامه‌ی اصلاح شده

· مدل تجاری تجدید نظر شده

· فهرست ریسک‌های تجدید نظر شده

· برنامه‌ی توسعه‌ی پروژه

· راهنمای اولیه‌ی کاربر

3- فاز ساخت

در طول فاز ساخت، به صورت تکراری (iteratively) و افزایشی (incrementally) محصول نهایی کامل تولید می‌شود، که برای انتقال به کاربر آماده است. این متضمن تبیین موارد کاربرد باقی‌مانده و سایر نیازمندی‌ها، تبیین طراحی، تکمیل پیاده سازی، و تست نرم‌افزار است. در انتهای این مرحله تصمیم می‌گیرید که آیا نرم‌افزار، سایت و کاربران برای شروع بکار سیستم آماده‌اند یا نه.

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

اهداف فاز ساخت

· کمینه‌کردن هزینه‌های توسعه با بهینه کردن منابع و اجتناب از ضایعات و دوباره‌کاری‌های غیرلازم

· بدست آوردن کیفیت کافی در کمترین زمان ممکن

· بدست آوردن نسخه‌های مورد نیاز (آلفا، بتا و سایر نسخه‌های تستی) در کمترین زمان ممکن

خروجیهای فاز ساخت

خروجی فاز ساخت محصولی است که برای قرار گرفتن در دست‌های کاربر نهایی‌اش آماده است. این شامل موارد زیر است:

· محصول نرم‌افزاری، سوار شده بر سکو

· راهنمای کاربر و توضیحی درباره‌ی نسخه‌ی فعلی

4- فاز انتقال

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

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

اهداف فاز انتقال

· کسب توانایی خود-پشتیبانی توسط کاربر

· بدست آوردن و آغاز بکار محصول نهایی با بیشترین سرعت و کمترین هزینه

منبع : http://www.dadeban.com

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

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

اجرا شده توسط: همیار وردپرس