面向对象缝模技术 软件工程系 林琳
面向对象建模技术 软件工程系 林 琳
第11章UM与RUP 成功的项目所需要具有 的三个方面—符号、过程 和工具。你可以学习一种符 符号 号,但是如果不知道如何 利用它(过程),你可能会 失败。你可能拥有强大的过 程,但是如果不能沟通这些 过程(符号),你也可能失 败。最后,如果你不能记载 过程 工具 自己的工作文档(工具), 你也可能失败
成功的项目所需要具有 的三个方面——符号、过程 和工具。你可以学习一种符 号,但是如果不知道如何 利用它(过程),你可能会 失败。你可能拥有强大的过 程,但是如果不能沟通这些 过程(符号),你也可能失 败。最后,如果你不能记载 自己的工作文档(工具), 你也可能失败。 第11章 UML与RUP
令软件开发过程是软件工程的要素之一,有效的软件开发 过程可以提高软件开发团队的生产效率,并能够提高软件 质量、降低成本、减少开发风险。 UM是一种可应用于软件开发的非常优秀的建模语 但是UM本身并没有告诉人们怎样使用它,为了有效地使 用UML,需要有一种方法应用于它。 令当前最流行的使用UM的方法就是 Rationa1的统一过程 Rational Unified Process 简称RUP)。RUP是软件 开发过程的一种,它为有效地使用统一建模语言UM提供 指导
3 ❖软件开发过程是软件工程的要素之一,有效的软件开发 过程可以提高软件开发团队的生产效率,并能够提高软件 质量、降低成本、减少开发风险。 ❖UML是一种可应用于软件开发的非常优秀的建模语言, 但是UML本身并没有告诉人们怎样使用它,为了有效地使 用UML,需要有一种方法应用于它。 ❖当前最流行的使用UML的方法就是Rational的统一过程 (Rational Unified Process,简称RUP)。RUP是软件 开发过程的一种,它为有效地使用统一建模语言UML提供 了指导
使用广泛的几种软件过程 Rational unified Process ☆ OPEN Process 8 Object-Oriented Software Process ☆ Extreme Programming ☆ Catalysis
使用广泛的几种软件过程 ❖Rational Unified Process ❖OPEN Process ❖Object-Oriented Software Process ❖Extreme Programming ❖Catalysis
本章学习要点: ◆了解软件开发过程 ◆了解UM与RUP的关系及使用RUP的原因 ◆理解RUP的二维空间 令理解RUP的各核心工作流程
5 本章学习要点: ❖ 了解软件开发过程 ❖ 了解UML与RUP的关系及使用RUP的原因 ❖ 理解RUP的二维空间 ❖ 理解RUP的各核心工作流程
1.1理解软件开发过程 软件开发过程是指应用于软件开发和维护当中的阶段、方 法、技术、实践和相关产物(计划、文档、模型、代码、 测试用例和手册等)的集合。有效的软件开发过程可以提 高软件开发团队的生产效率,并能够提高软件质量、降低 成本、减少开发风险。 ◆软件开发过程是开发高质量软件所需完成的任务的框架。 软件工程是一种层次化的技术,如图所示。 流程图、数据流 需求分析、 图、UML图 工具 设计、编码 测试 方法 过程 IS09000、 质量焦点 Waterfall CMM RUP、00SP、 XP
6 11.1 理解软件开发过程 ❖ 软件开发过程是指应用于软件开发和维护当中的阶段、方 法、技术、实践和相关产物(计划、文档、模型、代码、 测试用例和手册等)的集合。有效的软件开发过程可以提 高软件开发团队的生产效率,并能够提高软件质量、降低 成本、减少开发风险。 ❖ 软件开发过程是开发高质量软件所需完成的任务的框架。 软件工程是一种层次化的技术,如图所示。 质量焦点 过程 方法 工具 流程图、数据流 图、UML图 Waterfall、 RUP、OOSP、 XP 需求分析、 设计、编码、 测试 ISO9000、 CMM
1.2 Rational统一过程(RUP) ◆UML( Unified Mode ling language)仅仅是一种系 统建模语言,它并没有告诉建模人员应该如何使用 它,为了使用UM,需要有一种方法应用于它,当 前最流行的使用UM的方法就是 Rationa1的统一过 程( Rational unified Process,简称RUP),也 称为 Unified Process(统一过程)。 冷为什么叫RUP? 由 Rational公司(IBM)开发并维护 有一套统一的架构 描述的是软件开发过程 令可以根据需要进行裁剪
7 11.2 Rational统一过程(RUP) ❖ UML(Unified Modeling Language)仅仅是一种系 统建模语言,它并没有告诉建模人员应该如何使用 它,为了使用UML,需要有一种方法应用于它,当 前最流行的使用UML的方法就是Rational的统一过 程(Rational Unified Process,简称RUP),也 称为Unified Process(统一过程)。 ❖ 为什么叫RUP? ▪ 由Rational公司(IBM)开发并维护 ▪ 有一套统一的架构 ▪ 描述的是软件开发过程 ❖ 可以根据需要进行裁剪
11.2.1理解RUP 令软件开发过程是使软件从概念到成品所能遵循的 系列阶段,RUP作为一种软件开发过程包含了以下4 个阶段: 初始阶段( Inception):进行最初分析的阶段, 用于确定要开发的系统,进行风险分析。注意: 此阶段并不定义需求。 细化阶段( Elaboration):进行系统详细分析 设计的阶段,用于确定系统的功能。 构建阶段( Construction):是一个根据系统设 计的结果进行实际的软件制品构建的过程,该过 程是一个增量过程,代码在每个可管理的部分进 行编写 交付阶段( Transition):在该阶段中,将会处 理将软件系统交付给用户的事务
11.2.1 理解RUP ❖ 软件开发过程是使软件从概念到成品所能遵循的一 系列阶段,RUP作为一种软件开发过程包含了以下4 个阶段: ▪ 初始阶段(Inception):进行最初分析的阶段, 用于确定要开发的系统,进行风险分析。注意: 此阶段并不定义需求。 ▪ 细化阶段(Elaboration):进行系统详细分析 设计的阶段,用于确定系统的功能。 ▪ 构建阶段(Construction):是一个根据系统设 计的结果进行实际的软件制品构建的过程,该过 程是一个增量过程,代码在每个可管理的部分进 行编写。 ▪ 交付阶段(Transition):在该阶段中,将会处 理将软件系统交付给用户的事务。 8
,11.2.2为什么要使用RUP 令在目前比较流行的软件开发过程中,RUP是由发 明UM的3位方法学家提出的,与其他软件开发过 程相比,使用RUP可以更好地进行UM建模, ◆RP能够为软件开发团队提供指南、文档模板和 工具,从而使软件开发团队能够最有效地利用当 前软件开发实践中所获得的六项最佳实践。 迭代地软件开发 需求管理 使用基于组件的架构 为软件建立可视化模型 验证软件质量 软件变更控制
11.2.2 为什么要使用RUP ❖ 在目前比较流行的软件开发过程中,RUP是由发 明UML的3位方法学家提出的,与其他软件开发过 程相比,使用RUP可以更好地进行UML建模, ❖ RUP能够为软件开发团队提供指南、文档模板和 工具,从而使软件开发团队能够最有效地利用当 前软件开发实践中所获得的六项最佳实践。 ▪ 迭代地软件开发 ▪ 需求管理 ▪ 使用基于组件的架构 ▪ 为软件建立可视化模型 ▪ 验证软件质量 ▪ 软件变更控制 9
,11.2.2为什么要使用RUP 瀑布模型的缺点 ☆需要在开始进行完整830 的需求分析 25 令不适应软件开发的高盖 变更率特点 15 令早期的分析后期可能 无用 5 令容易导致软件失败 10 100 1000 0 Project Size in Function Points 各种规模软件项目的变更百分比
11.2.2 为什么要使用RUP ❖ 瀑布模型的缺点 ❖ 需要在开始进行完整 的需求分析 ❖ 不适应软件开发的高 变更率特点 ❖ 早期的分析后期可能 无用 ❖ 容易导致软件失败 各种规模软件项目的变更百分比