第1章 UML介绍
1.1 UML概述
1.1.1 方法之战
1.1.2 UML方法
1.1.3 UML的认可
1.1.4 OMG标准
1.2 方法和建模语言
1.3 面向对象软件开发
1.4 UML的用途
1.4.1 不同类型的系统
1.4.2 业务工程
1.5 系统开发阶段
1.5.1 需求分析阶段
1.5.2 分析阶段
1.5.3 设计阶段
1.5.4 编码阶段
1.5.5 测试阶段
第2章 UML概述
2.1 视图
2.1.1 用例视图
2.1.2 逻辑视图
2.1.3 组件视图
2.1.4 并发视图
2.1.5 部署视图
2.2 图
2.2.1 用例图
2.2.2 类图
2.2.3 对象图
2.2.4 状态图
2.2.5 顺序图
2.2.6 协作图
2.2.7 活动图
2.2.8 组件图
2.2.9 部署图
2.3 模型元素
2.4 通用机制
2.4.1 修饰
2.4.2 注解
2.4.3 规格说明
2.5 扩展UML
2.5.1 构造型
2.5.2 标记值
2.5.3 约束
2.6 用UML建模
2.7 工具
2.7.1 绘图支持
2.7.2 模型存储库
2.7.3 导航
2.7.4 多用户支持
2.7.5 代码生成
2.7.6 逆向工程
2.7.7 工具集成
2.7.8 模型互换
2.8 本章小结
第3章 用例建模
3.1 用例图
3.2 系统
3.3 参与者
3.3.1 发现参与者
3.3.2 UML中的参与者
3.3.3 参与者之间的关系
3.4 用例
3.4.1 发现用例
3.4.2 UML中的用例
3.4.3 用例之间的关系
3.5 描述用例
3.6 测试用例
3.6.1 排练用例
3.7 实现用例
3.8 本章小结
第4章 类. 对象及它们的关系
4.1 类和对象
4.2 类图
4.2.1 发现类
4.2.2 名称部分
4.2.3 属性部分
4.2.4 操作部分
4.2.5 使用简单类型
4.3 关系
4.4 关联
4.4.1 标准关联
4.4.2 对象图
4.4.3 递归关联
4.4.4 关联中的角色
4.4.5 限定关联
4.4.6 或关联
4.4.7 有序关联
4.4.8 关联类
4.4.9 三元关联
4.4.10 聚合
4.5 泛化
4.5.1 标准泛化关系
4.5.2 受约束的泛化关系
4.6 依赖和精化关系
4.7 约束和导出(规则)
4.8 接口
4.9 包
4.10 模板
4.11 模型质量
4.11.1 什么是好模型
4.11.2 模型与它的目的匹配吗
4.11.3 模型协作
4.11.4 模型复杂性
4.12 本章小结
第5章 动态建模
5.1 对象(消息)之间的交互
5.2 状态图
5.2.1 状态和转换
5.2.2 事件
5.3 在状态图之间发送消息
5.3.1 子状态
5.3.2 历史指示器
5.4 顺序图
5.4.1 一般形态和实例形态
5.4.2 并发对象
5.4.3 定义迭代和约束的标签
5.4.4 创建和销毁对象
5.4.5 递归
5.5 协作图
5.5.1 消息流
5.5.2 链接
5.5.3 对象的生命期
5.5.4 使用协作图
5.6 活动图
5.6.1 动作和转换
5.6.2 泳道
5.6.3 对象
5.6.4 信号
5.6.5 使用活动图进行业务建模
5.7 本章小结
第6章 高级动态建模:实时系统
6.1 面向对象和实时系统
6.2 实时概念
6.2.1 主动类和主动对象
6.2.2 通信
6.2.3 同步
6.2.4 在Java中实现并发和同步
6.3 在UML中实时建模
6.3.1 状态图
6.3.2 顺序图
6.3.3 协作图
6.3.4 活动图
6.3.5 组件图和部署图
6.4 适应到实时系统
6.4.1 实时系统建模要特别注意的一些问题
6.5 处理相关问题
6.6 本章小结
第7章 物理体系结构
7.1 逻辑体系结构
7.2 物理体系结构
7.2.1 硬件
7.2.2 软件
7.3 组件图
7.3.1 编译时组件
7.3.2 链接时组件
7.3.3 运行时组件
7.4 部署图
7.4.1 节点
7.4.2 连接
7.4.3 组件
7.4.4 对象
7.5 节点的复杂建模
7.6 将组件分配到节点
7.7 本章小结
第8章 扩展UML
8.1 语义核心概念
8.2 标记值和特性
8.2.1 用于元素的标记值
8.2.2 用于类型. 实例. 操作和属性的标记值
8.2.3 用于模型元素和组件的标记值
8.2.4 定义自己的标记值
8.3 约束
8.3.1 用于泛化的约束
8.3.2 用于关联的约束
8.3.3 用于关联角色的约束
8.3.4 用于消息. 链接角色和对象的约束
8.3.5 定义自己的约束
8.4 构造型
8.4.1 用于类型的构造型
8.4.2 用于依赖的构造型
8.4.3 用于组件的构造型
8.4.4 用于注解的构造型
8.4.5 用于简单类型的构造型
8.4.6 用于泛化的构造型
8.4.7 用于包的构造型
8.4.8 用于类的构造型
8.4.9 用于操作的构造型
8.4.10 用于主动类的构造型
8.4.11 定义自己的构造型
8.5 本章小结
第9章 设计模式和UML
9.1 概述
9.1.1 “Gang of Four”模式
9.1.2 代理模式
9.2 UML中的建模模式
9.2.1 参数化协作
9.2.2 在图中显示模式
9.3 模式和用例
9.4 本章小结
第10章 使用UML的过程
10.1 定义和理解软件工程过程
10.1.1 过程上下文
10.1.2 过程用户
10.1.3 过程步骤
10.1.4 过程评估
10.2 UML过程的基础
10.2.1 用例驱动系统
10.2.2 以体系结构为中心
10.2.3 迭代
10.2.4 增量
10.3 传统的面向对象方法
10.3.1 需求分析
10.3.2 分析
10.3.3 设计
10.3.4 实现
10.3.5 测试
10.4 Rational Objectory Process
10.4.1 生命周期
10.4.2 初始
10.4.3 细化
10.4.4 构造
10.4.5 移交
10.4.6 与传统过程的比较
10.5 过程工具
10.6 本章小结
第11章 开始应用UML
11.1 转换到UML
11.1.1 升级Booch方法
11.1.2 升级OMT方法
11.2 一个通用升级方法
11.3 建模会议. 工具和技术
第12章 案例学习
12.1 需求
12.2 分析
12.2.1 需求分析
12.2.2 问题域分析
12.3 设计
12.3.1 体系结构设计
12.3.2 详细设计
12.3.3 用户界面设计
12.4 实现
12.5 测试和实施
12.6 本章小结
12.7 练习
12.7.1 分析练习
12.7.2 设计和构造练习
可视化图符
术语表