1 UML 简介
1.1 什么是UML?
· UML指统一建模语言(Unified Modeling Language)
· UML是描述和文档化系统制品的可视化语言
· UML是一个庞大的图形化表示法体系
· UML应用的三种方式:草图、蓝图、编程语言
· UML的学习要素:
■ 表示法--图形
■ 过程-(UML与过程无关,但最好用于RUP)
■ 工具-(比如:Ratinal Rose)
1.2 UML 快速开始示例 -- 骰子游戏
· 骰子游戏软件模拟游戏者投掷两个骰子,如果总点数是7则赢得游戏,否则为输
· 过程:定义用例->定义领域模型->定义交互图->定义设计类图
· 定义用例(用例是需求分析的一种工具,它是一些情节的描述)
■ 1、游戏者请求骰子
■ 2、系统展示结果:如果骰子的总点数是7,则游戏者赢;否则游戏为输
· 定义领域模式(OOA)- 识别问题中的概念,它是对真实世界领域中的概念和想像可视化,与具体实现的软件技术无关
■ 游戏者
■ 骰子
■ 骰子游戏
· 分配对象职责并绘制交互图(动态建模)
OOD关注的是:软件对象的定义 -- 职责与协作
· 定义设计类图(静态建模)
从领域模型以及交互图中获得启示,定义软件类,包括属性、方法等等
骰子游戏的局部设计类图示例如下
1.3 UML概述
· UML包括:事物、关系、图、扩展机制
· 事物
■ 结构:类、接口、构件、节点等等
■ 行为:交互(消息)、状态等等
■ 分组:包、子系统等等
■ 注释
· 关系
■ 依赖、关联(聚合、组合)、泛化、实现
· 图
■ 用例图、交互图(顺序图、协作图)、类图、活动图、状态图等等
· 扩展机制
■ Stereotype、Tagged Value、Constraint
1.4 图的分类
· 静态建模
■ 类图
· 动态建模
■ 顺序图(协作图)
■ 用例图
■ 活动图
■ 状态图
· 学习顺序
■ 从最重要的部分开始!
■ 类图 -> 顺序图 -> 用例图 -> 活动图 -> 状态图
· 重要的概念及图形表示法初步接触(1)
· 重要的概念及图形表示法初步接触(2)
1.5 Rational Rose
· Rational Rose 是一种建模工具
· 用例视图
■ 需求分析阶段的利器
· 逻辑视图
■ 设计阶段,用例的实现
· 组件(构件)视图
■ 构件表示封装了其内容的系统模块;构件是相对独立的模块
· 部署视图
■ 表示软件元素在物理架构上的部署,以及物理元素之间的通信