图书目录

目    录

准备篇

第1章  UML概述 2

1.1  认识UML 3

  1.1.1  UML的发展历程 3

  1.1.2  UML统一的作用 3

  1.1.3  UML体系结构 4

  1.1.4  UML建模流程 5

1.2  UML的组成 5

  1.2.1  事物 5

  1.2.2  关系 7

  1.2.3  图 7

1.3  UML的视图和通用机制 10

  1.3.1  UML的视图 10

  1.3.2  通用机制 11

1.4  Rational统一过程 12

  1.4.1  过程的特点 12

  1.4.2  阶段和迭代 12

  1.4.3  任务和制品 13

  1.4.4  制品 14

1.5  面向对象开发 15

  1.5.1  面向对象的概念 15

  1.5.2  面向对象开发的概述 15

  1.5.3  面向对象的主要特征 17

  1.5.4  面向对象的层 18

  1.5.5  面向对象的模型 19

第2章  UML建模工具概述 20

2.1  常用UML建模工具 21

  2.1.1  Visio 21

  2.1.2  PowerDesigner 22

  2.1.3  StarUML 22

2.2  使用Rational Rose建模 23

  2.2.1  Rational Rose概述 23

  2.2.2  Rational Rose工作环境 25

  2.2.3  Rational Rose中的视图 26

2.3  Rational Rose建模的基本操作 27

  2.3.1  新建Rational Rose模型 27

  2.3.2  创建Rational Rose框图 28

  2.3.3  保存与发布模型 30

  2.3.4  导入与导出模型 31

  2.3.5  设置全局选项 31

2.4  双向工程 32

  2.4.1  正向工程 32

  2.4.2  逆向工程 34

  

基础篇

第3章  用例和用例图 36

3.1  用例图的构成 37

  3.1.1  什么是用例图 37

  3.1.2  系统 37

  3.1.3  参与者 38

  3.1.4  用例 39

  3.1.5  关系 41

3.2  用例关系和描述 41

  3.2.1  泛化关系 41

  3.2.2  包含关系 43

  3.2.3  扩展关系 44

  3.2.4  用例描述 45

3.3  绘制用例图 47

  3.3.1  新建用例图 47

  3.3.2  创建内容 48

3.4  建模实例:创建BBS论坛用例图 50

  3.4.1  确定系统信息 50

  3.4.2  前台功能概述 51

  3.4.3  构造用例模型 52

3.5  新手训练营 54

第4章  类图 57

4.1  类图的概念 58

  4.1.1  类图概述 58

  4.1.2  类 59

  4.1.3  定义类 62

  4.1.4  接口 63

4.2  泛化关系 64

  4.2.1  泛化的含义和用途 64

  4.2.2  泛化的层次与多重继承 64

  4.2.3  泛化约束 65

4.3  依赖关系和实现关系 66

  4.3.1  依赖关系 66

  4.3.2  实现关系 67

4.4  关联关系 68

  4.4.1  二元关联 68

  4.4.2  关联类 72

  4.4.3  或关联与反身关联 72

  4.4.4  聚合关系 73

  4.4.5  组合关系 73

4.5  绘制类图 74

  4.5.1  创建类图 74

  4.5.2  操作类图 75

  4.5.3  类图的规范 76

4.6  建模实例:创建BBS论坛类图 78

  4.6.1  创建实体类 78

  4.6.2  创建类与类之间的关系图 80

4.7  新手训练营 81

第5章  对象图和包图 83

5.1  对象图 84

  5.1.1  对象和类 84

  5.1.2  对象和链 84

  5.1.3  对象图概述 85

  5.1.4  对象图和类图的区别 86

  5.1.5  使用对象图测试类图 87

5.2  包图 88

  5.2.1  包 88

  5.2.2  导入包 90

  5.2.3  包图概述 90

  5.2.4  包之间的关系 92

  5.2.5  包图和类图的区别 93

5.3  对象图和包图建模 93

  5.3.1  使用对象图建模 93

  5.3.2  使用包图建模 93

5.4  绘制对象图 94

  5.4.1  绘制方法 94

  5.4.2  绘制实例 94

