什么是RUP?它有哪些特点

什么是RUP?它有哪些特点,第1张

RUP(Rational Unified Process),统一软件开发过程,统一软件过程是一个面向对象且基于网络的程序开发方法论。

软件统一过程(RUP)是Rational软件公司(Rational公司被IBM并购)创造的软件工程方法。RUP描述了如何有效地利用商业的可靠的方法开发和部署软件,是一种重量级过程(也被称作厚方法学),因此特别适用于大型软件团队开发大型项目。

三大特点

迭代模型

RUP强调软件开发是一个迭代模型(Iterative Model),它定义了四个阶段(Phase):初始(Inception)、细化(Elaboration)、构造(Construction)、交付(Transition)。

其中每个阶段都有可能经历以上所提到的从商务需求分析开始的各个步骤,只是每个步骤的高峰期会发生在相应的阶段,例如开发实现的高峰期是发生在构造阶段。

实际上这样的一个开发方法论是一个二维模型,这种迭代模型的实现在很大程度上提供了及早发现隐患和错误的机会,因此被现代大型信息技术项目所采用。

用例驱动

RUP的另一大特征是用例驱动。用例是RUP方法论中一个非常重要的概念。简单地说,一个用例就是系统的一个功能。在系统分析和系统设计中,用例被用来将一个复杂的庞大系统分割、定义成一个个小的单元,这个小的单元就是用例。

然后以每个小的单元为对象进行开发。按照RUP过程模型的描述,用例贯穿整个软件开发的生命周期。在需求分析中,客户或用户对用例进行描述,在系统分布和系统设计过程中,设计师对用例进行分析,在开发实现过程中,开发编程人员对用例进行实现,在测试过程中,测试人员对用例进行检验。

以架构为中心

RUP的第三大特征是它强调软件开发是以构架为中心的。构架设计(ArchitecturalDesign)是系统设计的一个重要组成部分。

在构架设计过程中,设计师(Architect)必须完成对技术和运行平台的选取,整个项目的基础框架( Framework)的设计,完成对公共组件的设计,如审计( Auditing)系统、日志(Iog)系统、错误处理(Exception Handling)系统、安全(Security)系统等。

设计师必须对系统的可扩展性( Extensibility)、安全性(Security)、可维护性( Maintainability)、可延拓性(Scalability)、可重用性(Reusability)和运行速度(Performance)提出可行的解决方案。

RUP(Rational Unified Process)是Rational公司(早在2002年就被IBM收购了)的过程产品。上面这段话显然不能作为RUP的定义,因为没有涉及RUP的内涵。

RUP是一种软件工程过程。那么软件工程过程又是什么呢?通俗的讲,我们有一群人,接了一个软件开发的活,这一群之间的职责如何分配?工作顺序如何安排?每一个具体的任务具体怎么个做法?不同人员如何协作?除了最终交付给用户的软件和文档是否需要一些中间制品?这些制品是否有一个统一的模板?这些问题如果不在我们正式干活之前就找到答案,那么项目开发就会出现很大的随意性——不同项目都有自己的一套做法,互不相同,也互无借鉴。有的人做项目做得多些,自己可能总结出了一些套路(个人或小团队的“最佳实践”),成了自学成才的专家,但是这些套路没有成文,不同“专家”之间不能互相学习、互补。软件过程其实就是一套成文的,做软件项目的“套路”。一般稍微大一些的软件企业,都有自己的软件过程。

软件工程过程不止RUP一种,那么RUP的特色是什么?RUP的特色体现在他对下面6个最佳实践的支持:

1. 迭代式开发——较之瀑布式开发,迭代开发更能规避风险,更好的获取用户需求。

2. 管理需求——需求是动态变化的,对需求的管理应贯穿软件生命周期的所有环节。需求管理包括三个活动:获取、组织并记录需求;评估需求变化及其影响;跟踪、记录需求的变更相关的决策与权衡的理由。

3. 应用基于构件的构架——软件系统很复杂,不同干系人(stakeholder,例如:用户、分析师、开发人员、集成人员、测试人员、项目经理等)对软件有不同的视角。建立并维护软件构件有利于管理不同的视角,从而在整个迭代周期内控制迭代的过程。 而基于构件的构架则由于其柔性的结构、对复用的支持被Rational认为是最佳的实践。

4. 可视化的建模——复杂的软件通过UML这样的建模语言进行抽象和可视化不但能够简化沟通,而且也能简化开发人员对系统的理解。

5. 持续不断的验证软件质量——缺陷越早被发现被解决就越节约成本,因此应该在整个软件生命周期内不断验证质量。

6. 控制软件变更——多人、分布式的开发,如果不能控制版本和变更,开发必然陷入混乱,变更的控制是项目有序进行的必要条件。

RUP是可以剪裁的,他包含针对不同项目特征进行剪裁的指南。同时RUP也是不断演化的,Rational不断在发布RUP的新版本。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5793758.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-01-31
下一篇 2023-01-31

发表评论

登录后才能评论

评论列表(0条)

保存