标题：UML面向对象分析与设计教程
图书信息
作者：胡荷芬、高斐 [1]  
定价：30元
印次：1-1
装帧：平装
印刷日期：2012-4-18
图书简介
UML是当前比较流行的一种建模语言，它可以用于创建各种类型的项目需求、设计乃至上线文档，特别适合采用面向对象的思维方式进行软件建模。规范化、可视化的软件建模已成为当今软件技术的主流之一。
本书依据统一建模语言UML与面向对象编程语言，结合实际案例，深入全面地探讨了软件建模的概念、规范和方法。全书共13章，前3章介绍了面向对象、UML建模语言和Rational Rose建模工具的一些基本理论和概念。第4~12章详尽地介绍了UML中类图、对象图、用例图、包图、序列图、协作图、活动图、状态图、构件图和部署图的概念及其在实际中的使用。最后，通过一个综合案例对使用Rational Rose进行UML建模的全过程进行了深入剖析。此外，各章后面配有适量的练习题和上机题，以加深读者的理解和提高。
本书最大的特点是将理论和实际紧密地结合，实例丰富、图文并茂，讲解详尽、实践性强。
本书可以作为高等院校计算机软件工程专业UML和面向对象技术的教材，也可以作为广大软件开发人员和系统架构分析设计人员自学UML的参考书。
前言
UML是当前比较流行的一种建模语言，它可以用于创建各种类型的项目需求、设计乃至上线文档，特别适合采用面向对象的思维方式进行软件建模。随着UML建模语言的不断发展，它已经获得了广泛的认同，目前已经成为主流的项目需求和分析建模语言。Rational Rose是目前最为业界瞩目的可视化软件开发工具，通过它可以便捷高效地完成UML的建模工作。
本书是一本关于UML的教材，书中包含了UML的基础知识、基本元素和使用方法，在讲述UML的使用过程中，是结合Rational Rose讲述的，从中大家能感受到使用Rational Rose开发UML的便捷性和高效性。在讲述UML的同时，结合了大量的实战案例，并且为了提高大家的学习效率，在每个章节后面还提供了一定数量的习题。相信不同的读者都会在本书的学习过程中得到不同的收获。
本书内容
本书共分13章，其中：
第1章 基于面向对象的UML：主要介绍了面向对象的基本知识、建立系统模型的方法和UML统一建模语言的基本内容。学习本章的目的是使读者对UML有初步的认识。
第2章 UML语言综述：对UML语言进行了系统的介绍，包括常用的UML元素、UML的通用机制、UML的扩展机制等必须了解的知识点。
第3章 UML工具——Rational Rose：对UML的主流开发工具——Rational Rose进行了介绍，包括其安装、使用、四种视图模型和生成代码的方法。本章为后面绘制UML图打好了基础。
第4章 类图和对象图：介绍了类图和对象图的基本概念及其在UML中的表示。通过讲解使用Rose创建类图的方式，使读者在学完本章后，能够根据类图和对象图描绘出系统的静态结构。
第5章 包图：对包图中的基本概念和它们的使用方法逐一进行了详细介绍。通过本章的学习，能够熟练使用包图描述系统的组织结构。
第6章 用例图：介绍了用例图的概念和作用，讲解了用例图的重要组成元素和如何通过Rational Rose创建用例图。
第7章 序列图：针对UML中交互图之一的序列图进行了介绍，包括它的基本概念、组成、在项目中的相关概念和使用Rose创建序列图的方法。
第8章 活动图：介绍了活动图的基本概念、组成元素及使用Rose创建活动图的方法。
第9章 协作图：协作图是交互视图的另外一种表现方式。通过本章的学习，可以掌握协作图的基本概念和使用方法，进而能够熟练使用协作图描述系统中对象之间的交互。
第10章 状态图：介绍了构成状态图的元素、状态图的组成。通过本章的学习，能够从整体上理解状态图并掌握状态图的画法。
第11章 构件图和部署图：对UML中描述系统的物理实现和物理运行情况的构件图和部署图进行了详细的讲解。在学完本章后，能够根据构件图和部署图的基本概念，创建图中的各种模型元素，描绘出系统的物理结构，并能将前面介绍过的其他图结合起来，完成对整个系统的建模。
第12章 Rational统一过程：介绍了统一过程的概念、结构、配置和实现Rational统一过程的方法。
第13章 网上购物商店：给出了一个网上购物商店的综合实例，将前面各章介绍的UML的各种图形和模型元素综合起来，实现对一个完整系统的设计和建模过程。整个过程按照软件设计的一般流程进行，以便对实际项目的系统建模有一个直观的认识。
本书特点
理论实际，紧密结合。本书在介绍理论知识的同时，每一章都给出了大量案例讲解，力求让读者在理解基础知识后，就能学以致用，快速上手。每章都配有相应的课后习题和上机练习，方便读者课后的实践练习。
配套源码，免费课件。为了方便读者自学，本书不仅在每章后面附有精心设计的课后习题和上机练习，还配套有免费的课件、实例源码等，这样就能使读者牢固而扎实地掌握各种基本知识点。
图文并茂，步骤详细。在具体介绍Rational Rose软件功能的时候，本书提供了详细的图例，详尽地说明了每一步功能的实现，让读者一眼就能明了整个功能的使用方法和绘制步骤。每一个步骤都以通俗易懂的语言进行讲述，读者只需要按照步骤操作，就可以轻松完成软件的建模。
图书目录
第1章 基于面向对象的UML1
1.1 面向对象是UML的基础1
1.1.1 什么是面向对象1
1.1.2 面向对象的基本特征6
1.2 什么是模型9
1.2.1 为什么要建模9
1.2.2 建模的目标和原则10
1.3 用面向对象设计项目11
1.3.1 面向对象分析11
1.3.2 面向对象设计15
1.4 什么是UML17
1.4.1 UML的发展历史17
1.4.2 UML的主要特点18
1.4.3 UML的应用领域19
1.4.4 用UML可以建立的
模型种类19
1.5 习题24
第2章 UML语言综述26
2.1 UML语言的构成26
2.2 UML 的基本元素26
2.2.1 结构事物26
2.2.2 行为事物28
2.2.3 分组事物29
2.2.4 注释事物29
2.3 关系元素30
2.4 视图和图31
2.4.1 视图31
2.4.2 图36
2.5 UML的公共机制41
2.5.1 UML的通用机制41
2.5.2 UML的扩展机制42
2.6 习题45
第3章 UML工具——Rational Rose47
3.1 Rational Rose概述47
3.2 Rational Rose的安装48
3.3 Rational Rose的使用50
3.3.1 Rational Rose的启动界面50
3.3.2 Rational Rose的主界面52
3.3.3 Rational Rose的常用操作57
3.4 Rational Rose的四种视图模型64
3.4.1 用例视图64
3.4.2 逻辑视图68
3.4.3 部署视图72
3.4.4 构件视图73
3.5 用Rational Rose生成代码74
3.5.1 生成代码的方法75
3.5.2 逆向工程78
3.6 习题79
第4章 类图和对象图81
4.1 类图的概念81
4.2 UML中的类82
4.2.1 类的表示83
4.2.2 类的组成83
4.2.3 类的类型87
4.2.4 类的构造型88
4.3 类图中的关系89
4.3.1 实现关系89
4.3.2 泛化关系90
4.3.3 依赖关系91
4.3.4 关联关系92
4.4 绘制类图93
4.4.1 类图和类的创建93
4.4.2 类与类之间关系的创建98
4.5 对象图的概念100
4.5.1 对象的表示101
4.5.2 链的表示101
4.6 绘制对象图的方法102
4.7 创建类图和对象图实例分析103
4.7.1 确定类和关联103
4.7.2 确定属性和操作104
4.7.3 根据类图创建对象图105
4.8 习题105
第5章 包图108
5.1 包图的概念108
5.1.1 模型的组织结构108
5.1.2 包图和包110
5.2 包的表示111
5.2.1 包的命名111
5.2.2 包的可见性111
5.2.3 包的构造型112
5.2.4 包的子系统113
5.3 包图中的关系113
5.3.1 依赖关系113
5.3.2 泛化关系115
5.4 包的嵌套115
5.5 绘制包图116
5.5.1 包的创建116
5.5.2 添加包中的类117
5.5.3 包的依赖关系创建118
5.6 创建包图实例分析118
5.6.1 确定包的分类118
5.6.2 创建包和关系119
5.7 习题120
第6章 用例图122
6.1 用例图的概念122
6.2 用例图的表示123
6.2.1 参与者的表示123
6.2.2 用例的表示124
6.3 参与者之间的关系125
6.3.1 识别参与者125
6.3.2 参与者间的泛化关系126
6.4 用例之间的关系127
6.4.1 识别用例127
6.4.2 用例的粒度127
6.4.3 用例规约128
6.4.4 标识用例间的关系129
6.5 系统边界132
6.6 绘制用例图132
6.6.1 创建用例图133
6.6.2 创建参与者135
6.6.3 创建用例136
6.6.4 创建用例和参与者之间的
关联137
6.6.5 创建用例之间的关系137
6.7 创建用例图实例分析138
6.7.1 需求分析138
6.7.2 识别参与者140
6.7.3 确定用例140
6.7.4 构建用例模型141
6.8 习题142
第7章 序列图145
7.1 序列图的概念145
7.2 序列图的表示146
7.2.1 对象的表示146
7.2.2 生命线的表示147
7.2.3 激活的表示148
7.2.4 消息的表示148
7.3 序列图中的对象行为150
7.3.1 对象的创建和销毁150
7.3.2 分支与从属流151
7.4 绘制序列图151
7.4.1 序列图的创建和删除151
7.4.2 序列图中对象的创建和
删除153
7.4.3 消息的创建154
7.4.4 消息的设置155
7.4.5 生命线的设置157
7.4.6 对象的销毁157
7.5 创建序列图实例分析158
7.5.1 需求分析158
7.5.2 确定序列对象159
7.5.3 创建的序列图160
7.6 习题160
第8章 活动图163
8.1 活动图的概念163
8.2 活动图的表示164
8.2.1 活动状态的表示165
8.2.2 动作状态的表示165
8.2.3 组合活动的表示166
8.2.4 分支与合并的表示166
8.2.5 分叉与汇合的表示167
8.2.6 对象流的表示168
8.2.7 泳道的表示169
8.3 绘制活动图170
8.3.1 活动图的创建170
8.3.2 初始和终止状态的创建172
8.3.3 动作状态的创建172
8.3.4 活动状态的创建173
8.3.5 泳道的创建174
8.3.6 转换的创建175
8.3.7 分支的创建175
8.4 创建活动图实例分析176
8.4.1 确定需求用例176
8.4.2 确定用例路径177
8.4.3 创建完整的活动图178
8.5 习题178
第9章 协作图182
9.1 协作图的概念182
9.2 协作图的表示183
9.2.1 对象的表示184
9.2.2 消息的表示184
9.2.3 链的表示185
9.3 绘制协作图185
9.3.1 协作图的创建185
9.3.2 对象的创建187
9.3.3 链和消息的创建188
9.3.4 序列图和协作图的转换189
9.4 创建协作图实例分析189
9.4.1 创建协作图的步骤189
9.4.2 需求分析190
9.4.3 确定协作图元素191
9.4.4 确定元素之间的关系191
9.4.5 创建协作图192
9.5 习题192
第10章 状态图195
10.1 状态图的概念195
10.1.1 状态机195
10.1.2 状态图196
10.2 状态图的表示197
10.2.1 状态197
10.2.2 转换199
10.2.3 判定201
10.2.4 同步202
10.2.5 事件203
10.2.6 初始状态和终止状态204
10.3 状态的分类204
10.3.1 历史状态205
10.3.2 组成状态205
10.4 绘制状态图206
10.4.1 状态图的创建207
10.4.2 初始和终止状态的创建208
10.4.3 状态的创建208
10.4.4 状态间转换的创建209
10.4.5 事件的创建209
10.4.6 动作的创建210
10.4.7 监护条件的创建211
10.5 创建状态图实例分析211
10.5.1 确定状态图的实体211
10.5.2 确定状态图中实体的
状态212
10.5.3 创建相关事件完成
状态图212
10.6 习题213
第11章 构件图和部署图215
11.1 构件的概念215
11.1.1 构件215
11.1.2 构件的种类216
11.1.3 构件的表示216
11.2 构件图的概念217
11.3 绘制构件图219
11.3.1 构件图的创建219
11.3.2 构件的创建221
11.3.3 构件关系的创建221
11.4 部署图222
11.4.1 部署图的概念222
11.4.2 部署图的表示222
11.5 绘制部署图224
11.5.1 节点的创建225
11.5.2 节点的设置226
11.5.3 连接的创建227
11.6 创建构件图和部署图
实例分析228
11.6.1 创建构件图228
11.6.2 创建部署图230
11.7 习题231
第12章 Rational统一过程234
12.1 软件开发过程234
12.2 Rational统一过程简介235
12.2.1 统一过程的概念235
12.2.2 Rational 统一过程的
历史236
12.3 Rational统一过程的框架237
12.3.1 Rational统一过程的
核心工作流238
12.3.2 Rational统一过程的
迭代开发模式240
12.3.3 Rational统一过程的
最佳实现240
12.4 Rational统一过程的
开发模型244
12.4.1 统一过程的动态开发245
12.4.2 统一过程的静态开发249
12.4.3 面向架构的过程251
12.5 Rational统一过程的配置和
实现253
12.5.1 Rational统一过程的
配置253
12.5.2 Rational统一过程的
实现253
12.6 习题255
第13章 网上购物商店257
13.1 系统需求分析257
13.2 系统建模259
13.2.1 创建系统用例模型259
13.2.2 创建系统静态模型262
13.2.3 创建系统动态模型266
13.2.4 创建系统部署模型277