5.5  绘制包图 95

  5.5.1  绘制包图 95

  5.5.2  规范使用的共性 96

  5.5.3  绘制嵌套包图 97

5.6  建模实例:创建机房系统对象图 98

  5.6.1  创建对象元素 98

  5.6.2  创建对象关系 98

5.7  新手训练营 99

第6章  活动图 100

6.1  活动图概述 101

  6.1.1  定义活动图 101

  6.1.2  活动图的主要元素 102

  6.1.3  了解活动和动作 102

6.2  活动图的组成元素 103

  6.2.1  基本组成元素 103

  6.2.2  其他组成元素 105

6.3  控制节点 110

  6.3.1  分支与合并 110

  6.3.2  分叉与汇合 111

6.4  绘制活动图 112

  6.4.1  创建活动图 112

  6.4.2  操作活动图 112

6.5  建模实例:创建BBS论坛

活动图 116

  6.5.1  建模步骤 116

  6.5.2  创建活动图 117

6.6  新手训练营 118

第7章  顺序图 120

7.1  顺序图概述 121

  7.1.1  什么是顺序图 121

  7.1.2  顺序图的元素 121

7.2  顺序图的构成元素 122

  7.2.1  对象 122

  7.2.2  生命线 123

  7.2.3  消息 123

  7.2.4  激活 128

7.3  建模和执行 128

  7.3.1  建模时间 128

  7.3.2  执行规范 129

  7.3.3  建模迭代 130

7.4  绘制顺序图 130

  7.4.1  创建顺序图 130

  7.4.2  操作元素 131

  7.4.3  限制因素和图形项配置 132

7.5  建模实例:创建BBS论坛顺序图 133

  7.5.1  会员用户功能顺序图 133

  7.5.2  普通用户功能顺序图 134

7.6  新手训练营 135

第8章  通信图和时序图 137

8.1  通信图概述 138

  8.1.1  什么是通信图 138

  8.1.2  对象与类角色 138

  8.1.3  关联角色与链接 139

  8.1.4  消息 140

8.2  操作消息元素 140

  8.2.1  消息序列号与控制点 140

  8.2.2  创建对象 141

  8.2.3  消息迭代 141

8.3  时序图概述 142

  8.3.1  什么是时序图 142

  8.3.2  时序图中的对象 143

  8.3.3  状态 143

  8.3.4  时间 143

  8.3.5  状态线 144

  8.3.6  事件与消息 144

8.4  时间约束和替代 145

  8.4.1  时间约束 145

  8.4.2  时序图的替代表示法 146

8.5  绘制通信图 147

  8.5.1  创建通信图 147

  8.5.2  操作通信图 147

8.6  建模实例:创建BBS论坛通信图 149

  8.6.1  会员用户功能通信图 149

  8.6.2  普通用户功能通信图 150

8.7  新手训练营 151

第9章  状态机图 153

9.1  状态机概述 154

  9.1.1  状态机及其构成 154

  9.1.2  状态机图标记符 154

9.2  转移 155

  9.2.1  转移的定义 155

  9.2.2  事件 156

  9.2.3  动作 158

  9.2.4  转移的类型 159

9.3  组合状态 160

  9.3.1  顺序状态 160

  9.3.2  并发子状态 160

  9.3.3  同步状态 161

  9.3.4  历史状态 161

  9.3.5  子状态机引用状态 162

9.4  绘制状态机图 162

  9.4.1  创建状态机图 162

  9.4.2  绘制各类元素 163

9.5  建模实例:创建自动取款机

状态机图 165

  9.5.1  分析状态机图 165

  9.5.2  创建状态机图 166

9.6  新手训练营 167

第10章  组件图和部署图 169

10.1  构造实现方式图概述 170

  10.1.1  组件图概述 170

  10.1.2  部署图概述 170

  10.1.3  组合组件图和部署图 171

10.2  组件图 171

  10.2.1  组件 171

  10.2.2  接口 173

10.2.3  组件间的关系与

组件嵌套 174

  10.2.4  组件图的建模应用 174

  10.2.5  组件图的适用情况 175

