- 软件开发过程是一个将用户的需求转化为软件系统所需要的活动的集合,按业务建模的术语,软件开发过程是一个业务流程。
- RUP(Rational Unified Process)是一个面向对象软件工程的通用业务流程。 它描述一系列相关的软件工程过程,具有相同的过程框架。
- RUP 为在开发组织中分配任务和职责提供了一种规范方法。其目标是确保在可预计的时间安排和预算内开发出满足最终用户需求的高品质的软件。它汇集现代软件开发中多方面的最佳经验,为适应各种项目及组织的需要提供了灵活的形式。
- RUP 的历史
- ![[Pasted image 20230627143840.png]]
- RUP 的特色
- 迭代和增量方法
- 是把整个项目开发分为多个迭代过程,在每次迭代中,只考虑系统的一部分需求,进行分析、设计、实现、测试、部署等过程,它是在已完成部分的基础上进行的,每次增加一些新的功能实现,依次进行,直至最后项目完成。
- 以软件体系结构为中心
- 软件体系结构是软件设计过程中的一个层次,体系结构层次 的设计问题包括系统的总体组织和全局控制、通讯协议、同步、 数据存取、给设计元素分配特定功能、设计元素的组织、物理 分布、系统的伸缩性和性能等,因此在设计时需要在各种可能 的选择之间权衡,使系统总体上达到设计目标。
- 迭代和增量方法
- RUP 软件开发的生存周期
- ![[Pasted image 20230627144252.png]]
- 图中横轴代表时间,显示了过程的生命周期,体现了过程的动态结构。通过周期、阶段、迭代和里程碑来表示。纵轴代表核心工作流,工作流将活动自然地进行逻辑分组,体现了过程的静态结构。
- RUP 把软件开发生命周期划分为多个循环(Cycle),每个 Cycle 生成产品的一个新的版本,每个 Cycle 依次由 4 个连续的阶段(Phase)组成,依次为:
- 初始阶段(Inception):定义最终产品视图和业务模型,并确定系统范围;
- 细化阶段(Elaboration):设计及确定系统的体系结构,制定工作计划及资源要求;
- 构造阶段(Construction):构造产品并继续演进需求、体系机构、计划、直至产品提交;
- 交付阶段(Transition):把产品提交给用户使用。
- 每个阶段完成确定的任务,这 4 个阶段体现了 RUP 软件开发过程的动态结构。
- 每一个阶段都有一个或多个连续的迭代(Iteration)组成,迭代是针对不同用例的细化和实现。
- 在每个阶段结束前有一个里程碑(Milestone)评估该阶段的工作。
- 迭代开发方法是一种渐增过程,RUP 的每个阶段可以进一步被分解为多个迭代过程,迭代过程是导致可执行产品版本(内部或外部)的完整开发循环,是最终产品的一个子集,从一个迭代过程到另一个迭代过程递增式增长形成最终的系统。
- 同传统的瀑布模型软件开发方法相比,迭代方法降低了软件过程的早期风险,易于实现变更控制,可以提高软件重用性,保障软件产品的整体质量。
- RUP 软件开发过程中的 9 个核心工作流,表示 RUP 软件开发过程的静态结构:
- 业务建模(Business Modeling)
- 需求(Requirements)
- 分析与设计(Analysis & Design)
- 实现(Implementation)
- 测试(Test)
- 部署(Deployment)
- 项目管理(Project Management)
- 配置与变更管理(Configuration & Change Management)
- 环境(Environment)
- RUP 过程的建模
- RUP 的可视化建模,可以将一个软件系统构架的结构和行为以可视化模型表示,便于开发组中的成员清晰地、无二意地相互交流设计思想和方案。
- RUP 建模的四个阶段:
- 初始阶段:确定系统中的角色和用例;
- 细化阶段:对每个用例进行细化;
- 构造阶段:创建组件和组件框图;
- 交付阶段:将完成的软件产品交给用户。
上一篇

2024-04-20
下一篇

2024-04-20