RUP

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的新版本。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值