软件设计师考试大纲最新.docx
《软件设计师考试大纲最新.docx》由会员分享,可在线阅读,更多相关《软件设计师考试大纲最新.docx(21页珍藏版)》请在冰豆网上搜索。
软件设计师考试大纲最新
“I”、“II”和“III”表示掌握或熟悉的程度
“I”是指对所列知识要理解其内容及含义理解。
“II”指在有关问题中能直接使用一般应用。
“III”是指对所列知识要理解其确切含义及与其它知识的联系能够进
行叙述和解释并能在实际问题的分析、综合、推理和判断等过程中运用综合应用。
考试科目1计算机与软件工程知识
1.计算机科学基础知识
1.1数制及其转换
二进制、八进制、十进制和十六进制等常用数制及其相互转换Ⅱ
1.2计算机内数据的表示
数的表示
带符号定点数据纯整数和纯小数的原码、反码、补码和移码表示Ⅱ
浮点数实数的表示Ⅱ
溢出的概念Ⅱ
1.3算术运算和逻辑运算
计算机中的二进制数运算方法
补码表示下定点数的加、减、乘、除运算方法I
逻辑代数的基本运算
基本的逻辑运算与、或、非、异或Ⅱ
1.4其他数学基础知识
常用数值计算
矩阵和行列式、近似求解、插值、数值积分、常微分方程等常用的数值运算方法及运算误差的概念I
排列组合概率论应用应用统计数据的统计分析I
码基础ASCⅡ码汉字编码奇偶校验海明码霍夫曼码、循环冗余码奇偶校验码、海明码、霍夫曼码、循环冗余码的编码方法及指定实例时校验码的计算I
命题逻辑、谓词逻辑、形式逻辑的基础知识I
2.计算机系统基础知识
2.1计算机硬件基础知识
2.1.1计算机系统的组成、体系结构分类及特性
CPU、存储器的组成、性能和基本工作原理
CPU的基本组成结构I
存储器的组成及特点内存、外存、缓存Cache、闪存Ⅱ
存储器的性能指标定义存取周期、存储容量和可靠性Ⅱ
常用I/O设备、通信设备的性能以及基本工作原理I
I/O接口的功能、类型和特性
CPU在与I/O设备进行数据交换时存在的主要问题速度不匹配、时序不匹配、信息格式不匹配、信息类型不匹配I
CPU与外设之间的数据交换必须通过接口来完成I/O接口的主要功能Ⅱ接口的控制方式及特点CPU通过接口对外设进行控制的方式程序查询方式、中断处理方式、DMA直接存储器存取传送方式Ⅱ
CISC/RISC流水线操作多处理机并行处理
RISC精简指令集计算机和CISC复杂指令集计算机,的定义和特点I
流水线的定义及操作特点Ⅱ
多处理机的概念I
单指令流单数据流SISD、单指令流多数据流SIMD、多指令流单数据流MISD、多指令流多数据流MIMD的概念和特点Ⅱ
并行处理的基本概念I
2.1.2存储系统
虚拟存储器基本工作原理多级存储体系
虚拟存储器的定义和管理方式I
多级存储体系的组成及特点Ⅱ
RAID类型和特性
RAID的定义和基本特点I
RAID0RAID7、RAID10、RAID53等规范的特征I
2.1.3可靠性与系统性能评测基础知识
诊断与容错
容错技术与容错控制I
系统可靠性分析评价系统的可靠性定义I
串联系统特点及可靠性度量Ⅱ
并联系统特点及可靠性度量Ⅱ
模冗余系统等可靠性数学模型的特点I
计算机系统性能评测方法
平均无故障时间MTBF的定义I
平均修复时间MTRF的定义I
可用性的定义I
2.2计算机软件基础知识
2.2.1数据结构与算法知识
数组
二维数组按行存储和按列存储数组元素存储位置的计算Ⅱ
特殊矩阵和稀疏矩阵的特点及压缩存储Ⅱ
静态数组固定容量数组I
动态数组根据应用需要申请或扩充数组的容量I
链表
线性表的定义和基本运算I
线性表的顺序存储和特点I
单向链表、双向链表和环形链表的运算特点Ⅱ
指针、结点、头指针和头结点的概念Ⅱ
队列和栈
队列的定义、运算和存储结构Ⅱ
栈的定义、运算和存储结构Ⅱ
树
二叉树的定义Ⅱ
满二叉树、完全二叉树的定义Ⅱ
二叉树的性质Ⅱ
二叉树的顺序存储和二叉链表存储Ⅱ
二叉树的遍历先序、中序、后序和层序Ⅱ
最优二叉树的定义、特点和构造方法Ⅱ
二叉排序树的定义和运算Ⅱ
平衡二叉树、B-树、B+树的概念I
树与二叉排序树的相互转换Ⅱ
图
图结构的定义I
图的邻接矩阵存储和邻接表存储I
图的广度优先遍历和深度优先遍历操作Ⅱ
杂凑哈希杂凑表的构造、冲突的处理和元素的查找平均查找长度的计算Ⅱ常用算法
插入排序、冒泡排序、选择排序算法Ⅲ
希尔排序、快速排序、堆排序、归并排序方法及特点Ⅱ
顺序查找、二分查找方法及特点Ⅲ
模式匹配算法Ⅱ
图的遍历算法、求最小生成树算法、拓扑排序算法、求最短路径算法、求关键路径算法的算法思想Ⅱ
递归算法的设计方法Ⅱ
算法描述和分析
算法的实现与数据结构的关系Ⅱ
算法的效率分析Ⅱ
算法的流程图、伪代码描述方式Ⅱ
算法的时间复杂性和空间复杂性概念I
2.2.2操作系统知识
操作系统的内核
操作系统内核的功能和基本组成I
内核与用户程序的运行方式差别I
内核运行、中断控制的基本知识I
处理机管理
进程、线程等基本概念程序顺序执行和并发执行的基本特征I
进程的基本组成进程的基本状态及状态间的切换三态模型与五态模型II进程间的通信同步与互斥、临界资源、临界区、信号量、PV操作II
管程的概念I
进程调度方式及常用的进程调度算法II
死锁的定义、产生死锁的原因、产生死锁的必要条件II
存储管理
虚拟地址、地址空间、存储空间、地址重定位的基本概念I
分页存储管理II
程序的局部性特点虚拟存储器的实现方法I
页面置换算法最佳置换算法、先进先出置换算法、最近最久未使用置换算法、最近未用置换算法II
设备管理设备分类方法I
通道、DMA的概念及特点I
SpoolingSimultaneousPeripheralOperationsOnLine定义、组成和结构I磁盘调度算法先来先服务First-ComeFirst-ServedFCFS、
最短寻道时间优先SSTFShortestSeekTimeFirst、扫描算法SCAN、单向扫描调度算法CSCAN磁盘调度算法的基本思想II
文件管理
文件、文件系统、文件类型、文件组织结构的基本概念I
文件的物理结构连续结构、链接结构、索引结构、多个物理块的索引表结构的基本概念I
目录一级目录、二级目录、多级目录的基本概念I
文件的存取方法顺序存取法、直接存取法、按键存取法的基本概念I
文件存储空间的管理位示图、空闲区表、空闲块链、成组链接法基本思想I
作业管理
作业的状态提交、后备、执行、完成、作业控制块和作业后备队列的基本概念I先来先服务、短作业优先、响应比高优先作业调度算法思想II
优先级调度算法思想II
网络操作系统和嵌入式操作系统基础知识
网络操作系统的特征和分类I
嵌入式操作系统的特点I
操作系统的配置I
2.2.3程序设计语言和语言处理程序知识
汇编、编译、解释系统的基础知识和基本工作原理
语言翻译的基本概念I
汇编的基本方法I
编译的基本过程及编译各阶段的基本任务I
解释的基本过程I
有限自动机的定义及构造Ⅱ
正规表达式的定义、构造及特点Ⅱ
上下文无关文法的定义I
句子的推导Ⅱ
程序设计语言的基本成分数据、运算、控制和传输程序调用的实现机制程序设计语言的数据、运算、控制及输入输出处理机制I
函数的参数传递机制传值、传地址Ⅱ
各类程序设计语言的主要特点和适用情况
过程式程序语言、面向对象程序设计语言、函数式程序设计语言、逻辑程序设计语言的基本特点I
脚本语言的特点I
2.2.4数据库知识
数据库模型概念模式、外模式、内模式
概念模式模式、外模式用户模式或子模式、内模式物理模式的基本概念Ⅱ
三级模式和两级映像模式/内模式映像、外模式/模式映像的基本概念Ⅱ
数据的独立性数据的逻辑独立性、数据的物理独立性的基本概念Ⅱ
数据模型ER图规范化
数据模型层次模型、网状模型、关系模型、面向对象模型的基本概念Ⅰ
关系模型的应用方法Ⅱ
数据模型的三要素数据结构、数据操作、数据的约束条件的含义Ⅰ
E-R模型方面的基本概念Ⅱ
E-R图E-R模型向关系模型的转换的基本方法Ⅱ
实体中主键、候选键、外键方面的基本概念Ⅱ
联系类型一对多11、一对多1n、多对多mn的基础知识Ⅱ
属性简单属性、复合属性、单值属性、多值属性、NULL属性、派生属性的含义Ⅰ关系模式规范化的程度第一、第二、第三范式Ⅰ
数据操作
关系数据库、关系数据库模式的基本概念Ⅱ
关系模型的完整性规则实体完整性、参照完整性、用户定义完整性的基本概念Ⅰ
5种基本的关系运算并、差、笛卡尔积、投影、选择的基本概念Ⅰ
扩展的关系运算中选择、投影、连接运算方法Ⅱ
扩展的关系运算中的除法、外联接方面的基本概念Ⅰ
数据库语言
数据定义语言(DDL)CREATETABLE(创建表)使用方法Ⅱ
数据操纵语言(DML)SELECT(查询)、INSERT(插入)、DELETE(删除)和UPDATE(修改)使用方法Ⅱ
完整性(integrity)定义PRIMARYKEY、FOREIGNKEYREFERENCES使用方法Ⅱ权限管理(authorization)GRANT和REVORK使用方法Ⅱ
数据库管理系统的功能和特征
数据库管理系统的特征、功能与组成、文件系统的特征文件系统与数据库管理系统的差异的基本概念Ⅰ
数据库的控制功能
事务的基本概念、事务的特性、故障的类型的基础知识Ⅰ
数据不一致性丢失修改、不可重复读、读脏数据的基础知识Ⅰ
并发控制中活锁/死锁、可串行性、两段锁协议的基本概念Ⅰ
安全控制权限机制、视图机制、加密机制的基本概念Ⅰ
事务、事务的特性、事务的状态、事务状态的转换的基本概念Ⅰ
故障的类型、故障的恢复技术、恢复策略的基础知识Ⅰ
并发控制后会产生丢失修改、不可重复读、读脏数据三类数据不一致性Ⅰ
造成数据不一致性的原因Ⅱ
并发控制中事务的调度串行调度、并行调度、活锁/死锁、可串行性、两段锁协议的基础知识Ⅰ
安全控制权限机制、视图机制、加密机制的基本概念Ⅰ
数据仓库和分布式数据库基础知识
数据仓库DataWarehouseDW基本特性、数据模式、体系结构的基本概念Ⅰ数据仓库模型企业仓库、数据集市和虚拟仓库的基本概念Ⅰ
分布式数据库的定义、体系结构、设计目标、分布数据独立的基本概念Ⅰ
2.3计算机网络知识
网络体系结构
网络拓扑Ⅱ
OSI/RMTCP/IPⅡ
常用的网络协议Ⅱ
传输介质传输技术传输方法传输控制Ⅰ
常用网络设备和各类通信设备的功能和特点Ⅰ
Client-Server结构、Browser-Server结构的特点Ⅰ
局域网
拓扑结构Ⅱ
存取控制Ⅰ
网间互连Ⅰ
Internet和Intranet基础知识以及应用Ⅱ
网络软件Ⅰ
网络管理及网络性能分析Ⅰ
2.4多媒体基础知识
多媒体系统基础知识
媒体分类感觉媒体、表示媒体、表现媒体、存储媒体和传输媒体的基本概念Ⅰ多媒体、超媒体、流媒体的基本概念Ⅰ
色彩的三基色、彩色空间、三要素基本概念Ⅰ
图形和图像图像分辨率与显示分辨率、像素深度、真/伪彩色图像的压缩标准的基本概念Ⅱ
简单图形的绘制图像文件的处理方法
图像的压缩编码有损压缩和无损压缩方面的基本概念Ⅰ
JPEG、MPEG和H.261等编码及压缩标准方面的基本概念Ⅰ
图像文件的处理方法的基础知识Ⅰ
音频和视频信息的应用
常见的声音文件格式Ⅰ
数字声音信号、波形声音的基本概念Ⅰ
声音信号的数字化包括采样、量化、编码了解数字语音的数据压缩方法波形编码、参数编码、混合编码的基础知识Ⅱ
3系统开发和运行知识
3.1软件工程基础知识
软件生存周期与软件生存周期模型
瀑布模型、演化模型、螺旋模型、喷泉模型Ⅱ
软件开发方法
结构化方法、面向对象方法的基本概念Ⅱ
软件开发项目管理
成本估算、风险分析、进度管理Gantt图、PERT图、人员管理Ⅰ
软件工具与软件开发环境
分析工具、设计工具、编程工具、测试工具、维护工具、CASEⅠ
3.2系统分析基础知识系统分析的主要步骤Ⅰ
结构化分析方法
数据流图的基本构成、数据字典、加工逻辑的描述结构化语言、决策表、决策树
3.3系统设计基础知识
概要设计与详细设计的基本任务Ⅰ
系统设计的基本原理
抽象、模块化、信息隐蔽、模块独立耦合、内聚的基本概念Ⅰ
系统模块结构设计
模块的概念、模块结构图的构成与内涵Ⅰ
结构化设计方法变换分析、事务分析的概念及基本步骤Ⅰ
面向数据结构的设计方法Jackson方法的设计步骤Ⅰ
系统详细设计
代码设计的基本原则Ⅰ
输入/输出设计的基本原则Ⅰ
处理过程的设计程序流程图、盒图、决策树、决策表Ⅰ
用户界面设计的基本原则Ⅰ
3.4系统实施基础知识
系统实施的基本内容Ⅰ
程序设计方法
结构化程序设计方法、面向对象程序设计方法的基本概念Ⅱ
程序设计的基本模块Ⅰ
系统测试
系统测试的基本原则Ⅰ
用黑盒法设计测试用例等价类划分、边界值划分、错误推测、因果图Ⅱ用白盒法设计测试用例逻辑覆盖、循环覆盖、基本路径测试Ⅱ
理解单元测试、集成测试、确认测试与系统测试的基本内容Ⅱ
系统转换
3.5系统运行和维护基础知识
系统可维护性的概念Ⅰ
系统维护的类型
正确性维护、适应性维护、完善性维护、预防性维护的基本概念Ⅱ
系统评价的概念与类型Ⅰ
3.6软件质量管理基础知识
软件质量特性ISO/IEC9126软件质量模型Ⅰ
软件质量保证Ⅰ
软件复杂性的概念及度量方法McCabe度量法Ⅰ
软件评审设计质量评审、程序质量评审Ⅰ
软件容错技术
容错软件定义、容错的一般方法结构冗余、信息冗余、时间冗余、冗余附加技术Ⅰ3.7软件过程改进基础知识
软件能力成熟度模型CMMⅡ
统一过程UP与极限编程XP的基本概念Ⅱ
4面向对象基础知识
4.1面向对象的基本概念
对象、消息、类、继承单继承、多继承、多态动态绑定机制Ⅱ
4.2面向对象分析与设计知识
面向对象分析的基本活动
认定对象、组织对象、描述对象间的相互作用、定义对象的操作、定义对象的内部信息Ⅱ
面向对象分析与设计方法
PeterCoad和EdwardYourdon的OOA和OOD方法Ⅰ
Booch的OOD方法Ⅰ
OMT的分析与设计方法Ⅰ
UML的基本概念及各种图形能够熟练地使用UML的各种模型绘制面向对象分析与设计模型Ⅱ
面向对象测试的基本概念Ⅰ
4.3分析模式与设计模式知识
设计模式的基本概念及其要素Ⅰ
创建型设计模式Ⅱ
结构型设计模式Ⅱ
行为型设计模式Ⅱ
4.4面向对象程序设计知识
程序设计语言中的面向对象机制
类与对象、对象自身引用、无实例的类Ⅱ
继承与类层次结构Ⅱ
消息传递与方法Ⅱ
重置与重载Ⅱ类库的概念Ⅱ
4.5面向对象数据库、分布式对象基础知识Ⅰ
5.信息安全知识
信息系统安全
计算机系统安全、网络安全、信息安全的基础知识Ⅰ
信息系统安全管理
防治计算机病毒、防范计算机犯罪、存取控制、防闯入、防灾Ⅰ
保障完整性与可用性的措施Ⅰ
加密与解密机制基础知识Ⅱ
风险管理风险分析、风险类型、抗风险措施和内部控制Ⅰ
计算机安全相关的法律、法规基础知识Ⅰ
6.标准化、信息化和知识产权基础知识
6.1标准化基础知识
标准化基础知识
标准化目的、意义、组织机构及内容方面的基本概念Ⅰ
标准化分类、代号与编号规定方面的基本概念Ⅰ
标准制订过程方面的基础知识Ⅰ
标准分类
国际标准、国家标准、行业标准、企业标准的表示方法Ⅱ
代码标准、文件格式标准、安全标准、软件开发规范和文档标准、互联网相关标准、软件开发规范和文档标准、基于构件的软件标准
代码标准、文件格式标准、安全标准方面的基本概念Ⅰ
软件开发规范和文档标准、互联网相关标准方面基本概念、基于构件的软件标准Ⅱ安全标准、互联网相关标准方面的基本概念Ⅰ
6.2信息化基础知识
全球信息化趋势、国家信息化战略、企业信息化战略和策略Ⅰ
互联网关的法律、法规知识Ⅰ
个人信息保护规则I
远程教育、电子商务、电子政务等基础知识Ⅰ
企业信息资源管理基础知识Ⅰ
6.3知识产权基础知识
保护知识产权有关的法律、法规
软件有关的法律、法规方面的基础知识Ⅰ
著作权法、软件保护条例及软件著作登记的基础知识Ⅰ
软件著作权主体与客体、权利内容、权利归属、侵权责任分析侵权行为Ⅱ
专利法、商标法、商业秘密权对软件的保护Ⅰ
7.计算机专业英语
具有工程师所要求的英语阅读水平Ⅱ
理解本领域常用英语术语Ⅱ
考试科目2软件设计
1外部设计
1.1理解系统需求说明ⅡⅡ
1.2准备进行系统开发
选择开发方法、准备开发环境、制订开发计划I
1.3设计系统功能
选择系统结构II
设计各子系统的功能和接口II
设计安全性策略、需求和实现方法II
制订详细的工作流和数据流II
1.4设计数据模型
设计ER模型及其他数据模型
掌握E-R模型、UML模型的表示方法和使用方法关系模型的定义、相关知识以及符号化表示方法。
Ⅱ
通过从数据库逻辑设计中如何构造一个好的数据库模式出发掌握关系规范化的实际背景、理论及模式规范化的方法Ⅱ
掌握如何用关系数据库设计理论作指导进行数据库逻辑设计重点掌握E-R模型向关系模型转换的方法Ⅲ
1.5编写外部设计文档
系统配置图、各子系统关系图I
系统流程图、系统功能说明书I
输入输出规格说明、数据规格说明、用户手册框架I
设计系统测试要求I
1.6外部设计的评审I
2内部设计
2.1设计软件结构
按构件分解确定构件功能、规格以及构件之间的接口Ⅱ
数据结构与算法设计
数据结构设计:
线性表、查找表、树、图的顺序存储结构和链表存储结构的设计和实现Ⅲ
算法设计:
迭代、穷举搜索、递推、递归、回溯、贪心、动态规划、分治等算法设计Ⅲ
采用中间件和工具I
2.2设计输入输出
屏幕界面设计、输入输出格式设计II
分析数据特性确认逻辑数据组织方式、存储介质设计记录格式和处理方式II
将逻辑数据结构换成物理数据结构计算容量进行优化和检查信息II
2.3设计物理数据Ⅱ
2.4构件的创建和重用
创建构件、重用构件I
使用子程序库或类库
AWT、Swing用户界面与事件处理机制I
Java语言中流与文件的应用Ⅲ
Java语言中的多线程的开发与应用Ⅲ
Java语言中集合类库的应用Ⅲ
Java语言中网络、数据库的开发与应用Ⅲ
C++标准类库中容器库的应用Ⅲ
C++标准类库中算法库的应用Ⅲ
C++标准类库中的迭代器的应用Ⅲ
C++标准类库中的字符串的应用Ⅲ
C++标准类库中的流与文件的应用Ⅲ
C语言标准函数库Ⅲ
2.5编写内部设计文档
构件划分图、构件间的接口、构件处理说明I
屏幕界面设计文档、报表设计文档、文件设计文档、数据库设计文档I
2.6内部设计的评审I
3数据库应用分析与设计
设计关系模式
掌握给定一个实际的应用问题如何设计E-R模型如何将E-R模型转换成关系模式确定联系类型、主键、候选键、外键判断关系模式规范化的程度Ⅲ
数据库语言SQL
掌握给定一个实际的应用问题如何用SQL进行数据定义创建表、视图、完整性定义及权限定义Ⅲ
数据库访问
掌握常用数据库的访问方法Ⅱ
4程序设计4.1模块划分原则、方法、标准Ⅱ
4.2编写程序设计文档
模块规格说明书功能和接口说明程序处理逻辑、输入输出数据格式的描述II测试要求说明书测试类型和目标、测试用例、测试方法II
4.3程序设计评审Ⅱ
5系统实施
5.1配置计算机系统及环境Ⅱ
5.2选择合适的程序设计语言Ⅱ
5.3用C程序设计语言以及C++、Java中的任一种程序设计语言进行程序设计
用C语言实现常用的数据结构与算法及应用程序Ⅲ
用C++语言实现常见的设计模式及应用程序Ⅲ
用Java语言实现常见的设计模式及应用程序Ⅲ
5.4系统测试
指导程序员进行模块测试并进行验收I
准备系统集成测试环境和测试工具I
准备测试数据I
写出测试报告I
6软件工程应用
6.1软件开发周期模型瀑布模型、螺旋模型、喷泉模型Ⅱ
6.2需求分析
定义软件需求系统化的目标、配置、功能、性能和约束功能需求与非功能需求Ⅱ描述软件需求
使用面向数据流的模型和面向对象模型描述软件的功能需求和非功能需求Ⅲ描述软件需求的功能层次模型、控制流模型、面向数据结构的模型I
定义软件需求的方法
使用结构化分析方法定义软件需求能够