统一过程模型(RUP)

        软件统一过程(Rational Unified Process,RUP)是Rational软件公司创造的软件工程方法。RUP描述了如何有效地利用商业的、可靠的方法开发和部署软件,是一种重量级过程。RUP类似一个在线的指导者,它可以为所有方面和层次的程序开发提供指导方针、模版以及事例支持。

1.RUP的生命周期

         RUP软件开发生命周期是一个二维的软件开发模型,RUP中有9个核心工作流,这9个核心工作流如下:

  •         业务建模(Business Modeling):理解待开发系统所在的机构及商业运作,确保所有参与人员对待开发系统所在的机构有共同的认识,评估待开发系统对所在机构的影响。
  •         需求(Requirements):定义系统功能及用户界面,使客户知道系统的功能,使开发人员理解系统的需求,为项目预算及计划提供基础。
  •         分析与设计(Analysis & Design):把需求分析的结果转化为分析与设计模型。
  •         实现(Implementation):把设计模型转换为实现结果,对开发的代码做单元测试,将不同实现人员开发的模块集成为可执行系统。
  •         测试(Test):检查各子系统之间的交互、集成,验证所有需求是否均被正确实现,对发现的软件质量上的缺陷进行归档,对软件质量提出改进建议。
  •         部署(Deployment):打包、分发、安装软件,升级旧系统;培训用户及销售人员,并提供技术支持。
  •         配置与变更管理(Configuration & Channel Management):跟踪并维护系统开发过程中所产生的所有制品的完整性和一致性。
  •         项目管理(Project Management):为软件开发项目提供计划、人员分配、执行、监控等方面的指导,为风险管理提供框架。
  •         环境(Environment):为软件开发机构提供软件开发环境,即提供过程管理和工具支持。

        RUP把软件开发生命周期划分为多个循环(Cycle),每个循环生成产品的一个新的版本,每个循环依次由4个连续的阶段(Phase)组成,每个阶段完成确定的任务。这4个阶段如下:

  •         初始(inception)阶段:定义最终产品视图和业务模型,并确定系统范围。
  •         细化(elabration)阶段:设计及确定系统的体现结构,制订工作计划及资源要求。
  •         构造(construction)阶段:构造产品并继续演进需求、体系结构、计划直至产品提交。
  •         移交(transition)阶段 :把产品提交给用户使用。

        每一个阶段都有一个或多个连续的迭代(Iteration)组成。迭代并不是重复地做相同的事,而是针对不同用例的细化和实现。每一个迭代都是一个完整的开发过程,它需要项目经理根据当前迭代所处的阶段以及上次迭代的结果,适当地对核心工作流(Discipline)中的行为进行裁剪。 

2.RUP中的核心概念

         RUP中定义了如下一些核心概念,理解这些概念对于理解RUP很有帮助。

  •         角色(Role):Who的问题。角色描述某个人或一个小组的行为与职责。RUP预先定义了很多角色,如体系结构师(Architect)、设计人员(Designer)、实现人员(Implementor)、测试员(tester)和配置管理人员(Configuration Manager)等,并对每一个角色的工作和职责都做了详尽的说明。
  •         活动(Activity):How的问题。活动是一个有明确目的的独立工作单元。
  •         制品(Artifact):What的问题。制品是活动生成、创建或修改的一段信息、产品、工件等。
  •         工作流(Workflow):When的问题。工作流描述了一个有意义的连续的活动序列,每个工作流产生一些有价值的产品,并显示了角色之间的关系。

     还有一些其他概念,如工具教程(Tool Mentor)、检查点(Checkpoints)、模版(Template)报告(Report)等。

3.RUP的特点

        1)用例驱动

         RUP中的开发活动是用例驱动的,即需求分析、设计、实现和测试等活动都是用例驱动的。

        2)以体系结构为中心

         RUP中的开发活动是围绕体系结构展开的。软件体系结构的设计和代码设计无关,也不依赖于具体的程序设计语言。软件体系结构是软件设计过程中的一个层次,这一层次超越计算过程中的算法设计和数据结构设计。体系结构层次的设计问题包括系统的总体组织和全局控制、通信协议、同步、数据存取、给设计元素的组织、物理分布、系统的伸缩性和性能等。

        3)迭代与增量 

        RUP强调采用迭代和增量的方式来开发软件,把整个项目开发分为多个迭代过程。在迭代中,只考虑系统的一部分需求,进行分析、设计、实现、测试和部署等过程;每次迭代是在已完成部分的基础上进行的,每次增加一些新的功能实现,以此进行下去,直至最后项目的完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值