第1章 概述
1.1 一个简单例子
1.2 对象和类
1.2.1 对象的概念
1.2.2 类的概念
1.3 面向对象特性
1.3.1 封装性
1.3.2 继承性
1.3.3 多态性
1.4 接口
1.5 模型是什么
1.5.1 模型的一般作用
1.5.2 模型的特点
1.6 建模的概念
1.6.1 建模是什么
1.6.2 好模型的标准是什么
1.6.3 拒绝建模的理由
1.7 UML2的图
1.7.1 结构图
1.7.2 行为图
1.7.3 图的说明
1.8 UML2建模工具
1.9 小结
1.10 练习
第2章 用例与用例图
2.1 一个用例图例子
2.2 用例
2.3 参与者
2.4 用例图
2.5 用例间的关系
2.5.1 泛化
2.5.2 包含
2.5.3 扩展
2.5.4 关系的讨论
2.6 用例建模技术
2.6.1 语境建模
2.6.2 用例及其关系建模
2.6.3 场景建模
2.7 用例建模示例
2.8 小结
2.9 练习
第3章 类与接口
3.1 一个类图例子
3.2 类元
3.3 性质
3.3.1 语法规范
3.3.2 性质的类型
3.3.3 与编程语言之间的映射
3.4 对象图
3.4.1 实例规范
3.4.2 值规范
3.4.3 对象图的用途
3.5 操作
3.5.1 语法规范
3.5.2 操作的约束和重定义
3.5.3 与编程语言之间的映射
3.5.4 与C++程序的映射
3.5.5 与java程序的映射
3.6 接口
3.6.1 供口和需口
3.6.2 接口间的关联与协作
3.6.3 与编程语言之间的映射
3.7 约束和注释
3.7.1 约束
3.7.2 注释
3.8 类图及其用途
3.8.1 对概念建模
3.8.2 对简单协作建模
3.8.3 对数据库模式建模
3.9 小结
3.10 练习
第4章 关系建模
4.1 关系概念
4.2 关联
4.2.1 命名
4.2.2 多重性
4.2.3 聚集
4.2.4 导向性
4.2.5 自关联
4.2.6 关联类
4.2.7 限定关联
4.2.8 多元关联
4.2.9 关联端的修饰符
4.3 泛化
4.3.1 泛化的概念
4.3.2 不恰当的泛化
4.3.3 关系环
4.3.4 泛化集
4.3.5 单继承与多继承
4.3.6 强类型
4.4 依赖
4.4.1 使用
4.4.2 抽象
4.4.3 对依赖的讨论
4.5 关系建模方法
4.6 设计原则
4.6.1 SRP单一职责原则
4.6.2 OCP开闭原则
4.6.3 LSP里氏替换原则
4.6.4 ISP接口分离原则
4.6.5 DIP依赖倒置原则
4.7 小结
4.8 练习
第5章 其他结构建模
5.1 标记值与构造型
5.1.1 标记值
5.1.2 构造型的定义
5.1.3 构造型的使用
5.2 包和包图
5.2.1 包的成员
5.2.2 包导入
5.2.3 包合并
5.2.4 包的内聚性原则
5.2.5 包的耦合性原则
5.3 复合结构图
5.3.1 内部结构
5.3.2 端口
5.3.3 协作
5.4 模板
5.4.1 模板类
5.4.2 协作模板
5.5 小结
5.6 练习
第6章 交互与交互图
6.1 一个序列图例子
6.2 交互
6.3 生命线
6.4 消息
6.4.1 同步与异步
6.4.2 创建与撤销
6.4.3 消息的规范
6.4.4 消息的种类
6.5 发生规范与执行规范
6.5.1 发生规范
6.5.2 执行规范
6.6 组合片断
6.7 交互的使用
6.8 门
6.9 增强生命线
6.9.1 状态不变式
6.9.2 动作
6.10 主动对象
6.11 序列图建模技术
6.12 序列图示例
6.13 通信图
6.14 计时图
6.15 交互纵览图
6.16 小结
6.17 练习
第7章 状态机与状态图
7.1 一个状态图例子
7.2 状态与状态机
7.3 状态转换
7.4 事件
7.4.1 调用事件
7.4.2 改变事件
7.4.3 信号事件
7.4.4 时间事件
7.5 状态的内部
7.6 复合状态
7.6.1 单区间和多区间
7.6.2 复合状态的状态转换
7.7 伪状态
7.7.1 始态
7.7.2 分叉
7.7.3 汇合
7.7.4 接合
7.7.5 选择
7.7.6 深历史
7.7.7 浅历史
7.7.8 入口点
7.7.9 出口点
7.7.10 终结
7.8 终态
7.9 子机状态
7.10 协议状态机
7.11 状态机建模技术
7.12 状态图示例
7.13 小结
7.14 练习
第8章 活动与活动图
8.1 活动图的例子
8.2 活动的概念
8.2.1 理解活动
8.2.2 理解动作
8.2.3 活动图的主要元素
8.2.4 令牌与令牌流
8.3 活动图概述
8.4 动作结点
8.4.1 动作执行步骤
8.4.2 动作的性质
8.4.3 调用动作
8.4.4 发送信号动作
8.4.5 接收事件动作
8.5 控制结点
8.5.1 起始
8.5.2 分叉与汇合
8.5.3 判断与合并
8.5.4 活动终止
8.5.5 流终止
8.6 对象结点
8.6.1 一般对象结点
8.6.2 引脚
8.6.3 活动形参结点
8.6.4 中心缓冲结点
8.6.5 数据存储结点
8.7 活动边
8.7.1 边的权重
8.7.2 控制流
8.7.3 对象流
8.8 分区和泳道
8.9 可中断活动区问
8.10 异常
8.11 结构化活动结点
8.11.1 顺序结点
8.11.2 条件结点
8.11.3 循环结点
8.12 扩展区间
8.13 活动图建模技术
8.14 活动图示例
8.1 5小结
8.1 6练习
第9章 构件与构件图
9.1 构件概念及表示
9.2 构件的特性
9.3 构件的视图
9.3.1 外部视图
9.3.2 内部视图
9.4 构件之间的关系
9.5 连接器
9.6 JavaBean构件
9.7 Applet构件
9.8 Servlet构件
9.9 构件图示例
9.10 何时使用构件图
9.11 小结
9.12 练习
第10章 制品、结点与部署图
10.1 制品
10.1.1 制品概念
10.1.2 制品的承载
10.1.3 制品之间的关系
10.2 结点
10.2.1 结点之间的关系
10.2.2 设备
10.2.3 执行环境
10.3 部署
10.4 部署规范
10.5 部署图示例
10.6 何时使用部署图
10.7 小结
10.8 练习
参考文献