新書推薦:
《
唐代冠服图志(百余幅手绘插画 图解唐代各类冠服 涵盖帝后 群臣 女官 士庶 军卫等 展现唐代社会风貌)
》
售價:HK$
87.4
《
知宋·宋代之科举
》
售價:HK$
99.7
《
那本书是(吉竹伸介与又吉直树 天才联动!)
》
售價:HK$
99.7
《
传播的跃迁:人工智能如何革新人类的交流
》
售價:HK$
110.9
《
纯粹·古代中国的历史与制度
》
售價:HK$
62.7
《
生活来来往往 别等来日方长 新版(伍佰:“讲好了这一辈子,再度重相逢。”别等,别遗憾!珍惜当下才是最好的解药)
》
售價:HK$
58.2
《
一个英国军事顾问眼中的二战
》
售價:HK$
277.8
《
就业、利息和货币通论(徐毓枬译本)(经济学名著译丛)
》
售價:HK$
67.2
|
編輯推薦: |
本书作者根据多年来积累的课堂教学经验,开发了一种创新的教学方法,以学生易于理解的方式解释面向对象分析和设计的概念与实践,以确保读者始终保持阅读兴趣。本书涵盖了采用*版本UML 2编制的案例研究、活动模型和诸多图表,同时进行了必要的拓展,不仅包括了构成课程的必要元素,还提供了诸多教学特色,适合用作高等院校教材。
? 易读性强,内容引人入胜,以读者易于理解的语言解释概念。? 深入涵盖所有重要主题,如软件开发生命周期、对象和类的标识、面向对象的图表、UML及其应用。? 采用实践方法介绍概念,包含丰富的应用场景和实际案例。? 在每章开始处提供概念图,让学生形象了解知识的层次结构。? 提供独有的渐进式练习题,按记住、理解、应用和分析4个层次循序渐进。? 讲述了如何将伪代码UML示例转换为编程示例。
|
內容簡介: |
本书作者根据多年来积累的课堂教学经验,开发了一种创新的教学方法,以学生易于理解的方式解释面向对象分析和设计的概念与实践,以确保 读者始终保持阅读兴趣。本书涵盖了采用*版本UML 2编制的案例研究、 活动模型和诸多图表,同时进行了必要的拓展,不仅包括了构成课程的必要 元素,还提供了诸多教学特色,适合用作高等院校教材。 * 易读性强,内容引人入胜,以读者易于理解的语言解释概念。 * 涵盖所有重要主题,如软件开发生命周期、对象和类的标识、面向对 象的图表、UML及其应用。 * 采用实践方法介绍概念,包含丰富的应用场景和实际案例。 * 在每章开始处提供概念图,让学生形象了解知识的层次结构。 * 提供独有的渐进式练习题,按记住、理解、应用和分析4个层次循序 渐进。 * 讲述了如何将伪代码UML示例转换为编程示例。
|
目錄:
|
目录
第1章 统一软件过程 1
1.1 软件开发过程基础 1
1.1.1 瀑布模型 2
1.1.2 增量模型 3
1.1.3 演化模型 3
1.1.4 敏捷模型 4
1.2 RUP简介 5
1.3 统一软件过程组件 5
1.4 统一过程模型的生命周期阶段 6
1.4.1 初始阶段 6
1.4.2 细化阶段 7
1.4.3 构造阶段 9
1.4.4 交付阶段 9
1.5 面向对象图在RUP中的应用 10
小结 11
多选题 11
练习 13
第2章 面向对象开发的理论基础 15
2.1 结构化方法和面向对象方法的对比 16
2.1.1 结构化方法 16
2.1.2 面向对象方法 18
2.2 软件开发过程中的面向对象 19
2.2.1 为什么需要面向对象方法 19
2.2.2 算法和面向对象方法在抽象上的区别 19
2.2.3 算法和面向对象方法在分解上的区别 19
2.2.4 算法和面向对象方法在层次上的区别 20
2.3 面向对象的特点 21
2.4 面向对象中的基本实体 21
2.4.1 什么是类 21
2.4.2 什么是对象 22
2.4.3 属性 23
2.4.4 方法 24
2.4.5 接口 25
2.4.6 包 26
2.4.7 组件 27
2.4.8 访问说明符可见性控制 27
2.5 面向对象的构造 28
2.5.1 抽象 28
2.5.2 封装 29
2.5.3 信息隐藏 30
2.5.4 层次 31
2.5.5 多态 33
2.5.6 消息传递 34
2.6 选择面向对象开发的因素 35
2.7 案例研究 35
小结 41
多选题 42
练习 44
第3章 面向对象分析与设计中类和对象的识别 45
3.1 问题域的面向对象分析 46
3.2 用于类和对象识别的面向对象分析技术 49
3.2.1 基于抽象的分析 50
3.2.2 实体分析 51
3.2.3 基于场景的分析 51
3.2.4 基于操作的分析 53
3.2.5 基于问题域的分析 53
3.2.6 基于CRC卡的分析 55
3.2.7 基于数据流和控制流的分析 56
3.2.8 基于名词-动词的分析 57
3.3 问题域的面向对象设计 57
3.4 面向对象设计的设计原则 58
3.4.1 开闭原则(OCP) 58
3.4.2 Liskov替代原则(LSP) 59
3.4.3 依赖性倒置原则(DIP) 59
3.4.4 接口分离原则(ISP) 59
3.4.5 发布重用等效原则(REP) 60
3.4.6 共同封闭原则(CCP) 60
3.4.7 共同重用原则(CRP) 60
3.5 类和对象的识别和细化过程中的设计模式 61
3.5.1 设计模式介绍 61
3.5.2 设计模式创建型 63
3.5.3 设计模式结构型 66
3.5.4 设计模式行为型 68
3.6 OOA技术的案例研究 72
小结 74
多选题 75
练习 80
第4章 UML建模 81
4.1 分析和设计阶段 82
4.1.1 问题领域理解 82
4.1.2 传统的分析和设计方法及模型 82
4.1.3 良好的分析具有的特点 84
4.1.4 传统方法的缺陷 85
4.2 基于UML的面向对象分析和设计 86
4.3 可视化建模 86
4.4 图形符号系统 87
4.4.1 Booch表示法 88
4.4.2 对象管理技术(OMT) 88
4.4.3 统一建模语言(UML) 88
4.5 将UML用作一个有效的建模工具 90
4.6 理解UML图 91
4.6.1 结构图 92
4.6.2 行为图 92
4.7 对OOA和OOD的支持 93
4.8 UML中的众多图表 94
4.9 UML的范围 95
4.9.1 已解决的问题 95
4.9.2 案例研究1 95
4.9.3 案例学习2 96
小结 96
多选题 97
练习 99
第5章 面向对象分析基于场景的模型 100
5.1 用例分析 100
5.1.1 用例 100
5.1.2 用例的重要性 101
5.2 主用例图 101
5.3 次用例图 103
5.4 用例图中使用的符号 104
5.4.1 系统 104
5.4.2 参与者 105
5.4.3 用例 106
5.4.4 关系 106
5.5 用例图的目的 110
5.6 如何绘制用例图 111
5.7 案例研究 111
5.8 已解决的问题 118
小结 120
多选题 120
练习 125
第6章 面向对象设计逻辑模型 127
6.1 UML类图 127
6.1.1 类实例 128
6.1.2 类图结构化的表示 128
6.2 类图中使用的基本符号 128
6.2.1 类 128
6.2.2 抽象类 130
6.2.3 标准的类构造型 130
6.2.4 非标准的类构造型 131
6.2.5 类模板 132
6.2.6 接口 133
6.2.7 对象 134
6.2.8 数据类型 134
6.2.9 属性 136
6.2.10 分类器属性 136
6.2.11 关联属性 137
6.2.12 限定符 137
6.2.13 多重性 137
6.2.14 操作 138
6.2.15 抽象操作 140
6.2.16 约束 140
6.2.17 多重性 141
6.2.18 可见性 141
6.2.19 UML关联 142
6.2.20 关联终端 143
6.2.21 可导航性 144
6.2.22 不推荐的可导航性惯例 144
6.2.23 元数 145
6.2.24 共享聚合和复合聚合 146
6.2.25 关联类 147
6.2.26 链接 147
6.2.27 UML中的泛化 148
6.2.28 继承 148
6.2.29 UML中的依赖关系 149
6.2.30 使用 150
6.2.31 必需的接口 152
6.2.32 UML中的抽象 152
6.2.33 实现 153
6.2.34 接口实现 153
6.2.35 跟踪 154
6.3 目的 154
6.4 类图构造指南 154
6.4.1 在结构化视图中构建类图的清单 155
6.4.2 识别和建模类 155
6.4.3 识别和建模关联 156
6.4.4 定义属性 156
6.4.5 列出所需的查询和输入 157
6.4.6 制定查询和输入 157
6.4.7 进行信息分析 158
6.4.8 整合类图 159
6.4.9 验证类图 159
6.5 已解决的案例研究 159
小结 160
多选题 161
练习 163
第7章 交互图 167
7.1 交互图 167
7.1.1 序列图 168
7.1.2 协作图 182
7.1.3 决定交互图的范围 185
7.2 已解决的案例研究 186
小结 188
多选题 188
练习 190
第8章 面向对象设计行为设计 194
8.1 状态图 194
8.1.1 状态图中使用的符号 195
8.1.2 状态图的作用 199
8.1.3 绘制状态图的指导原则 199
8.1.4 状态图的应用 199
8.1.5 案例研究手机监控软件 200
8.2 活动图 202
8.2.1 活动图的类型 203
8.2.2 活动图中使用的符号 203
8.2.3 活动图的作用 210
8.2.4 绘制活动图的指导原则 210
8.2.5 活动图、序列图和状态图之间的对比 211
8.2.6 案例研究手机监控软件 212
8.3 已解决的案例研究 214
小结 216
多选题 217
练习 220
第9章 面向对象设计物理图 221
9.1 包图 222
9.1.1 包图中使用的表示法 222
9.1.2 包图的作用 226
9.1.3 绘制包图的指导方针 226
9.1.4 案例研究 227
9.2 组件图 228
9.2.1 组件图中使用的表示法 228
9.2.2 UML 2.0中的高级表示法 229
9.2.3 组件图的作用 231
9.2.4 绘制组件图的指导方针 231
9.2.5 案例研究组件图 232
9.3 部署图 235
9.3.1 部署图中的表示法 235
9.3.2 部署图的作用 238
9.3.3 绘制部署图的指导方针 238
9.4 案例研究 239
9.5 已解决的案例研究 240
小结 241
多选题 242
练习 247
第10章 面向对象开发示例 248
10.1 在现实世界中应用类和对象 248
10.2 IT服务台 248
10.2.1 产品概述 248
10.2.2 项目的范围 249
10.2.3 组件 249
10.2.4 基于角色的特定要求 250
10.2.5 产品功能 251
10.2.6 用例图 251
10.2.7 类图 261
10.2.8 序列图 263
10.2.9 活动图 274
10.3 保险索赔管理系统 283
10.3.1 描述 283
10.3.2 功能需求 283
10.3.3 用例图 284
10.3.4 使用UML的逻辑设计 287
10.3.5 使用UML的行为设计 290
10.4 工作流管理系统 296
10.4.1 描述 296
10.4.2 产品功能 296
10.4.3 功能需求 297
10.4.4 用例图 298
10.4.5 使用UML的逻辑设计 303
10.4.6 行为模型使用UML的交互图 304
10.4.7 使用UML的行为设计 312
10.4.8 包图 321
10.4.9 组件图 323
10.4.10 部署图 323
10.5 桌面应用程序工具开发PreClean工具 324
10.5.1 描述 324
10.5.2 功能需求 325
10.5.3 模块描述 325
10.5.4 用例图 328
10.5.5 使用UML的逻辑设计 331
10.5.6 使用UML的行为设计 336
10.5.7 包图 341
10.5.8 组件图 342
10.5.9 部署图 342
术语表 344
VI
UML面向对象分析与设计
VII
目录
|
內容試閱:
|
前 言
一、简介
在当今世界,计算机化系统和软件已经变得密不可分,后者成为驱动前者的工具。遗
憾的是,软件并不能被所有人轻松利用。人们需要编写它、理解它、分析它、使用它和更
新它来应对未来版本的变更。正是这个人类和编程世界的交织把建模复杂系统摆到了构造
层面,其级别要高于普通的编程语言。这也提出了对方法学的需求,以此引导软件工
程师和编程人员处理建模过程本身。
为了设计一个高级建模方法,需要一种专家图表式推理。单靠图表或流程图的帮助来
进行解释并不够。图表语言都很重要,可以通过对验证和分析的计算机化支持来理解它们。
多年来,结构化分析(Structured Analysis,SA)和面向对象分析(Object Oriented
Analysis,OOA)被认为在高级方法中占主导地位。SA在20世纪70年代由DeMarco、
Yourdo等人提出,它基于以图形的方式将传统的过程化编程概念提升到建模级别。这
就要求通过功能分解和信息流来建模系统结构,并用数据流图进行描述。面向对象分析与
设计(也称为面向对象建模)在20世纪80年代后期问世。系统结构的基本思想是以图形
的方式将面向对象编程中的概念提升到建模级别。
现在,面向对象方法学已经成功地组合成通用的UML,目的是想结合各种面向对象建
模方法的优点。这是一个突破性的成果,因为越来越多的软件工程师现在声称有更多种类
的软件可以以面向对象方式开发和使用。
为了捕获系统结构,UML对类和对象采用了一种图表化语言,该语言基于实体关系方
法。对于早期阶段行为分析,它推荐了使用用例和序列图。而另一方面,对于行为的完整
构造规范,它采用了状态图,这样可以在上述可执行对象建模工作中进行修改。
伴随着近年来UML的流行浪潮,将会有大量书籍、报纸、报告、研讨会和工具来描
述、利用和说明UML。在目前市面上的众多图书中,本书凭借其组织和呈现思想的方式而
独树一帜。
二、关于本书
本书通过UML解释面向对象分析与设计的主题,同时通过对主题的创新方法来吸引
读者的兴趣。本书为读者提供了一些可以从理论上掌握并应用到现实生活中的章节内容。
系统分析和设计是在面向对象方法环境中必须采取的活动。前4章在此上下文中基于面向
开发范例进行信息系统的开发。
本书每一章的开头都有一个概念图以及学习目标,这清晰说明在后续章节中会介绍的
主题,同时也指出它们的重要性。这是一个额外的优势,因为它为面向对象的主题打下了
一个坚实的基础。章末的练习分为牢记应用分析实践部分,用来测试学生的
理解程度。第10章给出的已解决的示例既可帮助学生,也可帮助教师。他们所掌握的知识
可应用到所有应用程序领域。提供的示例并不是相近的示例集,而是选自不同的公司项目,
所以属于实践知识部分。因此,提供的解决方案可以用于任意相似类型的应用程序。这些
特色使得本书成为一种有关面向对象软件开发方法的全面而有帮助的资料。
本书对于学习计算机科学信息技术和计算机应用课程的学生来说是非常有
用的学习资料。它对于想理解业务信息系统如何开发的人或者想知道UML工具如何帮助
设计的编程人员来说也很有用。每天需要与系统开发人员沟通的业务分析师和客户同样可
参考本书。
本书介绍了UML图最实用的部分、每个图的作用、绘制它们的符号以及如何使用现
实生活中的案例研究来应用它们。UML为业务和技术方面的专业人员提供了一个共同基
础。在合适的地方提供的示例和案例研究对于建立通用语言非常实用和有帮助。它们还通
过分解图表和清晰解释为什么和如何使用图表描述关键业务系统。
三、本书特色
易于阅读、引人入胜和一致的语言。
深入覆盖了所有重要的主题,如软件开发生命周期、对象和类的识别、面向对象的
图、UML及其应用。
案例研究、示例和现实情形中应用的实用方法。
每章章首的概念图,使得学生可以形象地了解概念的层次结构。
独特的分级练习,分为牢记理解应用分析部分。
解释了如何将伪代码UML示例转换为编程示例。
四、本书组织结构
本书由10章组成。第1章介绍各种软件生命周期开发,特别是开发软件的统一软件过
程的重要性以及相关概念。第2章指出OOA区别于SA之处、选择面向对象方法的根据以
及类、抽象和实例。第3章解释如何进行现实世界的建模,以及识别系统中类和实例的OOA
和OOD部分概念。第4章全面讲述UML建模工具,并且与其他可视化建模工具作对比,
介绍其对面向对象软件开发的支持。第5~8章以系统的方式详细讨论UML中可用的各种
图表元素,也就是可用的符号,以及每种表示法的用法和应用。所有这些图都通过贯穿全
书的案例研究来解释,因此读者可以对所有UML图有更好的和完整的理解。第9章通过
案例研究讨论包图、组件图和部署图。第10章介绍4个特殊的案例研究,包括桌面应用程
序、内联网应用程序、客户机-服务器应用程序以及基于Web的应用程序。这些问题是从
现实项目中选取出来的,当学生在不同公司实习时可帮到他们。另外,对这些系统的完整
面向对象分析与设计(包括UML图集)也一并提供。
五、网络资源
学生和老师可通过http:www.mhhe.comjeya_malaooad获取下列资源。
Rational Rose Tool Kit指导如何用于UML图(与书结合在一起)
按章节分类的测试
参考资料的链接
案例研究
PowerPoint幻灯片
作者视频的链接
作 者
II
UML面向对象分析与设计
III
前 言
|
|