RUP یک فرآیند تولید نرم افزار است که توسط شرکت rational ایجاد شده است و هدف آن کمک به تولید کنندگان و مدیران صنعت نرم افزار است. RUP برای جنبه های مختلف تولید چیزهایی مانند نقش ها، محصولات، فعالیت ها و گردش کار تعریف میکند. RUP از چهار فاز آغازین، جزئیات، تولید و استقرار تشکیل شده ، که با توجه به حجم پروژه می توان هر فاز را به دوره های تکراری تقسیم کرد و سیستم را در مراحل تکراری توسعه داد. این متد لوژی سیستم را بر اساس موارد استفاده سیستم برای کاربران آن توسعه می دهد و از این جهت تاکید زیادی بر درک صحیح نیازمندی ها و مدیریت آن ها دارد.
RUP رویکردی است منظم و دارای دیسیپلین، برای تخصیص مسؤلیت ها و مدیریت آنها در یک سازمان یا تیم تولیدکننده ی سیستم های نرم افزاری. البته، RUP الگویی را در اختیار مهندسین و مدیران قرار می دهد که قابل تعمیم و گسترش به طیف وسیعی از پروژه ها، حتی پروژه های تولید فراورده های غیر نرم افزاری می باشد.
هدف این فرایند عبارتست از: «تولید یک فراورده دارای کیفیت مطلوب، در یک چارچوب زمانی و هزینه ای قابل پیش بینی، که برآورده کننده ی نیازهای کاربران نهایی اش باشد.»
RUP امکان استفاده موثرتری از زبان یکپارچه مدلسازی (UML) را فراهم میسازد. به کمک تکنیکهای RUP بخشهای عمدهای از فرآیند تولید نرمافزار به طور خودکار انجام شده و همچنین استفاده از مدلهای تولید شده در فرآیندهای گذشته در پروژههای جاری به سادگی امکانپذیر است. این فرآیند با موقعیتهای مختلف تطبیق یافته و برای سازمانهای بزرگ یا حتی کوچک تولید و توسعه نرمافزار قابل استفادهاست.RUP کلیه مراحل انجام یک پروژه شامل تحلیل سیستم، برنامهریزی، بررسی ریسکها، تولید و تست نرمافزار را در بر میگیرد و چهارچوبی در جهت انجام صحیح و موفق پروژههای نرمافزاری فراهم میسازد.
چرا آریوپی را یکپارچه نامیدهاند:
- این فرآیند از ترکیب و یکپارچهسازی چند فرآیند و متد لوژی دیگر شامل Booch، OMT و OSE ایجاد شدهاست.
- از زبان یکپارچه مدلسازی (UML) به طور موثری بهره میگیرد.
- مفاهیمی نظیر کلاس و شیء در متدهای قبلی علائم خاص و مختلفی داشتهاند حال آنکه در آریوپی یکسان شدهاند.
مزیت بزرگ این متد لوژی، استفاده از روش تکرار در تولید و مدیریت تولید نرمافزار است که این امر، امکان تولید مبتنی بر کاهش ریسک و مواجه با مشکلات اصلی در ابتدای کار و در نتیجه احتمال موفقیت بیشتر را فراهم میکند. از محاسن دیگر این متد لوژی مبنا قرار دادن نرمافزار و تولید یک معماری پایدار در ابتدای کار است، که در نتیجه امکان کشف مشکلات عمده ساختاری، تست و مجتمع سازی ممتد را از ابتدای کار فراهم میکند. از دیگر مزایای این روش این است که افراد تیم همزمان با پیشرفت پروژه، مطالب جدیدی فرا میگیرند و کیفیت فرآیند تولید نیز به طور مرتب افزایش مییابد.
برای تحلیل طراحی و پیادهسازی سیستم مورد نظر از متد لوژی RUP استفاده میشود. RUP یک فرآیند مهندسی نرمافزار است. این فرآیند یک روش نظاممند برای تخصیص کارها و مسئولیت ها در یک تیم توسعه نرمافزار میباشد و هدف آن تولید نرمافزار با کیفیت بالاست که نیازهای کاربران نهایی را توسط یک برنامه و با بودجه قابل پیشبینی تأمین نماید.
فرآیند RUP بهرهوری تیم را با فراهم نمودن دسترسی تمام افراد تیم به یک پایگاه دانش سهلالوصول به همراه راهنماها، الگوها و ابزارهای کمکی برای همه فعالیتهای بحرانی توسعه، افزایش میدهد. با تأمین دسترسی همه اعضای تیم به یک پایگاه دانش، افراد در هر قسمت از یک زبان، فرآیند و دید مشترک برای توسعه نرمافزار برخوردار هستند. درفعالیت های RUP، بجای تمرکز بر روی تولید مستندات بزرگ کاغذی، مدلهایی تولید میشوند که بخوبی سیستم در حال توسعه را ارائه مینمایند.
فرآیند RUP، راهنمایی برای استفاده مؤثر از زبان یکپارچه مدلسازی، UML میباشد. UML، زبانی استاندارد برای تبادل شفاف نیازها، معماری و طراحی است. زبان UML در ابتدا توسط شرکت رشنال ایجاد شد و هم اکنون توسط موسسه استانداردهای (OMG (Object Management Group پیشتیبانی میشود. فرآیند RUP توسط ابزارهایی پشتیبانی میشود که هر یک بخشهای بزرگی را فرآیند را به صورت خودکار انجام میدهند. آنها برای استفاده و نگهداری از محصولات متنوع- مخصوصاً مدل ها در فرآیند مهندسی نرمافزار مورد استفاده قرار میگیرند. فرآیند RUP فرآیندی قابل شکلدهی است. هیچ فرآیند واحدی برای همه نرمافزارها مناسب نمیباشد فرآیندRUP، همانطور که برای سازمانهای بزرگ توسعه نرمافزار مناسب میباشد، برای تیمهای کوچک نیز مفید است. این فرآیند میتواند برای تطبیق موقعیتهای مختلف سازش پیدا کند. فرآیندRUP، چگونگی استفاده مؤثر روشهای تجاری برای توسعه نرمافزاری در گروههای نرمافزاری را بیان میکند. این روشها که بهترین تمرینها( Best Practices ) نامیده میشوند به طور مشترک در همة صنایع مورد استفاده قرار میگیرند.
فرآیند RUP برای هر یک از اعضای تیم، راهنماها، الگوها و ابزارهایی مهیا میکند که تیم بهترین استفاده را از بهترین تمرین های زیر ببرد:
- توسعه تکراری نرمافزار
- مدیریت نیازها
• استفاده از معماری مبتنی بر مؤلفه
• مدل کردن تصویری نرمافزار
• بازبینی کیفیت نرمافزار
• کنترل تغییرات در نرمافزار
بیشتر بخوانیم:
- چگونه فروش حرفهای موفق داشته باشیم؟
- گذری بر استانداردهای حسابداری ایران
- بررسی چالش های مدیریتی صنف پوشاک