软件设计师考试要求及考试范围

考试要求

掌握以下关键领域:

  1. 计算机内的数据表示、算术和逻辑运算方法
  2. 应用数学及离散数学基础知识
  3. 计算机体系结构及主要部件性能和工作原理
  4. 操作系统、程序设计语言基础知识,编译程序基本知识
  5. 常用数据结构和算法
  6. 数据库与网络基础知识
  7. 结构化程序设计语言(C语言)和面向对象程序设计语言(C++或Java)
  8. 软件工程、软件过程改进和软件开发项目管理基础知识
  9. 软件设计方法和技术
  10. 信息化、信息技术标准、安全性,以及相关法律、法规基础知识
  11. 正确阅读和理解计算机领域的英文资料

考试范围

上午:计算机与软件工程知识

1. 计算机系统基础知识

1.1 计算机内数据的表示及运算

  • 数的表示
  • 非数值表示
  • 二进制数运算方法
  • 逻辑代数基本运算

1.2 其他数学基础知识

  • 常用数值计算
  • 排列组合、概率论应用、应用统计
  • 编码基础
  • 逻辑基础知识
  • 运筹基本方法

1.3 计算机硬件基础知识

  • 计算机系统组成、体系结构分类及特性
  • 存储系统
  • 可靠性与系统性能评测基础知识

1.4 计算机软件知识

  • 数据结构与算法知识
  • 操作系统知识
  • 程序设计语言和语言处理程序知识
  • 数据库知识

1.5 计算机网络知识

  • 协议体系结构
  • 传输介质与交换技术
  • 网络设备与服务器
  • 局域网络连接
  • Internet基础知识
  • TCP/IP协议
  • 简单网络管理

1.6 媒体基础知识

2. 系统开发和运行知识

2.1 软件工程基础知识

  • 软件生存周期与模型
  • 软件开发方法
  • 项目管理
  • 软件工具与环境
  • 过程改进
  • 文档

2.2 系统分析基础知识

  • 系统分析方法与模型

2.3 系统设计基础知识

  • 设计原理
  • 软件体系结构
  • 设计方法与模型

2.4 软件测试基础知识

  • 测试概念
  • 测试阶段
  • 测试方法
  • 测试用例设计

2.5 系统运行和维护基础知识

  • 维护概念
  • 系统转换
  • 系统评价

2.6 软件质量管理基础知识

  • 质量特性
  • 质量保证
  • 复杂性度量
  • 软件评审
  • 容错技术

3. 面向对象基础知识

  • 基本概念
  • 分析与设计
  • 模式
  • 程序设计
  • 测试

4. 网络与信息安全知识

  • 安全基础
  • 安全技术
  • 网络安全技术
  • 法律法规

5. 标准化、信息化和知识产权基础知识

  • 标准化
  • 信息化
  • 知识产权

6. 软件开发新进展

  • 新技术
  • 云计算
  • 大数据
  • 领域进展

7. 计算机专业英语

  • 英语阅读水平
  • 术语理解

下午:软件设计

1. 结构化分析与设计

  • 需求分析
  • 数据流图变换

2. 面向对象分析与设计

  • UML
  • 用例需求描述
  • 软件建模
  • 设计模式应用

3. 数据库应用分析与设计

  • E-R模型
  • 关系模式设计
  • SQL
  • 数据库访问

4. 软件实现

  • 算法设计与分析
  • 程序设计

5. 软件测试

  • 单元测试
  • 集成测试
  • 系统测试
  • 测试方法和用例

6. 软件评审

  • 设计评审
  • 程序设计评审