系统架构设计师教程-第4版 本书特色
本书由希赛教育软考学院组织编写,用以作为计算机技术与软件专业技术资格(水平)考试中的系统架构设计师级别的考试辅导指定教材。内容涵盖了*的系统架构设计师考试大纲的所有知识点,对系统架构设计师所必须掌握的基础理论知识做了详细的介绍,重在培养系统架构设计师所必须具备的专业技能和方法。本书内容既是对系统架构设计师考试的总体纲领性的要求,也是系统架构设计师职业生涯的知识与技能体系。准备参加考试的人员可通过阅读本书掌握考试大纲规定的知识,把握考试重点和难点。
系统架构设计师教程-第4版 内容简介
近十年4个版本的更新,专注软考系统架构设计师级别的考试,涵盖2013~2017年的考题分析,专业平台专家答疑,顺利通过考试。
系统架构设计师教程-第4版 目录
第1章 计算机组成与体系结构 1
1.1 计算机系统组成 1
1.1.1 计算机硬件的组成 1
1.1.2 计算机系统结构的分类 2
1.1.3 复杂指令集系统与精简指令集系统 3
1.1.4 总线 5
1.2 存储器系统 5
1.2.1 主存储器 6
1.2.2 辅助存储器 7
1.2.3 Cache存储器 8
1.3 流水线 13
1.3.1 流水线周期 13
1.3.2 计算流水线执行时间 13
1.3.3 流水线的吞吐率 14
1.3.4 流水线的加速比 14
第2章 操作系统 15
2.1 操作系统的类型与结构 15
2.1.1 操作系统的定义 15
2.1.2 操作系统分类 16
2.2 操作系统基本原理 16
2.2.1 进程管理 16
2.2.2 存储管理 23
2.2.3 设备管理 27
2.2.4 文件管理 28
2.2.5 作业管理 32
第3章 数据库系统 34
3.1 数据库管理系统的类型 34
3.2 数据库模式与范式 34
3.2.1 数据库的结构与模式 34
3.2.2 数据模型 37
3.2.3 关系代数 37
3.2.4 数据的规范化 40
3.2.5 反规范化 42
3.3 数据库设计 43
3.3.1 数据库设计的方法 43
3.3.2 数据库设计的基本步骤 45
3.3.3 需求分析 46
3.3.4 概念结构设计 47
3.3.5 逻辑结构设计 51
3.3.6 物理结构设计 56
3.4 事务管理 56
3.4.1 并发控制 57
3.4.2 故障与恢复 58
3.5 备份与恢复 60
3.6 分布式数据库系统 61
3.6.1 分布式数据库的概念 61
3.6.2 分布式数据库的架构 64
3.7 数据仓库 68
3.7.1 数据仓库的概念 69
3.7.2 数据仓库的结构 70
3.7.3 数据仓库的实现方法 72
3.8 数据挖掘 74
3.8.1 数据挖掘的概念 74
3.8.2 数据挖掘的功能 76
3.8.3 数据挖掘常用技术 76
3.8.4 数据挖掘的流程 78
3.9 NOSQL 79
3.10 大数据 81
第4章 计算机网络 83
4.1 网络架构与协议 83
4.1.1 网络互联模型 84
4.1.2 常见的网络协议 85
4.1.3 IPv6 87
4.2 局域网与广域网 89
4.2.1 局域网基础知识 89
4.2.2 无线局域网 91
4.2.3 广域网技术 93
4.2.4 网络接入技术 93
4.3 网络互连与常用设备 95
4.4 网络工程 97
4.4.1 网络规划 97
4.4.2 网络设计 99
4.4.3 网络实施 101
4.5 网络存储技术 102
4.6 综合布线 104
第5章 系统性能评价 106
5.1 性能指标 106
5.1.1 计算机 107
5.1.2 网络 109
5.1.3 操作系统 110
5.1.4 数据库管理系统 110
5.1.5 Web服务器 111
5.2 性能计算 111
5.3 性能设计 112
5.3.1 阿姆达尔解决方案 112
5.3.2 负载均衡 113
5.4 性能评估 116
5.4.1 基准测试程序 116
5.4.2 Web服务器的性能评估 117
5.4.3 系统监视 118
第6章 开发方法 120
6.1 软件生命周期 120
6.2 软件开发模型 121
6.2.1 瀑布模型 121
6.2.2 演化模型 124
6.2.3 螺旋模型 124
6.2.4 增量模型 125
6.2.5 构件组装模型 125
6.3 统一过程 126
6.4 敏捷方法 129
6.4.1 极限编程 129
6.4.2 特征驱动开发 133
6.4.3 Scrum 135
6.4.4 水晶方法 138
6.4.5 其他敏捷方法 139
6.5 软件重用 140
6.5.1 软件重用 140
6.5.2 构件技术 140
6.6 基于架构的软件设计 141
6.6.1 ABSD方法与生命周期 141
6.6.2 基于架构的软件开发模型 143
6.7 形式化方法 148
第7章 系统计划 150
7.1 项目的提出与选择 150
7.1.1 项目的立项目标和动机 150
7.1.2 项目的选择和确定 151
7.1.3 项目提出和选择的结果 154
7.2 可行性研究与效益分析 155
7.2.1 可行性研究的内容 156
7.2.2 成本效益分析 157
7.2.3 可行性分析报告 158
7.3 方案的制订和改进 159
7.4 新旧系统的分析和比较 161
7.4.1 遗留系统的评价方法 162
7.4.2 遗留系统的演化策略 165
第8章 系统分析与设计方法 167
8.1 定义问题与归结模型 167
8.1.1 问题分析 167
8.1.2 问题定义 170
8.2 需求分析与软件设计 172
8.2.1 需求分析的任务与过程 172
8.2.2 如何进行系统设计 174
8.2.3 软件设计的任务与活动 175
8.3 结构化分析与设计 176
8.3.1 结构化分析 176
8.3.2 结构化设计 180
8.3.3 模块设计 182
8.4 面向对象的分析与设计 184
8.4.1 面向对象的基本概念 184
8.4.2 面向对象分析 186
8.4.3 统一建模语言 188
8.5 用户界面设计 199
8.5.1 用户界面设计的原则 199
8.5.2 用户界面设计过程 200
8.6 工作流设计 200
8.6.1 工作流设计概述 201
8.6.2 工作流管理系统 202
8.7 简单分布式计算机应用系统的设计 203
8.8 系统运行环境的集成与设计 204
8.9 系统过渡计划 206
第9章 软件架构设计 208
9.1 软件架构概述 208
9.1.1 软件架构的定义 209
9.1.2 软件架构的重要性 210
9.1.3 架构的模型 211
9.2 架构需求与软件质量属性 213
9.2.1 软件质量属性 213
9.2.2 6个质量属性及实现 214
9.3 软件架构风格 221
9.3.1 软件架构风格分类 222
9.3.2 数据流风格 222
9.3.3 调用/返回风格 224
9.3.4 独立构件风格 226
9.3.5 虚拟机风格 227
9.3.6 仓库风格 228
9.4 层次系统架构风格 229
9.4.1 二层及三层C/S架构风格 229
9.4.2 B/S架构风格 230
9.4.3 MVC架构风格 231
9.4.4 MVP架构风格 233
9.5 面向服务的架构 234
9.5.1 SOA概述 234
9.5.2 SOA的关键技术 236
9.5.3 SOA的实现方法 238
9.5.4 微服务 241
9.6 架构设计 244
9.7 软件架构文档化 246
9.8 软件架构评估 250
9.8.1 软件架构评估的方法 250
9.8.2 架构的权衡分析法 250
9.8.3 成本效益分析法 252
9.9 构件及其复用 253
9.9.1 商用构件标准规范 253
9.9.2 应用系统簇与构件系统 255
9.9.3 基于复用开发的组织结构 255
9.10 产品线及系统演化 256
9.10.1 复用与产品线 256
9.10.2 基于产品线的架构 257
9.10.3 产品线的开发模型 258
9.10.4 特定领域软件架构 258
9.10.5 架构及系统演化 259
9.11 软件架构视图 260
9.11.1 软件视图的分类 260
9.11.2 模块视图类型及其风格 262
9.11.3 C&C视图类型及其风格 263
9.11.4 分配视图类型及其风格 265
9.11.5 各视图类型间的映射关系 267
第10章 设计模式 268
10.1 设计模式概述 268
10.1.1 设计模式的概念 268
10.1.2 设计模式的组成 269
10.1.3 GoF设计模式 269
10.1.4 其他设计模式 271
10.1.5 设计模式与软件架构 272
10.1.6 设计模式分类 272
10.2 设计模式及实现 273
10.2.1 Abstract Factory模式 273
10.2.2 Singleton模式 276
10.2.3 Decorator模式 277
10.2.4 Facade/Session Facade模式 279
10.2.5 Mediator模式 281
10.2.6 Observer模式 282
10.2.7 Intercepting Filter模式 284
10.3 设计模式总结 286
第11章 测试评审方法 288
11.1 测试方法 288
11.1.1 软件测试阶段 288
11.1.2 白盒测试和黑盒测试 290
11.1.3 缺陷的分类和级别 292
11.1.4 调试 293
11.2 评审方法 294
11.3 验证与确认 295
11.4 测试自动化 297
11.5 面向对象的测试 297
第12章 嵌入式系统设计 300
12.1 嵌入式系统概论 300
12.2 嵌入式系统的组成 301
12.2.1 硬件架构 301
12.2.2 软件架构 306
12.3 嵌入式开发平台与调试环境 307
12.3.1 嵌入式系统软件开发平台 307
12.3.2 嵌入式开发调试 309
12.4 嵌入式网络系统 312
12.4.1 现场总线网 312
12.4.2 家庭信息网 313
11.4.3 无线数据通信网 313
12.4.4 嵌入式Internet 314
12.5 嵌入式数据库管理系统 315
12.5.1 使用环境的特点 315
12.5.2 系统组成与关键技术 316
12.6 实时系统与嵌入式操作系统 319
12.6.1 嵌入式系统的实时概念 319
12.6.2 嵌入式操作系统概述 320
12.6.3 实时嵌入式操作系统 321
12.6.4 主流嵌入式操作系统介绍 324
12.7 嵌入式系统开发设计 325
12.7.1 嵌入式系统设计概述 325
12.7.2 开发模型与设计流程 327
12.7.3 嵌入式系统设计的核心技术 329
12.7.4 嵌入式开发设计环境 331
12.7.5 嵌入式软件设计模型 332
12.7.6 需求分析 335
12.7.7 系统设计 337
12.7.8 系统集成与测试 342
第13章 开发管理 344
13.1 项目的范围、时间与成本 344
13.1.1 项目范围管理 345
13.1.2 项目成本管理 345
13.1.3 项目时间管理 346
13.2 配置管理与文档管理 347
13.2.1 软件配置管理的概念 347
13.2.2 软件配置管理的解决方案 348
13.2.3 软件文档管理 351
13.3 软件需求管理 355
13.3.1 需求变更 355
13.3.2 需求跟踪 356
13.4 软件开发的质量与风险 356
13.4.1 软件质量管理 356
13.4.2 项目风险管理 359
13.5 人力资源管理 363
13.6 软件的运行与评价 368
13.7 软件过程改进 368
第14章 信息系统基础知识 371
14.1 信息系统概述 371
14.1.1 信息系统的组成 371
14.1.2 信息系统的生命周期 373
14.1.3 信息系统建设的原则 375
14.1.4 信息系统开发方法 376
14.2 信息系统工程 378
14.2.1 信息系统工程的概念 378
14.2.2 信息系统工程的内容 380
14.2.3 信息系统工程的总体规划 383
14.2.4 总体规划的方法论 389
14.3 政府信息化与电子政务 394
14.3.1 我国政府信息化的历程和策略 394
14.3.2
系统架构设计师教程-第4版 作者简介
希赛教育软考学院是中国最大的软考在线教育网站,该网站论坛是国内人气最旺的软考社区,在这里,读者可以和数十万考生进行在线交流,讨论有关学习和考试的问题。希赛教育软考学院拥有强大的师资队伍,为读者提供全程的答疑服务,在线回答读者的提问。