10.3  部署图 176

  10.3.1  节点和连接 176

  10.3.2  部署间的关系 177

10.3.3  部署图的适用情况及

绘制 177

  10.3.4  部署图的建模应用 178

10.4  绘制部署图 179

10.4.1  初识部署图 179

10.4.2  添加元素 179

10.5  绘制组件图 180

10.5.1  创建组件图 180

10.5.2  添加组件元素 181

10.6  建模实例:创建BBS论坛组

件图和部署图 182

10.6.1  实现BBS论坛组件图 182

10.6.2  实现BBS论坛部署图 183

10.7  新手训练营 183

第11章  组合结构图和交互概览图 186

11.1  组合结构图 187

11.1.1  内部结构 187

11.1.2  端口 188

11.1.3  协作 189

11.2  交互概览图 190

11.2.1  组成部分 190

11.2.2  使用交互 191

11.2.3  组合交互 192

11.3  建模实例:创建网上购物

 系统用例图 193

11.3.1  系统概述 193

11.3.2  创建用例图 195

11.4  新手训练营 197

进阶篇

第12章  UML与RUP 200

12.1  RUP概述 201

12.1.1  理解软件开发过程 201

12.1.2  什么是RUP 201

12.1.3  RUP的作用 202

12.1.4  RUP的特点 203

12.2  RUP的二维空间 203

12.2.1  时间维 204

12.2.2  RUP的静态结构 205

12.3  核心工作流程 207

12.3.1  需求获取工作流 207

12.3.2  分析工作流 209

12.3.3  设计工作流 210

12.3.4  实现工作流 211

12.3.5  测试工作流 212

12.4  Rational Rose在RUP模型中的

应用 214

12.4.1  可视化建模 214

12.4.2  Rational Rose建模与

RUP 214

12.4.3  Rational Rose建模与RUP

应用实例 215

12.5  建模实例:创建网上购物系统

静态模型 217

12.5.1  定义系统的类 217

12.5.2  创建类关系 218

12.6  新手训练营 218

第13章  对象约束语言 221

13.1  对象约束语言概述 222

13.1.1  对象约束语言简介 222

13.1.2  语言结构 222

13.1.3  语言语法 223

13.1.4  表达式 225

13.2  数据类型 225

13.2.1  基本数据类型 226

13.2.2  集合类型 227

13.2.3  OclMessage类型 227

13.2.4  OclVoid和OclAny类型 227

13.2.5  模型元素类型 228

13.3  集合 229

13.3.1  创建集合 229

13.3.2  操作集合 229

13.3.3  Collection类型 230

13.3.4  Set类型 231

13.3.5  Bag类型 232

13.3.6  Sequence类型 233

13.4  语言约束 234

13.4.1  使用约束 234

13.4.2  对象级约束 236

13.4.3  消息级约束 237

13.4.4  约束和泛化 238

13.5  建模实例:创建网上购物系统的交互模型 239

13.5.1  顺序图 239

13.5.2  通信图 241

13.6  新手训练营 241

第14章  UML扩展机制 243

14.1  UML的体系结构 244

14.1.1  UML扩展机制概述 244

14.1.2  4层元模型体系结构 244

14.1.3  元元模型层 245

14.1.4  元模型层 246

14.2  UML核心语义 247

14.2.1  模型元素 247

14.2.2  视图元素 248

14.3  构造型 249

14.3.1  表示构造型 249

14.3.2  UML标准构造型 249

14.3.3  使用UML扩展机制

进行建模 252

14.4  标记值 253

14.4.1  表示标记值 254

14.4.2  UML标准标记值 254

14.4.3  自定义标记值 254

14.4.4  标记值应用元素 254

14.5  约束 255

14.5.1  表示约束 255

14.5.2  UML标准约束 256

14.5.3  自定义约束 258

14.6  建模实例:完成网上购物系统的

创建 258

14.6.1  创建状态机图 258

14.6.2  创建实现方式图 260

14.7  新手训练营 261

第15章  UML与数据库设计 263

