《软体设计师教程(第三版)(修订版)》是2011年9月?>清华大学出版社出版的图书,作者是胡圣明。本书适合参加本考试的考生和大学在校生作为教材。
基本介绍
- 书名:软体设计师教程(第三版)(修订版)
- 作者:胡圣明
- ISBN:9787302266617
- 定价:69元
- 出版社:清华大学出版社
- 出版时间:2011.09.01
内容简介
本书作为中级职称的软考指定教材,具有比较权威的指导意义。本书根据《软体设计师考试大纲》的重点内容,阐述了12章的内容,考生在学习教材内容的同时,还须对照考试大纲(2009版),认真学习和複习大纲的知识点。 本书是在《软体设计师考试大纲》的指导下,对《软体设计师教程(第三版)》进行了认真的修订,部分章节重写后形成。
图书目录
第1章 计算机系统知识 1
1.1 计算机系统基础知识 1
1.1.1 计算机系统硬体基本组成 1
1.1.2 中央处理单元 1
1.1.3 数据表示 4
1.1.4 校验码 9
1.2 计算机体系结构 11
1.2.1 计算机体系结构的发展 11
1.2.2 存储系统 19
1.2.3 输入输出技术 28
1.2.4 汇流排结构 32
1.3 安全性、可靠性与系统性能评测
基础知识 34
1.3.1 计算机安全概述 34
1.3.2 加密技术和认证技术 37
1.3.3 计算机可靠性 44
1.3.4 计算机系统的性能评价 47
第2章 程式语言基础知识 51
2.1 程式语言概述 51
2.1.1 程式语言的基本概念 51
2.1.2 程式语言的基本成分 55
2.2 语言处理程式基础 61
2.2.1 彙编程式基本原理 61
2.2.2 编译程式基本原理 64
2.2.3 解释程式基本原理 91
第3章 作业系统知识 94
3.1 作业系统基础知识 94
3.1.1 作业系统的定义与作用 94
3.1.2 作业系统的特徵与功能 94
3.1.3 作业系统的类型 95
3.2 处理机管理 98
3.2.1 基本概念 98
3.2.2 进程的控制 102
3.2.3 进程间的通信 103
3.2.4 管程 107
3.2.5 进程调度 109
3.2.6 死锁 111
3.2.7 执行绪 115
3.3 存储管理 115
3.3.1 基本概念 116
3.3.2 存储管理方案 117
3.3.3 分页存储管理 118
3.3.4 分段存储管理 121
3.3.5 段页式存储管理 122
3.3.6 虚拟存储管理 123
3.4 设备管理 128
3.4.1 设备管理概述 128
3.4.2 I/O软体 129
3.4.3 设备管理採用的相关缓冲技术 130
3.4.4 磁碟调度 132
3.5 档案管理 134
3.5.1 档案与档案系统 135
3.5.2 档案的结构和组织 136
3.5.3 档案目录 137
3.5.4 存取方法和存储空间的管理 139
3.5.5 档案的使用 141
3.5.6 档案的共享和保护 141
3.5.7 系统的安全与可靠性 143
3.6 作业管理 145
3.6.1 作业与作业控制 145
3.6.2 作业调度 146
3.6.3 用户界面 147
3.7 网路与嵌入式作业系统基础知识 148
3.7.1 网路作业系统 148
3.7.2 嵌入式作业系统 149
3.8 UNIX作业系统实例 150
3.8.1 UNIX作业系统 150
3.8.2 UNIX档案系统 150
3.8.3 UNIX进程与存储管理 152
3.8.4 UNIX设备管理 152
3.8.5 shell程式 154
第4章 系统开发和运行知识 159
4.1 软体工程基础知识 159
4.1.1 软体工程概述 159
4.1.2 软体需求分析 163
4.1.3 软体项目管理 165
4.1.4 软体配置管理 170
4.1.5 软体工具与软体开发环境 172
4.1.6 软体过程管理 175
4.1.7 软体质量管理与质量保证 179
4.2 系统分析基础知识 188
4.2.1 系统分析概述 188
4.2.2 结构化分析方法 189
4.2.3 系统分析报告 195
4.3 系统设计知识 196
4.3.1 系统设计的内容和步骤 196
4.3.2 系统设计的基本原理 198
4.3.3 系统总体结构设计 200
4.3.4 结构化设计方法 204
4.3.5 面向数据结构的设计方法 206
4.3.6 系统详细设计 207
4.4 系统实施知识 212
4.4.1 系统实施概述 212
4.4.2 程式设计 213
4.4.3 系统测试与调试 216
4.4.4 测试策略和测试方法 217
4.4.5 调试 224
4.4.6 系统文档 225
4.4.7 系统转换 226
4.5 系统运行和维护知识 227
4.5.1 系统维护概述 227
4.5.2 系统评价 231
第5章 网路基础知识 233
5.1 网路概述 233
5.1.1 计算机网路的概念 233
5.1.2 计算机网路的分类 236
5.1.3 网路的拓扑结构 237
5.2 ISO/OSI网路体系结构 239
5.3 网路互连硬体 242
5.3.1 网路的设备 242
5.3.2 网路的传输介质 245
5.3.3 组建网路 247
5.4 网路的协定与标準 250
5.4.1 网路的标準 250
5.4.2 区域网路协定 252
5.4.3 广域网协定 256
5.4.4 TCP/IP协定簇 260
5.5 Internet及套用 266
5.5.1 Internet概述 266
5.5.2 Internet地址 267
5.5.3 Internet服务 275
5.6 网路安全 280
5.6.1 网路安全概述 281
5.6.2 网路的信息安全 282
5.6.3 防火墙技术 287
第6章 多媒体基础知识 293
6.1 多媒体的基本概念 293
6.1.1 多媒体基本概念 293
6.1.2 虚拟现实基本概念 295
6.2 声音 296
6.2.1 基本概念 296
6.2.2 声音档案格式 302
6.3 图形和图像 303
6.3.1 基础知识 303
6.3.2 图形、图像档案格式 310
6.4 动画和视频 312
6.4.1 基础知识 312
6.4.2 视频档案格式 319
6.5 多媒体网路 321
6.5.1 超文本与超媒体 321
6.5.2 流媒体 322
6.6 多媒体计算机系统 324
6.6.1 多媒体计算机硬体系统 325
6.6.2 多媒体计算机软体系统 326
第7章 资料库技术基础 329
7.1 基本概念 329
7.1.1 资料库与资料库管理系统 329
7.1.2 DBMS的功能 330
7.1.3 DBMS的特徵及分类 331
7.1.4 资料库系统的体系结构 332
7.1.5 资料库的三级模式结构 335
7.2 数据模型 337
7.2.1 数据模型的基本概念 337
7.2.2 数据模型的三要素 337
7.2.3 E-R模型 338
7.2.4 层次模型 344
7.2.5 网状模型 346
7.2.6 关係模型 347
7.2.7 面向对象模型 348
7.3 关係代数 350
7.3.1 关係资料库的基本概念 350
7.3.2 五种基本的关係代数运算 354
7.3.3 扩展的关係代数运算 357
7.4 关係资料库SQL语言简介 365
7.4.1 SQL资料库体系结构 365
7.4.2 SQL的基本组成 366
7.4.3 SQL数据定义 367
7.4.4 SQL数据查询 372
7.4.5 SQL数据更新 380
7.4.6 SQL访问控制 381
7.4.7 嵌入式SQL 383
7.5 关係资料库规範化 384
7.5.1 函式依赖 384
7.5.2 规範化 385
7.5.3 模式分解及分解应具有的特性 387
7.6 资料库的控制功能 388
7.6.1 事务管理 388
7.6.2 资料库的备份与恢复 388
7.6.3 并发控制 390
第8章 数据结构 393
8.1 线性结构 393
8.1.1 线性表 393
8.1.2 栈和伫列 398
8.1.3 串 402
8.2 数组、矩阵和广义表 407
8.2.1 数组 407
8.2.2 矩阵 409
8.2.3 广义表 410
8.3 树 411
8.3.1 树与二叉树的定义 412
8.3.2 二叉树的性质与存储结构 413
8.3.3 二叉树的遍历 416
8.3.4 线索二叉树 419
8.3.5 最优二叉树 421
8.3.6 树和森林 424
8.4 图 427
8.4.1 图的定义与存储 428
8.4.2 图的遍历 432
8.4.3 生成树及最小生成树 434
8.4.4 拓扑排序和关键路径 437
8.4.5 最短路径 440
8.5 查找 442
8.5.1 查找的基本概念 442
8.5.2 静态查找表的查找方法 443
8.5.3 动态查找表 447
8.5.4 哈希表 454
8.6 排序 458
8.6.1 排序的基本概念 458
8.6.2 简单排序 459
8.6.3 希尔排序 461
8.6.4 快速排序 462
8.6.5 堆排序 463
8.6.6 归併排序 465
8.6.7 基数排序 467
8.6.8 内部排序方法小结 467
8.6.9 外部排序 468
第9章 算法设计与分析 473
9.1 算法设计与分析的基本概念 473
9.1.1 算法 473
9.1.2 算法设计 473
9.1.3 算法分析 474
9.1.4 算法的表示 474
9.2 算法分析基础 475
9.2.1 时间複杂性 475
9.2.2 渐进符号 476
9.2.3 递归式 477
9.3 分治法 479
9.3.1 递归的概念 479
9.3.2 分治法的基本思想 480
9.3.3 分治法的典型实例 480
9.4 动态规划法 483
9.4.1 动态规划法的基本思想 483
9.4.2 动态规划法的典型实例 484
9.5 贪心法 489
9.5.1 贪心法的基本思想 489
9.5.2 贪心法的典型实例 489
9.6 回溯法 492
9.6.1 回溯法的算法框架 492
9.6.2 回溯法的典型实例 495
9.7 其他算法 499
9.7.1 分支限界法 499
9.7.2 机率算法 500
9.7.3 近似算法 501
第10章 面向对象技术 503
10.1 面向对象的基本概念 503
10.2 面向对象程式设计 506
10.2.1 面向对象程式设计语言 506
10.2.2 程式设计语言中的OOP机制 509
10.2.3 面向对象的程式 514
10.3 面向对象开发技术 517
10.3.1 面向对象分析 517
10.3.2 面向对象设计 519
10.3.3 面向对象测试 519
10.4 面向对象分析与设计方法 520
10.4.1 Peter Coad和Edward Yourdon
的OOA和OOD方法 520
10.4.2 Booch的OOD方法 522
10.4.3 OMT方法 522
10.4.4 UML概述 525
10.5 设计模式 534
10.5.1 设计模式的要素 534
10.5.2 创建型设计模式 535
10.5.3 结构型设计模式 536
10.5.4 行为设计模式 537
第11章 标準化和软体智慧财产权基础知识 541
11.1 标準化基础知识 541
11.1.1 标準化的基本概念 541
11.1.2 信息技术标準化 549
11.1.3 标準化组织 551
11.1.4 ISO 9000标準简介 555
11.1.5 ISO/IEC 15504过程评估
标準简介 557
11.2 智慧财产权基础知识 559
11.2.1 智慧财产权基本概念 559
11.2.2 计算机软体着作权 563
11.2.3 计算机软体的商业秘密权 574
11.2.4 专利权概述 576
11.2.5 企业智慧财产权的保护 581
第12章 软体系统分析与设计 584
12.1 结构化分析与设计 584
12.1.1 需求说明 586
12.1.2 结构化分析 586
12.1.3 总体设计 588
12.1.4 详细设计 589
12.2 资料库分析与设计 590
12.2.1 资料库设计的步骤 590
12.2.2 需求分析 590
12.2.3 概念结构设计 592
12.2.4 逻辑结构设计 595
12.2.5 资料库的物理设计 597
12.2.6 资料库实施与维护 600
12.2.7 案例分析 603
12.3 面向对象分析与设计 608
12.3.1 面向对象分析与设计的步骤 608
12.3.2 需求说明 609
12.3.3 建模用例 610
12.3.4 建模活动 611
12.3.5 设计类图 613
12.3.6 建模对象状态 613
12.3.7 建模序列图 615
12.4 算法分析与设计 616
12.4.1 算法与软体系统 616
12.4.2 算法设计过程 617
12.4.3 算法问题类型 620
12.4.4 典型实例 622
12.5 面向过程的程式设计与实现 627
12.5.1 指针类型 627
12.5.2 指针与数据结构 634
12.5.3 C语言实现面向对象设计思路 640
12.6 面向对象的程式设计与实现 643
12.6.1 设计与实现方法 643
12.6.2 设计模式的套用 644
1.1 计算机系统基础知识 1
1.1.1 计算机系统硬体基本组成 1
1.1.2 中央处理单元 1
1.1.3 数据表示 4
1.1.4 校验码 9
1.2 计算机体系结构 11
1.2.1 计算机体系结构的发展 11
1.2.2 存储系统 19
1.2.3 输入输出技术 28
1.2.4 汇流排结构 32
1.3 安全性、可靠性与系统性能评测
基础知识 34
1.3.1 计算机安全概述 34
1.3.2 加密技术和认证技术 37
1.3.3 计算机可靠性 44
1.3.4 计算机系统的性能评价 47
第2章 程式语言基础知识 51
2.1 程式语言概述 51
2.1.1 程式语言的基本概念 51
2.1.2 程式语言的基本成分 55
2.2 语言处理程式基础 61
2.2.1 彙编程式基本原理 61
2.2.2 编译程式基本原理 64
2.2.3 解释程式基本原理 91
第3章 作业系统知识 94
3.1 作业系统基础知识 94
3.1.1 作业系统的定义与作用 94
3.1.2 作业系统的特徵与功能 94
3.1.3 作业系统的类型 95
3.2 处理机管理 98
3.2.1 基本概念 98
3.2.2 进程的控制 102
3.2.3 进程间的通信 103
3.2.4 管程 107
3.2.5 进程调度 109
3.2.6 死锁 111
3.2.7 执行绪 115
3.3 存储管理 115
3.3.1 基本概念 116
3.3.2 存储管理方案 117
3.3.3 分页存储管理 118
3.3.4 分段存储管理 121
3.3.5 段页式存储管理 122
3.3.6 虚拟存储管理 123
3.4 设备管理 128
3.4.1 设备管理概述 128
3.4.2 I/O软体 129
3.4.3 设备管理採用的相关缓冲技术 130
3.4.4 磁碟调度 132
3.5 档案管理 134
3.5.1 档案与档案系统 135
3.5.2 档案的结构和组织 136
3.5.3 档案目录 137
3.5.4 存取方法和存储空间的管理 139
3.5.5 档案的使用 141
3.5.6 档案的共享和保护 141
3.5.7 系统的安全与可靠性 143
3.6 作业管理 145
3.6.1 作业与作业控制 145
3.6.2 作业调度 146
3.6.3 用户界面 147
3.7 网路与嵌入式作业系统基础知识 148
3.7.1 网路作业系统 148
3.7.2 嵌入式作业系统 149
3.8 UNIX作业系统实例 150
3.8.1 UNIX作业系统 150
3.8.2 UNIX档案系统 150
3.8.3 UNIX进程与存储管理 152
3.8.4 UNIX设备管理 152
3.8.5 shell程式 154
第4章 系统开发和运行知识 159
4.1 软体工程基础知识 159
4.1.1 软体工程概述 159
4.1.2 软体需求分析 163
4.1.3 软体项目管理 165
4.1.4 软体配置管理 170
4.1.5 软体工具与软体开发环境 172
4.1.6 软体过程管理 175
4.1.7 软体质量管理与质量保证 179
4.2 系统分析基础知识 188
4.2.1 系统分析概述 188
4.2.2 结构化分析方法 189
4.2.3 系统分析报告 195
4.3 系统设计知识 196
4.3.1 系统设计的内容和步骤 196
4.3.2 系统设计的基本原理 198
4.3.3 系统总体结构设计 200
4.3.4 结构化设计方法 204
4.3.5 面向数据结构的设计方法 206
4.3.6 系统详细设计 207
4.4 系统实施知识 212
4.4.1 系统实施概述 212
4.4.2 程式设计 213
4.4.3 系统测试与调试 216
4.4.4 测试策略和测试方法 217
4.4.5 调试 224
4.4.6 系统文档 225
4.4.7 系统转换 226
4.5 系统运行和维护知识 227
4.5.1 系统维护概述 227
4.5.2 系统评价 231
第5章 网路基础知识 233
5.1 网路概述 233
5.1.1 计算机网路的概念 233
5.1.2 计算机网路的分类 236
5.1.3 网路的拓扑结构 237
5.2 ISO/OSI网路体系结构 239
5.3 网路互连硬体 242
5.3.1 网路的设备 242
5.3.2 网路的传输介质 245
5.3.3 组建网路 247
5.4 网路的协定与标準 250
5.4.1 网路的标準 250
5.4.2 区域网路协定 252
5.4.3 广域网协定 256
5.4.4 TCP/IP协定簇 260
5.5 Internet及套用 266
5.5.1 Internet概述 266
5.5.2 Internet地址 267
5.5.3 Internet服务 275
5.6 网路安全 280
5.6.1 网路安全概述 281
5.6.2 网路的信息安全 282
5.6.3 防火墙技术 287
第6章 多媒体基础知识 293
6.1 多媒体的基本概念 293
6.1.1 多媒体基本概念 293
6.1.2 虚拟现实基本概念 295
6.2 声音 296
6.2.1 基本概念 296
6.2.2 声音档案格式 302
6.3 图形和图像 303
6.3.1 基础知识 303
6.3.2 图形、图像档案格式 310
6.4 动画和视频 312
6.4.1 基础知识 312
6.4.2 视频档案格式 319
6.5 多媒体网路 321
6.5.1 超文本与超媒体 321
6.5.2 流媒体 322
6.6 多媒体计算机系统 324
6.6.1 多媒体计算机硬体系统 325
6.6.2 多媒体计算机软体系统 326
第7章 资料库技术基础 329
7.1 基本概念 329
7.1.1 资料库与资料库管理系统 329
7.1.2 DBMS的功能 330
7.1.3 DBMS的特徵及分类 331
7.1.4 资料库系统的体系结构 332
7.1.5 资料库的三级模式结构 335
7.2 数据模型 337
7.2.1 数据模型的基本概念 337
7.2.2 数据模型的三要素 337
7.2.3 E-R模型 338
7.2.4 层次模型 344
7.2.5 网状模型 346
7.2.6 关係模型 347
7.2.7 面向对象模型 348
7.3 关係代数 350
7.3.1 关係资料库的基本概念 350
7.3.2 五种基本的关係代数运算 354
7.3.3 扩展的关係代数运算 357
7.4 关係资料库SQL语言简介 365
7.4.1 SQL资料库体系结构 365
7.4.2 SQL的基本组成 366
7.4.3 SQL数据定义 367
7.4.4 SQL数据查询 372
7.4.5 SQL数据更新 380
7.4.6 SQL访问控制 381
7.4.7 嵌入式SQL 383
7.5 关係资料库规範化 384
7.5.1 函式依赖 384
7.5.2 规範化 385
7.5.3 模式分解及分解应具有的特性 387
7.6 资料库的控制功能 388
7.6.1 事务管理 388
7.6.2 资料库的备份与恢复 388
7.6.3 并发控制 390
第8章 数据结构 393
8.1 线性结构 393
8.1.1 线性表 393
8.1.2 栈和伫列 398
8.1.3 串 402
8.2 数组、矩阵和广义表 407
8.2.1 数组 407
8.2.2 矩阵 409
8.2.3 广义表 410
8.3 树 411
8.3.1 树与二叉树的定义 412
8.3.2 二叉树的性质与存储结构 413
8.3.3 二叉树的遍历 416
8.3.4 线索二叉树 419
8.3.5 最优二叉树 421
8.3.6 树和森林 424
8.4 图 427
8.4.1 图的定义与存储 428
8.4.2 图的遍历 432
8.4.3 生成树及最小生成树 434
8.4.4 拓扑排序和关键路径 437
8.4.5 最短路径 440
8.5 查找 442
8.5.1 查找的基本概念 442
8.5.2 静态查找表的查找方法 443
8.5.3 动态查找表 447
8.5.4 哈希表 454
8.6 排序 458
8.6.1 排序的基本概念 458
8.6.2 简单排序 459
8.6.3 希尔排序 461
8.6.4 快速排序 462
8.6.5 堆排序 463
8.6.6 归併排序 465
8.6.7 基数排序 467
8.6.8 内部排序方法小结 467
8.6.9 外部排序 468
第9章 算法设计与分析 473
9.1 算法设计与分析的基本概念 473
9.1.1 算法 473
9.1.2 算法设计 473
9.1.3 算法分析 474
9.1.4 算法的表示 474
9.2 算法分析基础 475
9.2.1 时间複杂性 475
9.2.2 渐进符号 476
9.2.3 递归式 477
9.3 分治法 479
9.3.1 递归的概念 479
9.3.2 分治法的基本思想 480
9.3.3 分治法的典型实例 480
9.4 动态规划法 483
9.4.1 动态规划法的基本思想 483
9.4.2 动态规划法的典型实例 484
9.5 贪心法 489
9.5.1 贪心法的基本思想 489
9.5.2 贪心法的典型实例 489
9.6 回溯法 492
9.6.1 回溯法的算法框架 492
9.6.2 回溯法的典型实例 495
9.7 其他算法 499
9.7.1 分支限界法 499
9.7.2 机率算法 500
9.7.3 近似算法 501
第10章 面向对象技术 503
10.1 面向对象的基本概念 503
10.2 面向对象程式设计 506
10.2.1 面向对象程式设计语言 506
10.2.2 程式设计语言中的OOP机制 509
10.2.3 面向对象的程式 514
10.3 面向对象开发技术 517
10.3.1 面向对象分析 517
10.3.2 面向对象设计 519
10.3.3 面向对象测试 519
10.4 面向对象分析与设计方法 520
10.4.1 Peter Coad和Edward Yourdon
的OOA和OOD方法 520
10.4.2 Booch的OOD方法 522
10.4.3 OMT方法 522
10.4.4 UML概述 525
10.5 设计模式 534
10.5.1 设计模式的要素 534
10.5.2 创建型设计模式 535
10.5.3 结构型设计模式 536
10.5.4 行为设计模式 537
第11章 标準化和软体智慧财产权基础知识 541
11.1 标準化基础知识 541
11.1.1 标準化的基本概念 541
11.1.2 信息技术标準化 549
11.1.3 标準化组织 551
11.1.4 ISO 9000标準简介 555
11.1.5 ISO/IEC 15504过程评估
标準简介 557
11.2 智慧财产权基础知识 559
11.2.1 智慧财产权基本概念 559
11.2.2 计算机软体着作权 563
11.2.3 计算机软体的商业秘密权 574
11.2.4 专利权概述 576
11.2.5 企业智慧财产权的保护 581
第12章 软体系统分析与设计 584
12.1 结构化分析与设计 584
12.1.1 需求说明 586
12.1.2 结构化分析 586
12.1.3 总体设计 588
12.1.4 详细设计 589
12.2 资料库分析与设计 590
12.2.1 资料库设计的步骤 590
12.2.2 需求分析 590
12.2.3 概念结构设计 592
12.2.4 逻辑结构设计 595
12.2.5 资料库的物理设计 597
12.2.6 资料库实施与维护 600
12.2.7 案例分析 603
12.3 面向对象分析与设计 608
12.3.1 面向对象分析与设计的步骤 608
12.3.2 需求说明 609
12.3.3 建模用例 610
12.3.4 建模活动 611
12.3.5 设计类图 613
12.3.6 建模对象状态 613
12.3.7 建模序列图 615
12.4 算法分析与设计 616
12.4.1 算法与软体系统 616
12.4.2 算法设计过程 617
12.4.3 算法问题类型 620
12.4.4 典型实例 622
12.5 面向过程的程式设计与实现 627
12.5.1 指针类型 627
12.5.2 指针与数据结构 634
12.5.3 C语言实现面向对象设计思路 640
12.6 面向对象的程式设计与实现 643
12.6.1 设计与实现方法 643
12.6.2 设计模式的套用 644