(一)学习内容
一、UML统一建模语言
1. 什么是UML
- 说法:UML是一种用于软件系统制品规约的、可视化的构造及建模语言,也可用于业务建模以及其他非软件系统;
- 定义
(1)是编写软件蓝图的标准语言;
(2)是以可视化方式制定、建构以及记录软件为主的系统的产出;
(3)目标是以面向对象的方式来描述任何类型的系统;
(4)是完整的建模语言;
2. UML的内容及组成
- UML语义:描述基于UML的元模型的定义;
- UML表示法:定义了各种UML符号 、元素、框图及其使用方法;
- UML图及其作用:
类型 | 图形 | 作用 |
---|---|---|
静态建模 | 用例图 | 描述系统实现的功能 |
静态建模 | 类图 | 描述系统的静态结构 |
静态建模 | 对象图 | 描述系统在某个时刻的静态结构 |
静态建模 | 构件图 | 描述实现系统组成构件上的关系 |
静态建模 | 配置图 | 描述系统运行环境的配置情况 |
动态建模 | 顺序图 | 描述系统某些元素在时间上的交互 |
动态建模 | 协作图 | 描述系统某些元素之间的协作关系 |
动态建模 | 状态图 | 描述某个用例的工作流 |
动态建模 | 活动图 | 描述某个类的动态行为 |
3. UML的特点
1. 统一的建模语言
2. 支持面向对象
3. 支持可视化建模
4. 强大的表达能力
4. 统一建模语言UML的应用
- 目标:以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域;
- 最常用的是建立软件系统的模型;
- 需求分析阶段:用用例来捕获用户需求;
- 是测试阶段的依据
二、RUP开发方法
1. RUP概述
- 是一种软件工程化过程,又是文档化的软件工程产品;
- 具有良好的可操作性和实用性;
- 是一个面向对象且基于网络的程序开发方法论
- 核心概念:角色(描述某个人或者一个小组的行为和职责)、活动(是一个有明确目的的独立工作单元)、工件(活动生成、创建或修改的一段信息)
2. RUP的各个阶段和里程碑
- 初始化阶段
(1)目标:获得项目的基础
(2)焦点:需求和工作流分析
(3)第一个重要的里程碑:生命周期目标里程碑(评价项目基本的生存能力) - 细化阶段
(1)目标:分析问题领域建立健全的体系结构基础,编制项目计划,淘汰项目中的最高风险元素;
(2)焦点:需求、工作流的分析和设计;
(3)第二个重要的里程碑:生命周期结构里程碑(为系统的结构建立了管理基准并使项目小组能够在构建阶段中进行衡量) - 构建阶段
(1)目标:完成所有的需求、分析和设计;
(2)焦点:实现工作流;
(3)第三个重要的里程碑:初始功能里程碑(决定了产品是否可以在测试环境中进行部署) - 交付阶段
(1)目标:移交产品给用户;
(2)焦点:用户满意;
(3)第四个重要的里程碑:产品发布里程碑
3. 统一开发过程RUP裁剪
1. 确定本项目需要哪些工作流;
2. 确定每个工作流需要哪些制品;
3. 确定4个阶段之间如何演进;
4. 确定每个阶段内的迭代计划;
5. 规划工作流内部结构;
4. RUP的核心工作流
1. 商业建模工作流;
2. 需求工作流;
3. 分析和设计工作流;
4. 实现工作流;
5. 测试工作流;
6. 部署工作流;
7. 配置和变更管理工作流;
8. 项目管理工作流;
9. 环境工作流;
5. RUP的十大要素
- 开发一个前景;
- 达成计划;
- 标识和减小风险;
- 分配和跟踪任务;
- 检查商业理由;
- 设计组织构架;
- 对产品进行增量式的构建和测试;
- 验证和评价结果;
- 管理和控制变化;
- 提供用户支持;
6. RUP管理实施
- 分析员角色集包括业务流程分析员、业务设计员、业务模型复审员、系统分析员、用户界面设计员;
- 开发员角色包括构架设计师、构架复审员、代码复审员、数据库设计人员、系统设计员、设计复审员、实施员、集成员;
- 测试员角色包括测试设计员、测试员;
- 经理角色集包括变更控制经理、配置经理、部署经理、流程工程师、项目经理、项目复审员;
三、Rational Rose
1. Rose概念
- 概念:ROSE是美国IBM开发的软件系统建模工具,它是一种可视化、功能强大的面向对象系统分析与设计的工具,它可以用于系统建模、设计与编码,还可以已有的系统实施逆向工程,实现代码与模型的转换,以便更好的开发与维护系统;
2. Rose的功能及特点
- 功能:支持UML建模过程中使用的多种模型或框图,如业务用例图、用例图、交互图、类图、状态图、构件图、配置图等
- 特点:
(1)支持三层结构方案;
(2)为大型软件工程提供了可塑性和柔韧性极强的解决方案;
(3)支持UML、OOSE及OMT;
(4)支持大型复杂项目;
(5)与多种开发环境无缝集成;
3. Rose的安装准备
- 需要Windows2000/Windows XP 及其以上的版本;
- 需要安装包;
(二)练习
一、名词解释
1. UML
答:统一建模语言,是一种用于软件系统制品规约的、可视化的构造及建档语言,也可用于系统建模以及其他非软件系统;
2. 软件开发
答:是一套关于软件开发阶段的定义、任务和作用的,建立在理论上的一门工程学科,它对解决软件危机、指导任务利用科学和有效的方法来开发软件、提高及保证软件开发效率和治疗起到了一定的作用;
3. RUP
答:统一软件过程,是一个面向对象且基于网络的程序开发方法论。根据Rational的说法,好像一个在线的指导者,它可以为所有方面和层次的程序开发提供指导方针,模板以及事例支持,
4. 角色
答:描述某个人或者一个小组的行为与职责。RUP预先定义了很多角色。
5. Rose
答:是美国IBM公司开发的软件系统建模工具,它是一种可视化、功能强大的面向对象系统分析与设计工具。
二、简答
1. 请简单介绍UML的内容
答:UML作为一种语言,它的定义也同样包括语义和表示法两部分;
(1)语义:描述基于UML元模型的定义,元模型为UML的所有元素在语法和语义上提供了简单、一致、通用的定义性说明,使开发者能在语义上取得一致,消除了因人而异的最佳表达方法所造成的影响。
(2)表示法:定义了各种UML符号、元素、框图及其使用方法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。
2. 请简单介绍UML的特点
答:统一的建模语言、支持面向对象、支持可视化建模、强大的表达能力;
3. RUP的裁剪包括哪些步骤?
答:
(1)确定本项目需要哪些工作流;
(2)确定每个工作流需要哪些制品;
(3)确定4个阶段之间如何演进;
(4)确定每个阶段内的迭代计划;
(5)规划工作流内部结构;
4. RUP的核心工作流有哪些?
答:商业建模工作流、需求工作流、分析设计工作流、实现工作流、测试工作流、部署工作流、配置和变更管理工作流、项目管理工作流、环境工作流;
三、分析题
1. 请分析UML的产生与发展
答:
产生的原因:
(1)不同的面向对象方法有着许多相似支出,通过这项工作,消除可能会给使用者造成混淆的不必要的差异是非常有意义的;
(2)语义和表示法的统一,可以稳定面向对象技术的市场,使工程开发可以采用一门成熟的建模语义,CASE工具的设计者也可以集中精力设计出更优秀的系统;
(3)这种统一能使现在的方法继续向前发展,积累已有的经验,解决以前没有解决好的问题;
发展步骤:
(1)OOPSLA95;
(2)1996.6-1996.10 UML0.9&0.91;
(3)1997.1公布UML1.0;
(4)1997.9公布UML1.1;
(5)1997.11.17 UML1.1被OMG接纳为标准;
2. 请详细对比UML图,并对其功能进行简单的分析
答:
类别 | 图形名称 | 作用 |
---|---|---|
静态建模 | 用例图 | 描述系统实现的功能 |
静态建模 | 类图 | 描述系统的静态结构 |
静态建模 | 对象图 | 描述系统在某时刻的静态结构 |
静态建模 | 构件图 | 描述实现系统组成构件上的关系 |
静态建模 | 配置图 | 描述系统运行环境的配置情况 |
动态建模 | 顺序图 | 描述系统某些元素在时间上的交互 |
动态建模 | 协作图 | 描述系统某些元素之间的协作关系 |
动态建模 | 状态图 | 描述某个用例的工作流 |
动态建模 | 活动图 | 描述某个类的动态行为 |
3. 请详细分析RUP的各个阶段及里程碑
答:
(1)初始阶段:生命周期目标里程碑;
(2)细化阶段:生命周期结构里程碑;
(3)构建阶段:初始功能里程碑;
(4)交付阶段:产品发布里程碑;
4. 请详细分析Rose的功能与特点
答:
(1)功能:Rose支持UML建模过程中使用的多种模型或框图,如业务用例图、用例图、交互图、类图、状态图、配置图等;
(2)特点:支持三层结构方案;为大型软件工程提供了可塑性和柔韧性极强的解决方案;支持UML、OOSE及OMT;支持大型复杂项目;与多种开发环境无缝集成;