15.1  数据库设计概述 264

15.1.1  数据库设计与UML模型 264

15.1.2  数据库接口 264

15.2  类图到数据库的转换 265

15.2.1  基本映射转换 265

15.2.2  类到表的转换 266

15.2.3  关联关系的转换 268

15.2.4  需要避免的映射情况 268

15.3  完整性与约束验证 269

15.3.1  父表的约束 269

15.3.2  子表的约束 270

15.4  数据库实现与转换技术 271

15.4.1  类映射到数据库技术 271

15.4.2  UML模型转换为

数据库 272

15.4.3  SQL语句实现

数据库功能 273

15.5  建模实例:创建图书管理

系统用例图 274

15.5.1  需求分析 274

15.5.2  识别参与者和用例 275

15.5.3  用例描述 276

15.6  新手训练营 278

第16章  基于C++的UML模型实现 280

16.1  模型元素的简单实现 281

16.1.1  类 281

16.1.2  实现原理 281

16.2  实现关联 283

16.2.1  基本关联 283

16.2.2  强制对可选或者

强制关联 284

16.2.3  可选对可选关联 284

16.2.4  可选对多关联 284

16.2.5  强制对多关联 285

16.2.6  多对多关联 285

16.2.7  有序关联的实现 286

16.2.8  关联类的实现 286

16.3  受限关联的实现 287

16.3.1  受限关联概述 287

16.3.2  强制或者可选对可选

受限关联 288

16.3.3  可选对强制或者可选

受限关联 288

16.3.4  多对可选的受限关联 289

16.3.5  多对受限关联 290

16.4  UML关系的实现 290

16.4.1  泛化关系的实现 290

16.4.2  聚合与组合关系的

实现 291

16.5  特殊类的实现 291

16.5.1  接口 292

16.5.2  枚举 292

16.5.3  包 293

16.5.4  模板 293

16.6  建模实例:创建图书管理系统

静态结构模型 294

16.6.1  定义系统中的

对象和类 294

16.6.2  定义用户界面类 296

16.6.3  类之间的关系 298

16.7  新手训练营 299

第17章  UML与建模 303

17.1  数据建模 304

17.1.1  数据库设计概述 304

17.1.2  数据库设计的步骤 305

17.1.3  对象模型和数据模型的

互相转换 308

17.2  业务建模 309

17.2.1  业务建模概述 309

17.2.2  UML业务建模扩展 310

17.2.3  业务体系结构 312

17.3  Web建模 312

17.3.1  Web建模概述 312

17.3.2  Web建模扩展WAE 313

17.3.3  Rational Rose中的

Web建模 315

17.4  建模实例:创建图书管理

系统动态行为模型 317

17.4.1  建立顺序图 317

17.4.2  建立状态图 325

17.4.3  物理模型 326

17.5  新手训练营 327

第18章  Web应用程序设计 329

18.1  Web应用程序的结构 330

18.1.1  瘦客户端模式 330

18.1.2  胖客户端模式 331

18.1.3  Web传输模式 332

18.2  Web应用系统的UML建模

方法 332

18.2.1  Web页面建模 332

18.2.2  表单建模 333

18.2.3  组件建模 333

18.2.4  框架建模 334

18.3  UML在学生成绩管理系统建模中的

运用 334

18.3.1  系统需求分析 334

18.3.2  系统设计 335

18.4  系统详细设计和部署 339

18.4.1  系统详细设计 340

18.4.2  系统部署 341

第19章  嵌入式系统设计 342

19.1  嵌入式系统概述 343

19.1.1  嵌入式系统的技术特点 343

19.1.2  嵌入式系统的开发技术 344

19.2  嵌入式系统的需求分析 345

19.2.1  MP3播放器的工作原理 345

19.2.2  外部事件 346

19.2.3  识别用例 347

19.2.4  使用顺序图描述用例 348

19.3  系统的静态模型 349

19.3.1  识别系统中的对象或类 349

19.3.2  绘制类图 349

19.4  系统的动态模型 352

19.4.1  状态机图 352

19.4.2  协作图 353

19.5  体系结构 354