第十三章_RUP统一软件过程_第1页
第十三章_RUP统一软件过程_第2页
第十三章_RUP统一软件过程_第3页
第十三章_RUP统一软件过程_第4页
第十三章_RUP统一软件过程_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第13章RUP统一软件过程 13 1RUP概述13 2RUP的四个工作阶段13 3RUP的五个核心工作流13 4RUP过程的特点13 5RUP裁剪 13 1RUP概述 RUP 即RationalUnifiedProcess Rational统一过程 统一过程是一个软件的开发过程 它将用户需求转化为软件系统所需的活动的集合 统一过程不仅是一个简单的过程 而且是一个通用的过程框架 可用于各种不同类型的软件系统 各种不同的应用领域 各种不同功能级别以及各种不同的项目规模 13 1RUP概述 基于构件的用UML制定软件系统所有蓝图突出特点 用例驱动 以架构为中心 迭代和增量过程四个阶段 初始 细化 构造 移交五个核心工作流 需求捕获 分析 设计 实现 测试 13 1RUP概述 RUP开发模型 13 RUP的 个工作阶段 每个阶段开始时都有特定的目标 结束时有里程碑 在每个阶段中存在一个或多个迭代 在每个迭代中 可以有多个工作流 1 初始阶段 初始阶段的目标 确定项目的软件范围和边界条件识别出系统的关键用例展示系统的侯选架构估计整个项目需要的费用和时间安排评估项目风险 1 初始阶段 初始阶段的主要活动 建立系统的业务模型捕获系统的基本需求确定系统的边界识别关键任务确定系统验收标准进行项目风险评估进行项目资源的估计与效益分析制定项目开发计划与重要里程碑 1 初始阶段 初始阶段的重点 初始阶段的重点是需求分析与系统分析 如果需要构造原型系统 则需做一些设计与实现 初始阶段的里程碑 生命周期目标 1 初始阶段 初始阶段的制品 项目蓝图文档 系统的核心需求 关键特性与主要约束初始的用例模型 完成10 20 初始的项目术语表业务用例模型 包括商业环境 验收标准和财政预测初始的风险评估一个可以显示阶段和迭代的项目计划一个或多个原型初始的架构文档 1 初始阶段 可以用如下标准来评价初始阶段是否成功 风险承担者是否赞成项目的范围定义 成本以及进度估计 是否通过主要用例证实对需求的理解 成本与进度预测的评估以及优先级 风险和开发过程的可信度 所开发软件原型的深度和广度 实际开支与计划开支的比较 架构的轮廓是否合理如果无法达到这些标准 可能取消项目或重新对项目进行仔细的考虑 2 细化阶段 最关键的阶段 细化阶段的目标 迅速定出实用的架构规划完成项目的活动 估算完成项目所需资源细化初始阶段模型为构造阶段定出高精确度的计划 2 细化阶段 最关键的阶段 细化阶段的主要活动 细化构想 建立对大多数关键用例的确定理解分析问题域 建立坚实的架构细化架构并选择组件捕获80 的功能需求用例精化风险评估建立可执行的软件原型定义非功能需求制定过程迭代计划和迭代的评价标准 2 细化阶段 最关键的阶段 细化阶段的重点 细化阶段主要关注需求 分析和设计工作流 每个工作流关注如下各项 需求 精化系统范围和需求分析 确定构造什么设计 创建稳定的架构实现 构造架构基线测试 测试架构基线 2 细化阶段 最关键的阶段 细化阶段的里程碑 生命期架构细化阶段的主要制品 系统架构基线UML静态模型 UML动态模型 UML用例模型修订的风险评估修订的用例修订的项目计划可执行的原型 2 细化阶段 最关键的阶段 细化阶段的评价是通过回答下述问题来完成的 软件的构想是否稳定 架构是否稳定 可执行的原型是否表明风险要素已被处理并可靠地解决了 构造阶段的计划是否足够详细和精确 是否有可靠的基础 如果在当前架构上下文中执行计划并开发出整个系统 是否所有的风险承担人都同意系统达到了当前的需求 实际的费用支出与计划支出是否可以接受 如果无法达到这些标准 可能取消项目或对项目进行重新考虑 3 构造阶段 构造阶段的目标 实现管理层和用户达成共识的产品的所有用例一个移交阶段的高精度计划关键特性和核心功能得到实现产品发布的验收标准初步的用户手册产品质量的详细分析 3 构造阶段 构造阶段的主要活动 资源管理 资源控制和过程优化完成组件开发并根据已定义的评价准则进行测试利用构想制定的准则对发布的产品进行评估 3 构造阶段 构造阶段的重点 构造阶段主要关注系统的实现工作流 每个工作流关注如下各项 需求 揭示任何遗漏的需求分析 完成分析模型设计 完成设计模型实现 构造初始运作功能测试 测试初始运作功能 3 构造阶段 构造阶段的里程碑 初始运作功能构造阶段的制品 可运行的软件系统UML模型测试用例用户手册发布描述 构造阶段的结束是项目开发的第三个重要的里程碑 这个阶段产生的版本通常被称为 版 3 构造阶段 评价构造阶段需要回答以下问题 软件是否足够稳定和成熟 从而可以发布给用户 是否所有的风险承担人都准备好了向用户交付软件产品 实际费用与计划费用的对比是否仍可被接受 如果项目无法达到这些要求 必须推迟进入交付阶段 4 交付阶段 交付阶段的目标 试用产品并改正试用中发现的缺陷制作安装版并培训用户提供在线支持 4 交付阶段 交付阶段的主要活动 将软件系统部署到用户环境修复软件的缺陷编制用户手册和其它文档培训用户和维护人员提供用户咨询 4 交付阶段 交付阶段的重点 交付阶段主要关注系统的测试和配置工作流 每个工作流关注如下各项 设计 如果 测试中出现问题 修改设计 实现 为用户场地裁减软件 修复在 测试中发现的问题 测试 测试及其在用户现场验收测试 配置 将软件系统部署到环境中 并配置相应参数 4 交付阶段 交付阶段的里程碑 产品发布交付阶段的制品 可运行的软件产品用户手册用户支持计划 4 交付阶段 评价交付阶段需要回答以下问题 用户是否认可系统已经成功部署 用户是否积极使用该软件产品 用户是否认可产品支持策略 如果项目无法达到这些要求 必须推迟交付 13 3RUP的5个核心工作流 工作流 规程 是由活动构成的活动序列 沿着过程组件轴 开发过程可以被划分为五个核心工作流 1 需求捕获 2 分析 3 设计 4 实现 5 测试 统一开发过程的一次迭代包括五个核心工作流 每个阶段经过多次迭代 但每个阶段侧重点不同 13 4RUP的特点 三大特点 用例驱动以体系结构为中心迭代和增量 28 1 用例驱动 UseCase模型表达了系统的需求 按照RUP UseCase贯穿整个软件开发的生命周期 在需求分析中 客户或用户对UseCase进行描述 在系统分析和系统设计过程中 设计师对UseCase进行分析 在实现过程中 开发编程人员对UseCase进行实现 在测试过程中 测试人员对UseCase进行检验 29 2 以体系结构为中心 软件体系结构是关于构成系统的元素 这些元素之间的交互 元素和元素之间地组成模式以及作用在这些组成模式上的约束等方面的描述 由于在项目的开发过程中不同的开发人员所关心的角度是不一样的 因此软件的体系结构应该是一个多维的结构 RUP采用如下图所示的4 1视图模型 利用UML语言来描述软件的体系结构 30 2 以体系结构为中心 31 在4 1视图模型中 分析人员和测试人员关心的是系统的行为 因此会侧重于用例视图 最终用户关心的是系统的功能 因此会侧重于逻辑视图 程序员关心的是系统的配置 装配等问题 因此会侧重于实现视图 系统集成人员关心的是系统的性能 可伸缩性 吞吐率等问题 因此会侧重于进程视图 系统工程师关心的是系统的发布 安装 拓扑结构等问题 因此会侧重于部署视图 2 以体系结构为中心 32 3 迭代和增量 RUP强调采用迭代和增量方式来开发软件 把整个项目开发分为多个迭代过程 在每次迭代中 只考虑系统的一部分需求 进行分析 设计 实现 测试 部署等过程 每次迭代是在已完成部分的基础上进行的 每次增加一些新的功能实现 以此进行下去 直至最后项目的完成 33 采用迭代和增量的方式有以下好处 在软件开发的早期就可以对关键的 影响大的风险进行处理 可以提出一个软件体系结构来指导开发 可以更好的处理不可避免的需求变更 可以较早的得到一个可运行的系统 鼓舞开发团队的士气 增强项目成功的信心 为开发人员提供一个能更有效工作的开发过程 34 13 5RUP裁剪 RUP是一个通用的过程模板 包含了很多开发指南 制品 开发过程所涉及到的角色说明 由于它非常庞大所以对具体的开发机构和项目 用RUP时还要做裁剪 也就是要对RUP进行配置 RUP就像一个元过程 通过对RUP进行裁剪可以得到很多不同的开发过程 这些软件开发过程可以看作RUP的具体实例 35 RUP裁剪可以分为以下几步 确定本项目需要哪些工作流 RUP的9个核心工作流并不总是需要的 可以取舍 确定每个工作流需要哪些制品 确定4个阶段之间如何演进 确定阶段间演进要以风险控制为原则 决定每个阶段要那些工作流 每个工作流执行到什么程度 制品有那些 每个制品完成到什么程度 36 确定每个阶段内的迭代计划 规划RUP的4个阶段中每次迭代开发的内容 规划工作流内部结构 工作流涉及角色 活动及制品 他的复杂程度与项目规模即角色多少有关 最后规划工作流的内部结构 通常用活动图的形式给出 RUP4个主要建模元素 角色role who活动activity how例如用例分析 用例设计制品artifact what例如用例实现 模型 文档 源代码 可执行体工作流workflow when例如顺序图 38 1 Role 角色角色定义了在软件工程组织的环境中 个人或协同工作的多人小组的行为和职责 角色代表项目中个人承担的任务 并定义其如何完成工作 39 Rup预定义的角色 分析员角色 业务流程分析员 业务设计员 业务模型复审员 需求复审员 系统分析员 用例阐释者 用户界面设计员 开发人员角色 构架设计师 构架复审员 封装体设计员 代码复审员 数据库设计员 设计复审员 设计员 实施员 集成员 40 测试专业人员角色 测试设计员 测试员 经理角色 变更控制经理 配置经理 部署经理 流程工程师 项目经理 项目复审员 其他角色 任意角色 课程开发员 图形设计员 涉众 系统管理员 技术文档编写员 工具专家 41 2 活动 活动定义的是角色的活动 即角色需要执行的工作 活动的主体是角色 活动的目的就是为了生产更新工件 每个活动通常是由一个角色完成 但不一定是一个人完成 42 3 工件 工件是由过程生产 修改或使用的信息 工件是活动的输入和输出 是一种有形产品 角色使用工件执行活动 并在执行活动的过程中生成工件 43 工件有多种形式 模型 例如用例模型或设计模型 它包含其他工件 模型元素 即模型中的元素 例如设计类 用例或设计子系统 文档 例如商业理由或软件构架文档 源代码和可执行程序 某种构件 可执行程序 44 4 工作流 工作流描述的是能生产有价值成果的有意义的活动序列 并描述角色之间的交互 按UML术语 工作流可以表现为顺序图 协作图或活动图 在RUP中 使用活动图 RUP中最重要的应该是 1 UseCase2 单元测试3 迭代开发4 分层架构 分析设计按照RUP大致可细分为如下几个步骤 1 创建Actors 2 创建UseCases 并描述每个UseCase 功能描述 3 创建SequenceDiagrams

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论